From df755a774a3914810d887b89e812f5cb39ab2dc1 Mon Sep 17 00:00:00 2001 From: ankushbindlish2 <34896519+ankushbindlish2@users.noreply.github.com> Date: Fri, 15 May 2020 03:12:52 -0700 Subject: [PATCH] Sync from master (#9473) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: update java readme (#9017) * [Data Factory]Add new auth/prefix/fileFilter/partitionRootPath to ADF public swagger (#8932) * add allowLargeResults/azureFileConnector/fileFilter * remove required * remove allowLargeResults, add prefix to Azurefile * add partitionRootPath Co-authored-by: Haoran Sun * Add swagger spec for custom domain of appplatform (#8792) * Add swagger spec for custom domain of appplatform * Sub resource custom domain, Spring/apps/domains. * Sub resource certificate, Spring/certificates. * Action for certificates/validate. Signed-off-by: Pan Li * Add pagable for list. Signed-off-by: Pan Li * Add httpsonly and fqdn to app. Signed-off-by: Pan Li * Resolve comments. Signed-off-by: Pan Li * Adding decription of unlink action to Replication Link Swagger (#8720) * Luis sdk changes (#8985) * adding LuisApp import/ export lu format, adding LuisApp import v2 app, adding azure account related auth using arm token * fixing export app version lu format query parameters and adding output as file format * Adding successful importing for v2 * adding successful import lu application example * adding successful example in swager * fixing name typo * adding format for export lu export * updating produces type * removing reference and adding definition in schema * fixing spelling checks * adding missing parameters, fixing spelling * adding parameter in the right file * running prettier fix * [Code review] refactoring input to referenced parameter * adding "x-ms-parameter-location" in Armtoken parameter extension * PrettierCheck run * adding missing parameters in input * updating description * Relay: adding new API version 2018-preview (#8903) * Added 2018-preview API to Relay * updated with splittign swagger * removed the response code from delete * formating fixed * updated readme file * corrected file name * updated networkruleset * Added common definations * fixed modalvalidation * updated readme.go.md * regenerated all-api-versions * [Resources] Fix deployment validate response (urgent) (#9007) * Add updated validate call in resources swagger * Add back 200 response and update description * Update 202 response Co-authored-by: Filiz Topatan * update compute python.md for track2 version (#9052) * update compute python.md for track2 version * new track2 will be in the same folder. * [Hub Generated] Review request for Microsoft.Consumption to add version stable/2019-10-01 (#9044) * Updating error codes Adding 429 and 503 explicitly * Update consumption.json adding more details * Update consumption.json fixing status code * Update consumption.json more * Update consumption.json test * update * u * u * Update costmanagement.json * prettify * Update custom-words.txt * updated test scenario (#9056) * updated test scenario * disabled some tests * Test cognitive services (#9060) * adding test scenario * updated test * one more fix * updated examples * undo unrelated * fixed example json * Fix digitaltwins readme (#9050) * fixed digital twins readme * one more fix * folder fix * Updating peering examples etc (#9048) * fixing test * peering examples fixes * enabled some tests that are passing * [Hub Generated] Review request for Microsoft.Marketplace to add version stable/2020-01-01 (#8956) * change title * Update swagger for new api * response to validation comments * adding swagger to sdk * prettier * update * prettier test * prettier fix * adding for deletr * delete * title change * adding description * remove title * return title * fix read.md * Removing Private Preview features from Swagger (#9046) * [Azure Stack] Updates to Azs.InfrastructuresInsights.Admin spec (#8975) * cumulative commit message: commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Add autorest generation info to readme.md * Fix readme.md * regenerated all-api-versions * add configuration for polymorphism resource in machine learning for azure cli codegen (#8954) * add configuration for poly for DataConnections (#8953) * Track2 appconfiguration (#9070) * update appconfiguration python.md for track2 * remove $(python) * Update readme.python.md * Update readme.python.md * Update readme.python.md * Update readme.python.md * Update readme.python.md Co-authored-by: Zim Kalinowski * update eventhub python.md for track2 (#9066) * update eventhub python.md for track2 * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * update monitor python.md for track2 (#9073) * update monitor python.md for track2 * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * update resource python.md for track2 (#9067) * update resource python.md for track2 * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * update keyvault python.md for track2 (#9071) * update keyvault python.md for track2 * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * fix config in compute (#9069) * fix config in compute * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * update storage python.md for track2 (#9068) * update storage python.md for track2 * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * Update cosmos-db.json (#9011) * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * Update cosmos-db.json * fixed readme (#9081) * swagger updates - task 6465636 (#8882) * fixed portal readme file (#9082) * az-output-folder-change (#9088) * az-output-folder-change * add azure-cli-extension automation * Service fabric api version 2020-03-01 adding missing properties (#9036) * adding serviceDnsName, instanceCloseDelayDuration and ApplicationTypeVersionsCleanupPolicy * fix model validation Co-authored-by: Alfredo Santamaria Gomez * [Azure Stack] Updates to Subscriptions module (#8898) * commit dd09a40a97fdfd2b215498a6643ce21c9a2dbd38 Author: bganapa Date: Tue Mar 17 17:32:10 2020 -0700 Update to camelCasing for resourceGroups commit 4212dd05b892d364f7271719847c4adeb896a9e6 Author: bganapa Date: Tue Mar 17 17:30:07 2020 -0700 Update to camelCasing for resourcegroups commit 594441bce0507006aa23992f5f4cd9b7238633bf Author: Rakesh Kumar Date: Tue Nov 26 14:06:28 2019 -0800 Rakku stackadmin issue (#7852) * network admin module changes * remove readme.azsautogen.md from network * rename new[ModuleName] to [ModuleName]Definition for AcquiredPlan, DirectoryTenant, Offer, OfferDelegation, Plan and Subscription * fix for enum naming error in github issue #7822 commit ac4e40dc221e38585d6417f054a8d04d0cc49734 Author: Rakesh Kumar Date: Wed Nov 20 16:47:44 2019 -0800 Subscription Admin module parameter renaming (#7816) * network admin module changes * remove readme.azsautogen.md from network * rename new[ModuleName] to [ModuleName]Definition for AcquiredPlan, DirectoryTenant, Offer, OfferDelegation, Plan and Subscription commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Fix example * Fix examples * Address PR comments * Updating Dashboards properties type to integer (#8829) Updating Dashboards properties type to integer Co-authored-by: Himanshu Chandel * Add properties to CosmosDb PrivateEndpointConnection and PrivateLinkResource (#9064) * Add missing properties in PEC and PLR to swagger * fix whitespace * Added swagger file for Microsoft.Kubernetes (#9037) * Added swagger file for Microsoft.Kubernetes * Updated readme files * Prettier fix * Updated python and go readme files * Update GetClustersByResourceGroupExample.json just retriggering ci Co-authored-by: Akash Keshari Co-authored-by: Zim Kalinowski * regenerated all-api-versions * Update Common.json to match the API version (#8845) * 2020-02-01-preview for Media Services LVA Changes to MediaGraph model Changing PUT from sync to async Fixing some description * Prettier and model validations fix * Fixing validations * Fixing version in Common.json * Using common types.json * Updating new version * Adding old version * Revert "Adding old version" This reverts commit 6bf3a735ca31f072a4a329f2fc156a9e1914fb1e. * Using common types * Using 200 for operation locatio header. * Fixing validation errors * Trying to fix autorest * Reverting common.js to test if that matters for autorest. * Reverting default operation result to test if that matters for autorest * Fixing previous revert. * Fixing after merge from upstream * Testing default operation result * Testing description * Adding common json back * Testing empty description * Testing no default for operation result * Removing common.json * Updating common.json of AMS * Updating common.json * Updating common.json * Updating common.json * Rename unknown classification to undetermined classification (#8436) * Fixing the structure of RESTProxy documentation: Updating the OperationId (#8327) * Updating the OperationId Updating the OperationId because the grouping of operations isn't correct. * Updating the operationId spelling * Making prettier fixes as outputed * update lint doc, add the missed rules doc R2029,R2007 (#8502) * Linter tool document update: add R4004, modify R2016 ,R3006 (#8417) * Linter tool document update: add R4004. * Update linter doc : modify R2016 ,R3006 * change date format * Update description of R2016 * 2020 01 01 updates to rules engine caching behavior (#8455) * 2020 01 01 updates to rules engine caching behavior * add new cache settings fields to CacheConfiguration * cache settings fields will enable Rules Engine to allow cache override actions * fix typos in examples * renamed privateLinkResourceId to privateLinkAlias * fix x-nullable usage * Change cacheDuration to "format":"duration" Co-authored-by: Moustafa Eid * add cli.md for postgresql (#8492) * add cli.md for postgresql * remove and update description * Added minimalTlsVersion property for Managed Instance endpoint, API version 2018-06-01-preview (#8508) * [SRP] Add blob service property for container soft delete (#8498) * Adds 'Offline' state to provisioning states. (#8509) * Fix x-ms-enum name conflict (#8465) * [Deployment Scripts] Deployment scripts error model update (#8481) * add package-subscriptions-2019-11 (#8503) * regenerated all-api-versions * Added redis cache publisher schema for azure event grid. (#8486) * Added redis cache Event Schema to Event Grid DP Repo * removed commented section * [Hub Generated] Review request for Microsoft.Attestation to add version preview/2018-09-01-preview (#8478) * Include Tags in GetSubscription and Deployment APIs (#8268) * changes to get subscription * tags for deployments * fixes from another fork * added extension * Remove readonly flag from microsoftSessionAddress properties in BgpSession; add an example for IxRs directPeeringType (#8517) * add cli.md for databricks (#8521) * Reverting to local Common.json to satisify autorest against md file. * Fixing prettier * Updating Common.json to match API version Co-authored-by: dosegal <51155368+dosegal@users.noreply.github.com> Co-authored-by: anushreeringne Co-authored-by: JianyeXi <59603451+jianyexi@users.noreply.github.com> Co-authored-by: aramesh-msft <59899320+aramesh-msft@users.noreply.github.com> Co-authored-by: Moustafa Eid Co-authored-by: Kerwin Co-authored-by: Andrija Cicovic <60783126+cicovica@users.noreply.github.com> Co-authored-by: Zhenfeng Co-authored-by: Akashdeep Goel Co-authored-by: Lei Ni <7233663+leni-msft@users.noreply.github.com> Co-authored-by: Filiz Topatan Co-authored-by: Jiashuo Li Co-authored-by: azuresdkci Co-authored-by: abebts2000 <54288923+abebts2000@users.noreply.github.com> Co-authored-by: gkostal Co-authored-by: ramoka178 <57157576+ramoka178@users.noreply.github.com> Co-authored-by: Praneeth Sanapathi * [Azure Stack] Updates to Azs.Backup.Admin spec (#9034) * Cumulative commit message: commit 72efdec25338cfbb9fea108dcfb390f4c5ff6295 Author: bganapa Date: Thu Feb 27 17:26:56 2020 -0800 Update to have $(this-folder)/ in the input files commit 10ec2068533a0b5d1f5641b85030678ef61ebf75 Author: Daotian Zhang <38281880+daozha@users.noreply.github.com> Date: Fri Jan 3 04:01:04 2020 +0800 Add x-ms-long-running-operation-options (#8037) commit 70fbb623c3f2d965cd33c282da7439fe5262e2b8 Author: Daotian Zhang <38281880+daozha@users.noreply.github.com> Date: Wed Dec 18 14:13:52 2019 +0800 Fix resourceGroups in resource path and add top/skip (#7996) commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Remove old specs from PR * Remove old spec package info from readme.md * Run Prettier check * Add autorest gen info to readme.md Co-authored-by: Daotian Zhang * regenerated all-api-versions * Upgrade version of package @azure/rest-api-specs-scripts in PPE (#9051) Co-authored-by: Jianye Xi * Jedi cmk ai (#9047) * add tag 2020-04 to include jedi request related specs * definition for ErrorResponse conflict with 2015-05-01/aiOperations_API.json * add description for tag package-2020-04 * Add multiapi section for go SDK (#9101) * [Azure Stack] Updates to Azs.Network.Admin Spec (#8960) * commit f809fa9a8217e9de7764e1b13dd203b5405d85f9 Author: Rakesh Kumar Date: Wed Nov 13 11:49:29 2019 -0800 Stackadmin network (#7776) * network admin module changes * remove readme.azsautogen.md from network commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Update Readme.md to include autorest generation info * Add quotes to file paths * Fix input file references * regenerated all-api-versions * Trenton Automation onboard (#9106) * cli extension * Update specificationRepositoryConfiguration.json * Update SwaggerToSDK.yml * Update SDKAutomation.yml * test_0330 * test_0330 * Update specificationRepositoryConfiguration.json * Update azure-pipelines.yml * sdk * [TEST] Terraform test securityInsights.fake [041303] * onboard Terraform in Prod * onboard Terraform in Prod * onboard Terraform in Prod * onboard Terraform in Prod Co-authored-by: Xiaoxu Qi * Fix property of mountTarget (#9078) * Fix property of mountTarget * Added missing properties to mountTargetProperties for 2019-11-01 Co-authored-by: Audunn Baldvinsson * Add Premium_LRS to enum values. (#9098) * [Hub Generated] Review request for Microsoft.Marketplace to add version stable/2020-01-01 (#9117) * Fixing readme.md file * Update readme.md * Update readme.md Co-authored-by: Zim Kalinowski * Add-missing-multiapi-item (#9103) * refreshing web test specification (#9125) * Add api-version 2020-03-01 of network for go SDK (#9100) * update test (#9128) * update assignemnt config (#9132) * enable avocado-0.6.3 (#9133) * fix example issues (#9131) Co-authored-by: Changlong Liu * Fix windowsesu readme (#9049) * fix package name * one more fix * one more fix * additional fix * Swagger update (#8967) * Update cluster and linked services API * Update LinkedServicesGet.json Fix * fix json * Prettier * fix modelValidation * fix modelValidation 2 * Fixes for PR * separate linkedServices to new file * Update readme.md * Fix PR * Change capacityReservationLevel to capacity * Fix version * writeAccessResourceId fix camel case * Fix cluster api * Update readme.md * added link targets * Make link, unlink and cluster delte async * Update SavedSearches.json * Fix typos * fix missing capacityreservation * update CapacityReservation * add all apis from stable * better name * prettier * add to build * Update AvailableServiceTiers.json * entity status * Update WorkspacePurge.json * Update WorkspacePurge.json * Update WorkspacePurge.json * Update WorkspacesAvailableServiceTiers.json * remove link targets [DEPRECATED] * Update readme.md * Update linked service for cluster async Co-authored-by: Or Argaman Co-authored-by: Arie Olshanezky * regenerated all-api-versions * Metric alerts- WebtestLocationAvailabilityCriteria should inherit from MetricAlertCriteria (#9027) * Adding autogenerated keyvault test (#9080) * adding keyvault tests * updated test * add type time to valueTime (#8977) * [Azure Cognitive Search] Add new relevance features (feature API, session ID and scoring statistics) to the Index Search APIs (#8793) * Add relevance features * Fix PR comments * Run prettier * Add restriction about session id * Fix two types (integer instead of number) in InformationProtectionPolicies.json (#9053) * Update informationProtectionPolicies.json * Update informationProtectionPolicies.json * Update informationProtectionPolicies.json * Update informationProtectionPolicies.json * Update informationProtectionPolicies.json * Update CreateOrUpdateInformationProtectionPolicy_example.json * Adding adding get ipAggregates API. (#9038) * Adding adding get ipAggregates API. * Adding 'extranet' and 'paginized' to the custom word file. * Adding Get IpAddressAggregateSettings. * Adding Patch IpAddressAggregateSettings. * Updated with PR comments. * Minor edit. * Minor change from 'Ip' to 'IP'. * Minor update. * Minor update. * Fixing test. * update version of rest-api-specs-scripts (#9134) Co-authored-by: Jianye Xi * update network python.md for track2 (#9074) * update network python.md for track2 * remove payload * keep python: * Update readme.python.md Co-authored-by: Zim Kalinowski * Onboarding applicationWhitelistings to a new stable API version - 2020-01-01 (#8639) * copy applicationWhitelistings API to new api-version * change applicationWhitelistings API-version to the new stable one * make the GET and PUT objects the same (and add readonly to some fields) * try fix model validation by adding required fields * changing the parameter from definitions to parameters * adding the AppWhitelistingGroup to parameters as well and referencing the definition * try change sub id * remove readonly properties from PUT * remove duplicate APIs from package composite Co-authored-by: erelh * regenerated all-api-versions * [Blueprint] Remove length limitation from RG name and location properties (#9115) * Remove length limitation from RG name and location properties * prettify Co-authored-by: Weidong Xu * [Hub Generated] Review request for Microsoft.Advisor to add version stable/2020-01-01 (#8957) * add filter doc * trigger doc gen * fix formatting in old api version * trigger again * add link to categories * Add expand parameter to graphrbac user list (#9127) * Add Readme for Devops (#9153) * Add Readme for SecurityInsight (#9155) * Fix invalid resourceGroupname in Relay examples (#9138) * Fix invalid resourceGroupname in Relay examples * Fix comments * Add Readme for WindowsIot (#9154) * Update multiapi for go sdk of securityinsights (#9169) * SRP recent file share API change (#8900) * SRP recent file share API change * Fix CI * Update description * Address comment * fix assignment-bot config (#9171) * Upgrade pipeline scripts version (#9172) * Add free-form object spec for testing purpose. * Revert "Add free-form object spec for testing purpose." This reverts commit b711d809b6ae964fcbe7d04f31fec76db8798438. * Upgrade pipeline script version. Integrate rest-api-specs-scripts latest version with the fix in oav about output exception information when command switch pretty is on. * Private Repo Approved PR# 974 Add Blob Index Tag Support For Management Policy (#9012) * Add Blob Index Tag Support For Management Policy * Adding BlobIndexMatch Example * Update status and fix one property name. (#9152) Signed-off-by: Pan Li * Fix name collisions causing incorrect code generation (#9091) * Add tenent-level provider listing to SDK * PR feedback: add tenant-level Provider_Get operation * Make operation names more consistent. * Update spec to match the provider API * Add missing description * Fix spelling typo * Switch new enums to modelAsString * Revert "Switch new enums to modelAsString" This reverts commit 695b4a932de68cce9c994ddcffffa38c132b28a1. * Fix name collisions causing incorrect code generation * Event Hub : Split swagger in to entities (#8987) * splitted 2017 and 2018 API version swagger * Lint fix * fix Prettier Check * corrected the examples and readme file * corrected definations paths * update * prettier check fix * added description * updated description * corrected parameter location Co-authored-by: v-ajnava * Fix a bug in swagger (#9026) * Adding new VirtualMachineScaleSetVMs.POST.SimulateEviction action to compute api-version: 2019-12-01 (#9102) * [CosmosDB] Add PrivateEndpointConnections to DatabaseAccountGetResult (#9119) * Add PrivateEndpointConnections to DatabaseAccountGetResult * fix per comment * fix per comments * fix prettier * Added new features in new api version 2020-03-01 (#8403) * update version of rest-api-specs-script (#9188) Co-authored-by: Jianye Xi * [Hub Generated] Review request for Microsoft.Marketplace to add version stable/2020-01-01 (#9123) * addinfg input for swagger to sdk * Fixing lint errors * fixing model validation * R3021 - PathResrouceTypeNameCamelCase fix * fixing semantic * changing name * removing plans from offer * response to arm comments * Update readme.md (#9192) * Fix example of get group ids (#9190) Co-authored-by: Arvind Krishnaa Jagannathan * Add property for default export storage account to Healthcareapis (#8507) * Following changes are related to updating the arm api version number to GA version. Current version number is 2018-08-20-preview. GA version number is 2019-09-16 * Add new example, change example names, and update kind. * Remove common from examples. * Update doc and example * Add identity properties * Fix typo Co-authored-by: Pooja Adhikari Co-authored-by: RB Johnson * Add missing two properties in ErrorResponseBody. (#9116) * desktop virtualization (#9219) * desktop virtualization * fix spell check * add reseting * prettifier * spell check * 2019-12-10 pr changes more fixes add longer description more 204 descriptions missed one need to fix the file renames example changes revert all 01 23 one more revert enum chagne required and readonly require the above property remove require = true correct example prettifier fix properties more example fixing more fixes more issues remove dup * allow * fix 01-23 and 09-24 * fix descriptions * require x-ms-client-tenant-id * move stuff to top and add examples for tenant header * remove header * Cli onboard hardwaresecuritymodules (#9150) * Adding External Scopes properly based on ARM Suggestion (#9124) * Adding external scopes to Dimension & Query API 1. By introducing API Version 2019-11-01 accidentally these scopes got removed. This is to add the existing scopes 2. Addressing Arm Concern to introduce these scopes correctly * updated examples to reflect externalScope parameter * fixing a small issue * ran prettier to fix build issue * Addressed comment from ARM review * fixed semantic errors * updated examples * Fixed a small issue in enum * run prettier to fix some style errors * fixed a minor issue * fixed a small issue * Addressed PR feedback * Did some minor changes * corrected the Opeartions API version (#9207) Co-authored-by: v-ajnava * Update ml config2 (#9193) * update email template (#9191) * update email template * update ci-fix url and change cc to vscswagger@microsoft.com * test cli automation (#9226) * List.json - removing 404 (#8961) * Dev kubernetesconfiguration microsoft.kubernetes configuration 2019 11 01 preview (#9170) * Remove x-ms-parameter-location for api-version parameter to fix CLI issue * revert accidental updates to 2 readme files * add R4007& R4008 (#8931) * Support parallel read of Sql sources (#9090) * add sharepointonlinelist connector * support parallel read of sql sources * [cognitive-services-face-api] fixing documentation links and a few examples where the imageurl parameter is specified as strings when it should be json objects (#9182) * fixing broken documentation links and also making examples on image urls specify json objects instead of strings for in-body request contents * fixing example parameter name Co-authored-by: Nabil Lathiff * Fix Swagger definition for customDimensions - remove additionalProper… (#9129) * Fix Swagger definition for customDimensions - remove additionalProperties * Fix removed additional-properties * Apparently additionalProperties: true is not supported in MS? * Deprecate the old additionalProperties attribute instead of removing it to avoid breaking change * The deprecated keyword is not supported in autorest apparently, moving on without deprecating it Co-authored-by: Alon Gafni * update lang v3.0 --> return single language instead of a list (#8815) * Cognitive Services Form Recognizer v2.0-preview: Copy APIs (#8349) * Update FormRecognizer v2.0-preview spec with new operations 'CopyCustomModel' and 'GetCustomModelCopyResult'. Added new sample files for the operation - 'CopyModel.json' and 'CopyOperationResult.json'. * Add claimResourceRegion. Remove move option from Copy data contract based on review. Fixed required property issue in AuthorizationClaim contract * Address PR comments * Remove authorizationClaim from CopyRequest contract. Updated reference for targetResourceRegion. Added pattern for targetResourceId * Fixed typo in CopyRequest required attribute * Add AuthorizationClaim contract and include it with CopyRequest * AuthorizationClaim - typo in required attrib * Rename AuthorizationClaim to Authorization * Rename modelResourceId to modelId in the 'Authorization' contract. Fixed copy sample * Adding source query string parameter to the POST copy request * Set 'application/json' consumes option for POST copy * Introduce models/copyAuthorization route. Added sample for the new route. Updated existing samples for correctness. * Change expirationDateTime to expirationDateTimeTicks in the CopyAuthorizationResult contract. Follows the 'expires_on' convention in the AAD token. * Remove enum reference for targetResourceRegion. Update to a loose pattern and length specification * Address ModelValidation and Sample validation errors * Fix copy samples JSON validation issues * Run prettier on FormRecognizer.json swagger and example files * Add sample for COpy operation result with errors. Fix description for copy operations * Prettier fix for CopyOperationResultWithErrors.json * Add LRO annotation to copy API * [DeploymentScripts] inclusion of storage account settings (#9157) * inclusion of storage account settings * included examples * removed restartPolicy * updated sample response * updated based on feedback * renamed file * updated file name to prevent case sensitive error Co-authored-by: Jorge Cotillo * change python client name (#9234) * change python client name * change python client name * bug-search (#9235) * Update Sql Auditing swager (#8897) * Update Sql Auditing swagger 1. Support auditing to storage with Vnet/Firewall rules API- supporting blob storage authentication with managed identity 2. Add List audit API * update DatabaseExtendedAuditingSettingsList examp * Update DatabaseExtendedAuditingSettingsList.json Co-authored-by: bashahee <32364196+bashahee@users.noreply.github.com> * [HDInsight] Add two new APIs: listhosts and restart node (#8794) * Add FAQ document (#9230) * Add FAQ document * Fix typo & change MV descriptions * fix ci-fix url * Change SDK generation * Add checkQuotaAvailability to vmwarevirtustream 2019-08-09-preview swagger spec (#9244) * Add checkQuotaAvailability to vmwarevirtustream 2019-08-09-preview * fix missing/invalid types * update tags * updated to use location based routing * change description for host quotas * Update QuotaGet definition * make checkQuotaAvailability subscription level Co-authored-by: David Ricciardi * [CosmosDB] Fix references in privateEndpointConnection.json (#9213) * Fix references in privateEndpointConnection.json * fix reference to common * Add similarity property to the Azure Search Index definition for API 2019-05-06-preview (#9249) * BM25 * Add descriptions * Update Azure.Search * Revert Microsoft.Azure.Search changes * Fix spacing * PR comments * Prettier + custom word * PR comments Co-authored-by: Raouf Merouche * Fixing R3023 Operation API Implmentation ARM Swagger error (#8423) Co-authored-by: Venkat Akkinepally * Add public network access (#9214) * remove x-ms-azure-resource to have workspacwe/workspacepatch/datasour… (#9168) * remove x-ms-azure-resource to have workspacwe/workspacepatch/datasource properly inherited from parent class * add entry in readme.go.md * update spec for dotnet SDK * remove 'x-ms-azure-resource: true' for Cluster * remove 'x-ms-azure-resource: true' for LinkedService * try-fix-cosmos-db-two-subscription-id (#9279) * Updating operationId to group the operations in a logical way … (#9159) * Updating operationId to group the opearions in a logical way and the generate APIs are grouped together based on the operations. * 1. Updating schema for autoQuotaRequest 2. Updating examples. * Updates to data model and examples. * Model Update. * Data Model Fix. * Fixing Data Model for AQI. * Removing duplicate definitions. * Adding type=object for emailAction. * Putting the similar definitions together. * Model Fix. * Fixing AQI examples. * Adding descriptions for enum. * Fixing Spell Check error. * Removing used object: phoneActions. Updating the comments for Put and Patch, that both can be used to update quota. * Updating the Put operatonId as _CreateOrUpdate. * Making Tag information same - QuotaInformation. * Updating example for commit. * remove shanghai assignee during 5.1 holiday (#9254) * eliminate quotas warnings in vmwarevirtustream 2019-08-09-preview (#9269) * eliminate quotas warnings * fix QuotaEnabled * change back to Quotas_CheckQuotaAvailability * rename to CheckQuotaAvailability to avoid warning * Time Series Insights - Fixes on existing api-versions (#8758) * Fix or suppress spec violations Fix R2016 by making PATCH body properties optional. Suppress the remaining 4 violations that are confirmed as false positives. * Try removing 2nd top-level heading, which _may_ have been causing a linter warning. * Fix extra indention which prevented linter from running. * Added dataStringComparisonBehavior parameter to reference data put/update spec. * Fixed grammar. * adding partitionkeyProperty to environmentInfo * changing property name * changing modelAsString * Initial checkin of spec. Unchanged from GA release other than version. * Remove .orig files * Fix validation error by removing IoTHub ES from List ES example response * Add extra example that was missing from preview spec. * Add long-term environment to resource hierarchy, and update examples. * Switch to model-as-string for enums. Restore EnvironmentResource's inheritance from TrackedResource. * Upsate sku description * Add new TSI preview api-version to readme.md. * Add suppressions for false-positive linter failures. * Test suppression failures * Adding preview package tag to several other places in readme.md * Add preview package to the readme.go.md file * Remove invalid required property from EnvironmentCreateOrUpdateParameters * Initial version of data plane swagger spec for PAYG (Preview) SKU. * Added missing Readme.md * Fixed name of readme * Fixed path to swagger json * Attempt to fix readme * Apply suggestions from code review Co-Authored-By: dmdenmsft * Update timeseriesinsights.json * Update timeseriesinsights.json * Added link to oav issue * Changing creation time to RFC1123 when TSI Environments are part of the response body * Renaming $expand to expand * Fixing patch Environment supporting S* and L1 parameters * Reverting creationTime format change * Tweaking Environments_Update to support inheritance * Fixing grammar * Fixing Microsoft.IoTHub namespace * Reverting environmentUpdateParameters renaming * Renaming expand back to $expand * Applying updates based on feedbacks * Removing partitionKeyProperties from StandardEnvironmentMutableProperties * Changing partitionKeyProperty description * Removing the flattening from warmStoreConfiguration * Removing maxlength from array * Removing support for other LocalTimeStamp formats than Embedded Co-authored-by: Eric Dettinger Co-authored-by: Karthik Subramanian Co-authored-by: Ravi Kumar Suresh Babu Co-authored-by: ravikumarsureshbabu Co-authored-by: Dmitry Denisov Co-authored-by: Nick Schonning Co-authored-by: Karthik Subramanian * Added properties that were missed in 2019-11-01-preview API version. (#9002) * Added properties that were missed in 2019-11-01-preview API version. * Fixed prettier. * Added readonly to private endpoint connections. * netapp trenton pipeline (#9287) Co-authored-by: root * Nasingla/stableversion (#9143) * New Version for subscription RP * Update readme.md * Update subscriptions.json * Update subscriptions.json * Update subscriptions.json * Update subscriptions.json * updated examples * Update renameSubscription.json * Update readme.md * Add descriptions to enums (#9276) * [PendingArmReview] Fixed Settings API (#9227) * fixed settings api. changed the dataexportsetting parameter name and the discriminator place * deleted propersties * ran prettier fix * fixed update test and added properties in Settings definition * deleting additionalproperties because of autorest errors * adding back additionalProperties * deleting a readonly property from the example * deleting another readonly property from the example * EventHub : 2018-01-01-preview Cluster SKU Name change (#9245) * Cluster Sku Name * update Co-authored-by: v-ajnava * Settings API fix (#9312) * fixed settings api. changed the dataexportsetting parameter name and the discriminator place * deleted propersties * ran prettier fix * fixed update test and added properties in Settings definition * deleting additionalproperties because of autorest errors * adding back additionalProperties * deleting a readonly property from the example * deleting another readonly property from the example * deleting additionalProperties * deleting additionalProperties * [Hub Generated] Review request for Microsoft.KubernetesConfiguration to add version preview/2019-11-01-preview (#9299) * Add Microsoft.KubernetesConfiguration to azure api specs * New Readme Config File * New Go Language Readme Config File * New Typescript Language Readme Config File * New Python Language Readme Config File * New C# Language Readme Config File * New Ruby Language Readme Config File * New Swagger Spec File * New Swagger Example Spec File * Revert "Add Microsoft.KubernetesConfiguration to azure api specs" This reverts commit e0889b2abea2dd7cc12c33677189dd1859c5bfd8. * Add Microsoft.KubernetesConfiguration specification * PrettierCheck fixes * Remove unused example file * Delete settings.json Deleting file added accidentally * Address review comments * Update output-folder for go config * Mark Delete as Sync; and address review comment * Updated Delete example to remove 202 * Updated readme of ruby and python for namespace values * More updates for readme of ruby, python and typescript * Remove x-ms-parameter-location for api-version parameter to fix CLI issue * revert accidental updates to 2 readme files * Remove the enum values of ComplianceState property * Revert "Remove the enum values of ComplianceState property" This reverts commit 59bb14f40450d6543ae39dccc5956114377c36ba. * Remove the enum values of ComplianceState property * Make ComplianceState a string type property * Converting back to enum and adding the new known values * Addressed PR comments * [Hub Generated] Review request for Microsoft.VirtualMachineImages to add version stable/2020-02-14 (#9297) * Update examples to include identity in requests/responses * Make identity field a required field for image template resource * Update to have POST /run & /cancel to return 200 code for powershell sdk generation * Update description of 200 code Co-authored-by: Feiyu Shi * Add property 'minTlsVersion' to IoTHubProperties (#9162) * Add property 'minTlsVersion' to IoTHubProperties * Update examples * Update readme files for python, go and java for API version 2020-03-01 * Add rename instruction for 'PrivateLinkResources' for java to fix build error * [Hub Generated] Review request for Microsoft.CostManagement to add version stable/2019-11-01 (#9263) * added forecast api and all of it's scopes * added alerts path and it's example files * fixed typos in alertProperties * fixed spacing as per prettier script * differentiated forecastDefinition x-ms-enums * changed forecast operationID and forecast fixed response ids to correctly reflect current state in prod. * Update mountTarget type definition (#9294) Co-authored-by: Audunn Baldvinsson * DoNotMerge preview Network april release (#9282) * Adds base for updating Microsoft.Network from version stable/2020-03-01 to version 2020-04-01 * Updates readme * Updates API version in new specs and examples * Swagger Changes for New Backend Pool Address format (#8993) * SLB Changes * addressed feedback * Fixed RoundTripTimeMs property type: integer -> number (#9023) * Add support for DEL operation (#9040) * Rename Firewall Policy child resource RuleGroup to RuleCollectionGroup (#9045) * Rename firewall policy sub resources s/RuleGroup/RuleCollectionGroup s/Rule/RuleCollection s/RuleCondition/Rule This was based on customer feedback - the feature is currently in preview. * rename files * Update examples with new names for the subresource and children * Fix model validation error * Update examples * Revert https://github.com/Azure/azure-rest-api-specs/pull/9045 + Add TI Whitelist (#9271) * TI whitelisting for firewall policy * running prettier * fixing description * removing extra property from the response * adding the new property in examples * retrigger the pr check * clean up * Revert "Rename Firewall Policy child resource RuleGroup to RuleCollectionGroup (#9045)" This reverts commit b49caabeacecce6ddc7e357dd7d758bd9fd82dbc. * Fix ASN parameter of BGPPeerStatus model. (#9178) * Fix ASN for BGPPeerStatus model * Fix json pretty errors * Add premium tier to azure firewall (#9313) * Custom dns servers for Virtual Wan P2SVpnGateway (#9268) * Custom dns servers for Virtual Wan P2SVpnGateway * Fix example * Fix json pretty errors * Add TLS Termination support for FirewallPolicy (#9314) * Add TLS Termination support for FirewallPolicy * firewallPolicy: certificatesAuthority -> certificateAuthority * Add HubRouteTables specs to virtualWan.json (#9206) * add HubRouteTables specs to virtualWan.json * updated RoutingConfiguration as a connection property * added examples for hubRouteTable * updated examples for routingConfiguration * fix1 * some more fixes * fixes2 * prettier check done * validate spec done * fix3 * fixed model validation errors * model validations again * few more fxes: * remove type from examples * fix staging errors * add required field where needed * updated after review * onemore fix * added type * added type Co-authored-by: Mikhail Co-authored-by: vivekagg-MSFT <36711748+ninzavivek@users.noreply.github.com> Co-authored-by: irrogozh Co-authored-by: gimotwanMSFT <36463144+gimotwanMSFT@users.noreply.github.com> Co-authored-by: Sai Sujith Reddy Mankala Co-authored-by: Nilambari Co-authored-by: odedlaz Co-authored-by: Ritvika Reddy Nagula * Frontdoor new API version 2020-05-01 (#9165) * initial commit. duplicate 2020-01-01 into 2020-05-01 * added backend field privateLinkResourceId and privateLinkLocation * updated 2020-01-01 to 2020-05-05 * updated readme.md * renamed readme.md to frontdoor.specs.md, updated response descriptions * updated operationid * fix readme.go * Updating owners for EventGrid (#9320) * Updating code owners for event gris * Updating code owners for EVent Grid * EventHub : Corrected Readme.md for Multi-API/Profile support (#9321) * Corrected Redme.md for Multi-API/Profile support * corrected API version Co-authored-by: v-ajnava * [Azure Cognitive Search] Various Swagger improvements (#9301) * [Azure Cognitive Search] Add warning to Delete Index description * [Azure Cognitive Search] Rename searchMode to SuggesterSearchMode Trying to avoid ambiguity between generated model names in SDK code. * [Azure Cognitive Search] Remove access-condition parameter group The parameter group was for codegen purposes, but it turns out that clients will use a different pattern for exposing ETag capabilities, so this is no longer needed. However, we're keeping the If-Match and If-None-Match parameters themselves for REST API documentation purposes. Fixes https://github.com/Azure/azure-rest-api-specs/issues/9205 * [Azure Cognitive Search] Clarify docs for pattern analyzer & tokenizer Fixes https://github.com/Azure/azure-rest-api-specs/issues/9145 * [Azure Cognitive Search] Document more enums Fixes https://github.com/Azure/azure-rest-api-specs/issues/9146 * [Azure Cognitive Search] Make List Indexes "fake pageable" This makes codegen easier for now, with the expectation that this API may become pageable in the future. Fixes https://github.com/Azure/azure-rest-api-specs/issues/9274 * [Azure Cognitive Search] Rename models per arch board feedback Fixes https://github.com/Azure/azure-rest-api-specs/issues/9295 * [Azure Cognitive Search] Add names to dictionary * [Azure Cognitive Search] Improve the description of analyzingInfixMatching * [Azure Cognitive Search] Change prefix match example to pacify spell checker Co-authored-by: Bruce Johnston * Add Pipeline Resources for Image Transfer (#8662) * update 2019-12-01-preview swagger for import and export pipelines * add pipeline runs resource * add examples for import and export pipelines * add pipeline run examples * fix importpipeline example responses * update example * remove isArchiveEnabled property so the used can explictly tell when to delete * fix model validation in pipelineRun examples * resolve duplicate model conflict * run prettier * update examples for pipeline run * Bug fixes for two known issues (#9272) * Bug fixes: skip url encoding for ScopeParameter; add client name for userAssignedIdentities. * Pretty check fix. * [Azure Stack] Updates to Azs.Keyvault.Admin spec (#8974) * Cumulative commit message: commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Add autorest gen info to readme.md * regenerated all-api-versions * feat: update desktop virtualization java readme (#9337) * feat: update desktop virtualization java readme * fix: resource java readme * Add 'capabilities' field to Cognitive Services account properties. (#9309) * Add private endpoint support for Cognitive Services. (#9298) * Add private endpoint support for Cognitive Services. * Address comments * fix prettier * Adding NoPublicIP feature back (#9306) * Update deploymentScripts.json (#9325) Mark environment variable secureValue as secret * Windowsiot (#9333) * resourcegraph trenton * trenton pipeline * test windowsiot pipeline Co-authored-by: root * Adding userassigned identities for compute (#8879) * Added User identities for compute * Changing the api version * Revert "[Do not Merge] Adding user identities" * Adding userassigned identities for compute * running prettier * Updating Quota examples * Undoing Quota examples * Updating the examples fine * Updating Quota examples Co-authored-by: Shail Paragbhai Shah Co-authored-by: Sriram Kakara * [Storage] Add support for listing private endpoint connections (#9324) * [Storage] Add support for listing private endpoint connections This change adds support for listing private endpoint connections through a GET collection API for Microsoft.Storage/storageAccounts/privateEndpointConnections. * Update StorageAccountListPrivateEndpointConnections.json Fixed prettier check fix. * Update storage.json Fixed lintdiff build error * Revert "remove shanghai assignee during 5.1 holiday" (#9354) * Revert "remove shanghai assignee during 5.1 holiday (#9254)" This reverts commit e4fd866ef08eb5e5a95caede3c915e27cec0772f. * remove Allen as reviewer in May as requested * service Fabric 7.1 (#9291) * added SF 7.1 * fixed spelling * added reference to main file * removed unused files * updated tag * regenerated all-api-versions * Change python client name (#9278) * change python client name * change python client name * change title overrider * fix folder name for schema auto generation (#9303) * feat: update java readme for network (#9341) * modelerfour need the x-ms-api-version extention to notify it that this api-version does not need special handling (#8803) * Revert commit:- CustomDnsServer optional param added for P2SVpnGateway resource from April release. (#9365) * Revert "Fix json pretty errors" This reverts commit bd5293975a73fe64d93af00debf93a87fefa29bc. * Revert "Fix example" This reverts commit 827e8829fa36678ba2247ff51cec40b5f8cf985c. * Revert "Custom dns servers for Virtual Wan P2SVpnGateway" This reverts commit a91490a45a80a370ec657a8ed7556a48d6be9d65. * [Hub Generated] Review request for Microsoft.ResourceGraph to add version preview/2018-09-01-preview (#9216) * feedback * Linter * Remove additional fields * Revert operation changes * Undo etag capitalization * Updated code owner for storage (#9338) * [Azure Stack] Updates to Azs.Commerce.Admin spec for autorest config (#9033) * Cumulative commit message: commit 4ec980f9748c6ee9a98389fff0b3941fc8f1fc63 (azure/stackadmin) Author: Yuxing Zhou Date: Wed Mar 18 15:14:57 2020 +0800 [Azure Stack] Add scaleUnit and volumeLabel parameter to Disks_List (#8733) * add scaleUnit and volumeLabel to Disks_List * fix ref location * update parameter description commit dd09a40a97fdfd2b215498a6643ce21c9a2dbd38 Author: bganapa Date: Tue Mar 17 17:32:10 2020 -0700 Update to camelCasing for resourceGroups commit 4212dd05b892d364f7271719847c4adeb896a9e6 Author: bganapa Date: Tue Mar 17 17:30:07 2020 -0700 Update to camelCasing for resourcegroups commit b62db8ba4e29e14935ff33e82bda029393eb8393 Merge: 08d597aa1 fbe767051 Author: Vishnu Priya Ananthu Sundaram Date: Thu Mar 12 11:23:30 2020 -0700 Merge branch 'stackadmin' of https://github.com/Azure/azure-rest-api-specs into stackadmin commit fbe767051ac6d3c324f7e4d028e7ec5639120407 Author: bganapa Date: Tue Mar 10 14:06:55 2020 -0700 Update resourceGroups casing commit 848e5f76bc6983599cedb4a7e7cd1666ffd8a298 Author: bganapa Date: Tue Mar 10 14:05:10 2020 -0700 Update resourcegroups casing to resourceGroups commit 591ff3c47d52bdfbe228ceadb2c8a11781630e99 Author: bganapa Date: Tue Mar 10 13:58:14 2020 -0700 Update Updates.json commit adaabc1bd3b17d60f9ac39b4d95e7d0df60019ca Author: bganapa Date: Wed Mar 4 18:07:20 2020 -0800 Changing casing in resourcgroups to resourceGroups commit 72efdec25338cfbb9fea108dcfb390f4c5ff6295 Author: bganapa Date: Thu Feb 27 17:26:56 2020 -0800 Update to have $(this-folder)/ in the input files * Add autorest config to readme.md * Fix path reference * Auto-generated values * regenerated all-api-versions * Cli onboard desktopvirtualization (#9367) * cli validation for desktopvirtualization * correct readme title Co-authored-by: Changlong Liu * [Compute] [SIG] [BugFix] Remove ID as required because update gallery image version is failing when ID is not present (#9257) * remove id as required * update for july too Co-authored-by: Jerry Chan * Fix bad readme.go.md in azuredata (#9370) * Fix bad readme.go.md in azuredata * Fix comments * EventHub: added optional keyVersion property in KeyVaultProperties (#9335) * added optional keyVersion property in KeyVaultProperties * Keyvault properties to Array Co-authored-by: v-ajnava * Adding the new resource type PrivateLinkForAzureAD (#8854) * Adding the new resource type PrivateLinkForAzureAD * Added the example * Updated the example * Updated the definition for privateLinkforAzureAD * Added privatelinkresource * Added privatelinkresource * Updated definitions * Updated definitions * Spell check * Moved to different files * Fixing Model validation * added xmspageable * Fixing example * Added nextlinks and corrected the versions in the examples * Added PUt/PATCH/DELETE to comply with a trackedResource * Fixes for Model Validation + AllTenants Property Fixed the error messages thrown by model validation as well as introduced the "allTenants" property under privatelinkpolicy * Fixes for Prettier Check Pushing fixes done by prettier check Co-authored-by: Arturo Lucatero * regenerated all-api-versions * tf support secondary branch (#9378) Co-authored-by: Xiaoxu Qi * attestation fix (#9077) * fixing attestation * undo unnecessary changes * missing * [Hub Generated] Review request for Microsoft.Insights to add version preview/2020-02-10-preview (#8383) * Adds base for updating Microsoft.Insights from version preview/2019-10-17-preview to version 2020-02-10-preview * Updates readme * Updates API version in new specs and examples * Added WebTestResults API * Adjusted tiles * made changes to example file. * Adjusted example to have better sample values * Updated doc to produce better help file. * corrected example file. * added _get to operationId to match GetInOperationName requirement * Adjustments from review * Adjusted enum for downloadAs * Adjusted file to make more readable. * Added better descriptions to the file format enum. * Removed partition ID from the example. * Updated description * Changes made based on Igors review. * removed dashes from example and removed _Get from operationId * Fixes typeo * adjusted with prettier * adjusted json * adjusted to a put call and added operationslist as per code review from arm team. * corrected to post * added operatinsList.json example file * adjusted file name. * adjusted example file. * adjusted case of microsoft.insights * minor fix * ran prettier-fix * changes per code review. * Fixed case in example file. * removed nextLink from Operations * regenerated all-api-versions * Fix the format of shareUsageBytes to show larger file share size (#9315) * updated modelAsString to true (#9327) * [Hub Generated] Review request for Microsoft.DigitalTwins to add version preview/2020-03-01-preview (#9304) * init commit * updates * re-add sku as future use * make sku writeOnly so it is not expected in return * correction * test * fixup * [AzureSearch] Add more examples on IP-restriction and private endpoint + fixes (#9381) * update iprules and add more samples for create and update;fix incorrect sample for private endpoint * verbose change * typo fix * wording fix * fix model validation * On boarding Solutions to latest stable API version (#8630) * Copy solutions files from 2015-06-01-preview * update API version * update readme * Add required to ExternalSecuritySolution * fix comment * fix conflict * fic conflict2 * fix conflict3 * fix conflict4 Co-authored-by: Arik Riklin * regenerated all-api-versions * Revert "Add 'capabilities' field to Cognitive Services account properties. (#9309)" (#9360) * Add resource type sqlServerInstances (#9197) * Add resource type sqlServerInstances * add to resource provider - Microsoft.AzureData * exactly same REST API definitions as existing resource types of the same resource provider * Add property description and mark required properties # update examples to include required properties * set createTime and updateTime property to readonly update CreateOrUpdateSqlServerInstance.json sample to not include readonly properties in its request. Co-authored-by: Dong Cao * Remove quotes from data queries in RI apis (#9323) * [DataFactory]Store settings should be added for Delete and GetMetadata (#9208) * [DataFactory]Store settings should be added for Delete and GetMetadata Activity * Add format settings for GetMetadata * [Hub Generated] Review request for Microsoft.ChangeAnalysis to add version preview/2020-04-01-preview (#8981) * New Readme Config File * New Go Language Readme Config File * New Typescript Language Readme Config File * New Python Language Readme Config File * New C# Language Readme Config File * New Ruby Language Readme Config File * New Swagger Spec File * New Swagger Example Spec File * add swagger spec second time * trying to fix violations #1 * adding descriptions and schema tag for default error * removing required location element from proxy resource. * adding prettifier fixed * update 3 * update 4 * update 5 * update 6 * update 7 * update 8 * update 9 * update 10 * update 11 * update 12 * update 13 * update 14 * update 15 * update 16 * update 17 * update 18 * Adds suppression to readme * updating comments of few models * changing description of few elements * prettier run: Co-authored-by: Alex Dubinkov * regenerated all-api-versions * Fix readme.go.md for some sql service (#9348) * Update network (#9349) * Add multiapi section (#9347) * Dataplane swagger for tables (#8151) * adding swagger for tables dataplane * updating produces/consumes, adding format parameter and adding DataServiceVersion header * update swagger so that query parameters do not appear in x-ms-paths * add new custom words, fix incorrect api version * making suggested changes to continuation header, response status codes * Updates to tables spec * Fixed indentation * Removed storage references * Grammar * Improved match condition description * Remove format statements * Removed excess tags * Fix extra commas * Added missing example * Updated Delete example * Run prettier * Removed duplicate API version * Fixed insert response * Removed 2018 readme tag * Remove storage name * Remove multi-api reference Co-authored-by: Sam Hurd Co-authored-by: annatisch * regenerated all-api-versions * Datr m (#9332) * update readme docs * add nullables * add autogen * location required * add require to all * add requires * prettier * track resoruce ref and require for properties * remove # * fix # resoruce * pr comments * fix ruby * go fix * azure_mgmt_desktop_virtualization * rekickoff tests * regenerated all-api-versions * Allow empty access policies array in HealthcareApis (#9326) * Allow empty access polies array in HealthcareApis. * accessPolicies property can be omitted * [CDN] Add API version 2020-04-15 (#9242) * regenerated all-api-versions * Update readme.md (#9384) * Update readme.md Adding stable version to not break existing APIs * Added examples * fix example * prettier fix * regenerated all-api-versions * [MixedReality] Version Iteration for new Releases (#9351) * Version Iteration for new Releases (#8848) * Version Iteration for new Releases There are going to be 2 significant releases: 1. Public Preview of Remote Rendering in April 6th 2. GA of Spatial Anchors in May * Referring new swagger files in readme.md * Specifying default package version as 2020-05-01 * Fix MV * Fix MV (#9397) Fix MV in Patch examples Co-authored-by: Xiangyu Luo Co-authored-by: Lei Ni * fix network (#9369) * fix network * duplicated publicipprefix * fixed example in 2018-01-01 * final updates * missing examples * regenerated all-api-versions * SQLDB - update LicenseType description (#9001) * SDK support for Table and Queue Storage Services (#9259) * Adding table spec, without examples * Adding queue swagger, also updating comments for table * Updated the models to include ARM fields, completed, no examples * Added list table and queue services spec * Adding table CRUD examples * Adding Queue CRUD examples * Validation complete, TablName changed to camelCase * Modified comment * Spell correction * changing order in readme.md * Changed the object name from Queue to StorageQueue, as sdk code gen throws name conflict error with Collections.Queue * Resolve prettier check errors * Change URI param to be camel case * updated default error response schema * Change Default error response model schema * Added x-ms-nextLink * regenerated all-api-versions * [ACR] add regionEndpointEnabled to replication properties and replicationUpdateParameters (#8840) * add regionendpointenabled to replication properties and replicationupdateparameters * fix property placement error * Update spec. with update properties * Update descriptions Co-authored-by: Tosin Adewale * update triage label (#9396) * validate blockchain cli codegen (#9089) * validate blockchain cli codegen * use strong password with length>=12 Co-authored-by: Changlong Liu * feat: add subscription 2019 10 01 preview (#9388) * [Hub Generated] Review request for Microsoft.CostManagement to add version stable/2019-11-01 (#9288) * adding the views api to the 2019-11-01 version * Fix api version value * adding private view list example document * Fix enum conflict * fix Granularity enum type * Add api version of go SDK for imagebuilder (#9408) * Update PR template (#9371) * Update PR template * Add FAQ link * add Microsoft.AVS 2019-08-09-preview API spec (#9307) * cp -r vmwarevirtustream vmware * rebrand * add sku to PrivateCloud * add SSL thumbprints * Fix description typo (#5) * lists return value[] * suppress R3020 * fix suppress * add Locations_ prefix Co-authored-by: jspearman3 * regenerated all-api-versions * Add 2020-04-01 API specification for Microsoft.Peering (#9361) * Remove readonly flag from microsoftSessionAddress properties in BgpSession; add an example for IxRs directPeeringType * Add 2020-04-01 API specification for Microsoft.Peering * Fix subId * Fix static validation issues * Fix GetPeeringReceivedRoutes example * Fix PeeringServiceSku * Add RPKI to custom-words * Update readme to include package-2020-04-01 * Fix input file path in package-2020-04-01 * Fix ErrorResponse data model Co-authored-by: Praneeth Sanapathi * Move added client name IdentityUserAssignedIdentitiesValue into an inner scope (#9363) * Bug fixes: skip url encoding for ScopeParameter; add client name for userAssignedIdentities. * Pretty check fix. * Move added client name into additionalProperties of userAssignedIdentities. * Change operationID for table and queue, update the name of an example (#9410) * update version of rest-api-specs-scripts in PPE (#9420) Co-authored-by: Jianye Xi * adding new properties (#9404) * Pipeline devops (#9374) * netapp trenton pipeline * logic pipeline test * Revert "logic pipeline test" This reverts commit ad9f1f00d99379de1e461fcbb6c803a491b5bd29. * devops pipeline test * Update readme.md Co-authored-by: root * typo (#9210) * IoT Edge in Central APIs initial (#9248) * IoT Edge in Central APIs initial * making recommended fixes * Moved storage private link related models into common types (#8935) * Moved private link related model into common types * Fix path to common types.json * Fix parameter reference * fix prettier issue * Resovled the conflict and moved PrivateEndpointConnectionListResult into common and updated reference * EventGrid: Update 2020-04-01-preview swagger to include new properties per customer's feedback (#9402) * Update 2020-04-01-preview swagger to include new properties per customer's feedback * fix spelling * add readonly flag for readiness state * fix prettier Co-authored-by: Ashraf Hamad * [Hub Generated] Review request for Microsoft.VirtualMachineImages to add version stable/2020-02-14 (#9411) * [Azure Stack] Updates to Azs.Storage.Admin spec (#8959) * commit 1ef81911c39d8f618bf6ec097223ff5e8961b3cb Author: Yuxing Zhou Date: Thu Feb 6 09:13:52 2020 +0800 [Azure Stack] Update storage admin specs for new generation with autorest-beta (#8306) * Update storage admin specs for new generation with autorest-beta * fix code style commit 9e551f0eab4057d4c2f54c333c7aa2a1a564c125 Author: bganapa Date: Tue Nov 12 11:44:22 2019 -0800 Reset to Stackadmin2 (#7766) * Fix resourcegroup case * Fix old version * Address PR feedback * Customerprovider pipeline2[DONOT MERGE] (#9428) * customer provider * add flag * Add DeletedWorkspaces API (#9401) * Add force flag (#9417) * Add force flag * Fix * [Storage] Adding support for listing soft deleted blob containers (#9435) * [Storage] Adding support for listing soft deleted blob containers . Adding swagger support for listing soft deleted blob containers . Added examples as well * Update blob.json * Update DeletedBlobContainersList.json Prettier check failing * Create a New Default Tag for Code Generation (#9440) Include both Spatial Anchors and Remote Rendering in the same package. * regenerated all-api-versions * fastfix_tfpr (#9439) Co-authored-by: Xiaoxu Qi * Adding 200 response in CreateOrUpdate api (#9228) * Adding 200 response in CreateOrUpdate api * Update example * Empty commit to trigger build * Updated README tag version (#9240) * Updated README tag version * Moved provisioning state under properties, added operations API * fixed json syntax * Added operations list * Added Display * Update bookmark relations API (#8495) * Update bookmark relations API * fix pr comments * fix invalid examples failing model validation * Fixed invalid reference (#9449) * [Hub Generated] Review request for Microsoft.VirtualMachineImages to add version stable/2020-02-14 (#9451) * SKU api filter takes location only. (#9328) * change to test logic for az (#9443) * [Hub Generated] Review request for Microsoft.Consumption to add version stable/2019-10-01 (#9453) * Adding ReservationRecommendationDetails API Adding ReservationRecommendationDetails API * fixing semantic errors * test fix * test * updating property lookbackUnitType * prettified * prettified examples * Updating scope parameter * updating sample * adding 204 status code * updating examples with 204 * updating samples * updating 204 * prettify * prettifying * Update swagger specs for Managed Instance (#8182) - Add optional parameter maintenance configuration id. * luis authoring api updates for nested children and required features (#9405) * luis authoring api updates for nested children and required features * fix examples * change required field "enableNestedChildren" to optional * add default value for enableNestedChildren * remove deprecated permissions API * [Hub Generated] Review request for Microsoft.ResourceGraph to add version stable/2019-04-01 (#9215) * Fixing comments * update oprationId * update oprationId * Revert operation change * test commit * Revert "test commit" This reverts commit 1fb003317a14420f912bf8a625570224d332b227. * cost-management-for-cli-extensions (#9392) * add 2019-10-preview tag for luis (#9406) * upgrade pipeline scripts version to 0.8.0 (#9457) Co-authored-by: Jianye Xi Co-authored-by: Tanyi Chen Co-authored-by: rickysun93 Co-authored-by: Haoran Sun Co-authored-by: Pan Li Co-authored-by: maboja-msft Co-authored-by: nourhanFarid <62536207+nourhanFarid@users.noreply.github.com> Co-authored-by: Ajit Navasare Co-authored-by: azuresdkci Co-authored-by: Filiz Topatan Co-authored-by: Filiz Topatan Co-authored-by: Kerwin Co-authored-by: srilatha inavolu Co-authored-by: Zim Kalinowski Co-authored-by: olrakovs <39234482+olrakovs@users.noreply.github.com> Co-authored-by: Subrahmanyam Mandavilli Co-authored-by: Vishnu Priya Ananthu Sundaram Co-authored-by: Rodge Fu Co-authored-by: Mukesh Kumar <49224515+mukeshmanit08@users.noreply.github.com> Co-authored-by: srcharug <62158390+srcharug@users.noreply.github.com> Co-authored-by: Qiaoqiao Zhang <55688292+qiaozha@users.noreply.github.com> Co-authored-by: Alfredo Santamaria Co-authored-by: Alfredo Santamaria Gomez Co-authored-by: Himanshu Chandel Co-authored-by: Himanshu Chandel Co-authored-by: Soyoung Eom Co-authored-by: akashkeshari Co-authored-by: Akash Keshari Co-authored-by: Risong Na Co-authored-by: dosegal <51155368+dosegal@users.noreply.github.com> Co-authored-by: anushreeringne Co-authored-by: JianyeXi <59603451+jianyexi@users.noreply.github.com> Co-authored-by: aramesh-msft <59899320+aramesh-msft@users.noreply.github.com> Co-authored-by: Moustafa Eid Co-authored-by: Andrija Cicovic <60783126+cicovica@users.noreply.github.com> Co-authored-by: Zhenfeng Co-authored-by: Akashdeep Goel Co-authored-by: Lei Ni <7233663+leni-msft@users.noreply.github.com> Co-authored-by: Jiashuo Li Co-authored-by: abebts2000 <54288923+abebts2000@users.noreply.github.com> Co-authored-by: gkostal Co-authored-by: ramoka178 <57157576+ramoka178@users.noreply.github.com> Co-authored-by: Praneeth Sanapathi Co-authored-by: Daotian Zhang Co-authored-by: Jianye Xi Co-authored-by: Yabo Hu Co-authored-by: Arcturus Co-authored-by: xiaoxu qi Co-authored-by: Xiaoxu Qi Co-authored-by: Auðunn Co-authored-by: Audunn Baldvinsson Co-authored-by: KshitijAgrawal Co-authored-by: Ruoxuan Wang <52271048+ruowan@users.noreply.github.com> Co-authored-by: changlong-liu <59815250+changlong-liu@users.noreply.github.com> Co-authored-by: Changlong Liu Co-authored-by: orargaman Co-authored-by: Or Argaman Co-authored-by: Arie Olshanezky Co-authored-by: sivanguetta <46525261+sivanguetta@users.noreply.github.com> Co-authored-by: Krista Pratico Co-authored-by: Raouf Merouche Co-authored-by: bashahee <32364196+bashahee@users.noreply.github.com> Co-authored-by: henrycyan <63266262+henrycyan@users.noreply.github.com> Co-authored-by: erelh Co-authored-by: erelh Co-authored-by: Weidong Xu Co-authored-by: parkhyukjun89 Co-authored-by: UdiRaitblat <61648660+UdiRaitblat@users.noreply.github.com> Co-authored-by: Liang Wang Co-authored-by: Ray Chen Co-authored-by: Himanshu Chhabra Co-authored-by: Chris Stackhouse Co-authored-by: v-ajnava Co-authored-by: nachakra <40373275+nachakra@users.noreply.github.com> Co-authored-by: Sandeep Vishnu Co-authored-by: feg2000 <50024924+feg2000@users.noreply.github.com> Co-authored-by: Arik Olsh <47111029+arolshan@users.noreply.github.com> Co-authored-by: Arvind Krishnaa J Co-authored-by: Arvind Krishnaa Jagannathan Co-authored-by: Robert Johnson Co-authored-by: Pooja Adhikari Co-authored-by: RB Johnson Co-authored-by: Huangli Wu Co-authored-by: datr93 <43795914+datr93@users.noreply.github.com> Co-authored-by: parisa-naeimi <38113090+parisa-naeimi@users.noreply.github.com> Co-authored-by: sranthar <49962779+sranthar@users.noreply.github.com> Co-authored-by: NarayanThiru Co-authored-by: Zhiyong Yang Co-authored-by: nabilat Co-authored-by: Nabil Lathiff Co-authored-by: Alon Gafni Co-authored-by: Alon Gafni Co-authored-by: HanLiMS <31705044+HanLiMS@users.noreply.github.com> Co-authored-by: Krishnan Duraisamy Co-authored-by: Jorge Cotillo Co-authored-by: Jorge Cotillo Co-authored-by: Luba Libov <39737466+lubalibu@users.noreply.github.com> Co-authored-by: aim-for-better Co-authored-by: Arthur Ning <57385816+akning-ms@users.noreply.github.com> Co-authored-by: David Co-authored-by: David Ricciardi Co-authored-by: Raouf Merouche Co-authored-by: Venkat <32355661+vakkinep@users.noreply.github.com> Co-authored-by: Venkat Akkinepally Co-authored-by: Dongjiang You Co-authored-by: Rahul Singh <53578268+rahuls-microsoft@users.noreply.github.com> Co-authored-by: Cameron Taggart Co-authored-by: Ric Serradas Co-authored-by: Eric Dettinger Co-authored-by: Karthik Subramanian Co-authored-by: Ravi Kumar Suresh Babu Co-authored-by: ravikumarsureshbabu Co-authored-by: Dmitry Denisov Co-authored-by: Nick Schonning Co-authored-by: Karthik Subramanian Co-authored-by: Jimmy Campbell Co-authored-by: 陈箭飞 <32889038+chenjianfei2017@users.noreply.github.com> Co-authored-by: root Co-authored-by: navysingla <47647464+navysingla@users.noreply.github.com> Co-authored-by: Bertrand Le Roy Co-authored-by: taklei <61745633+taklei@users.noreply.github.com> Co-authored-by: Feiyu Shi <44449256+feiyushi@users.noreply.github.com> Co-authored-by: Feiyu Shi Co-authored-by: Rajasekharan Vengalil Co-authored-by: sashahdo <64434373+sashahdo@users.noreply.github.com> Co-authored-by: Phoenix He Co-authored-by: Mikhail Co-authored-by: vivekagg-MSFT <36711748+ninzavivek@users.noreply.github.com> Co-authored-by: irrogozh Co-authored-by: gimotwanMSFT <36463144+gimotwanMSFT@users.noreply.github.com> Co-authored-by: Sai Sujith Reddy Mankala Co-authored-by: Nilambari Co-authored-by: odedlaz Co-authored-by: Ritvika Reddy Nagula Co-authored-by: Moustafa Eid Co-authored-by: Kishore Kumar Peshkar Co-authored-by: Bruce Johnston Co-authored-by: Bruce Johnston Co-authored-by: Jeanine Burke <41650461+jaysterp@users.noreply.github.com> Co-authored-by: Ran Wang Co-authored-by: Yang Yuan Co-authored-by: lwang2016 Co-authored-by: shail2208 <59747407+shail2208@users.noreply.github.com> Co-authored-by: Shail Paragbhai Shah Co-authored-by: Sriram Kakara Co-authored-by: Priyaranjan Pandey Co-authored-by: jeffj6123 Co-authored-by: John Call Co-authored-by: Jason Yang Co-authored-by: jerryc3 <48365571+jerryc3@users.noreply.github.com> Co-authored-by: Jerry Chan Co-authored-by: KranthiKiranerusu Co-authored-by: Arturo Lucatero Co-authored-by: aarongas Co-authored-by: Nate Lehman Co-authored-by: huangbolun Co-authored-by: ariklin Co-authored-by: Arik Riklin Co-authored-by: caod Co-authored-by: Dong Cao Co-authored-by: Zach Rathbun Co-authored-by: TinaHu1 <51737887+TinaHu1@users.noreply.github.com> Co-authored-by: Alex Aloni Co-authored-by: Alex Dubinkov Co-authored-by: shurd Co-authored-by: Sam Hurd Co-authored-by: annatisch Co-authored-by: John Stairs Co-authored-by: Landon Smith Co-authored-by: Xiangyu Luo Co-authored-by: Lei Ni Co-authored-by: Steve Stein Co-authored-by: Tosin Adewale Co-authored-by: Tosin Adewale Co-authored-by: elabicha <61994320+elabicha@users.noreply.github.com> Co-authored-by: jspearman3 Co-authored-by: Praneeth Sanapathi Co-authored-by: ayfathim Co-authored-by: Vivian Liu Co-authored-by: Allen Zhang Co-authored-by: Ashraf Hamad Co-authored-by: Ashraf Hamad Co-authored-by: Yoram Singer <37076505+yoramsinger@users.noreply.github.com> Co-authored-by: Junbo Wang Co-authored-by: Donald Liu <32778916+PakDLiu@users.noreply.github.com> Co-authored-by: ityankel <47292630+ityankel@users.noreply.github.com> Co-authored-by: Marcin Jastrzebski Co-authored-by: Avinash Co-authored-by: ivkule <59470194+ivkule@users.noreply.github.com> Co-authored-by: NourEldin Yasser <65115481+a-noyass@users.noreply.github.com> --- .../package-lock.json | 339 +- .azure-pipelines-preproduction/package.json | 4 +- .azure-pipelines/Avocado.yml | 1 + .azure-pipelines/SDKAutomation.yml | 39 +- .azure-pipelines/SwaggerToSDK.yml | 6 + .github/PULL_REQUEST_TEMPLATE.md | 27 +- .github/assignment.yml | 154 + .github/sla.yml | 88 +- CODEOWNERS | 6 +- cSpell.json | 12 + custom-words.txt | 46 +- documentation/FAQ.md | 41 + documentation/ci-fix.md | 76 +- .../openapi-authoring-automated-guidelines.md | 206 +- package-lock.json | 400 +- package.json | 4 +- preproduction-azure-pipelines.yml | 12 +- .../2014-01-01/ADHybridHealthService.json | 250 +- .../examples/IpAddressAggregateSettings.json | 18 + .../IpAddressAggregateSettingsUpdate.json | 26 + .../examples/IpAddressAggregates.json | 37 + .../stable/2017-04-19/advisor.json | 2 +- .../stable/2020-01-01/advisor.json | 20 +- .../examples/GetRecommendationDetail.json | 12 +- .../examples/ListRecommendations.json | 28 +- .../advisor/resource-manager/readme.go.md | 10 + .../resource-manager/readme.cli.md | 43 +- .../2018-06-01-preview/definitions.json | 4 +- .../2019-12-01-preview/apimanagement.json | 20 + .../2019-12-01-preview/apimdeployment.json | 36 +- .../2019-12-01-preview/apimgateways.json | 997 + .../2019-12-01-preview/definitions.json | 238 + .../examples/ApiManagementCreateGateway.json | 45 + .../ApiManagementCreateGatewayApi.json | 61 + ...entCreateGatewayHostnameConfiguration.json | 43 + .../ApiManagementCreateServiceHavingMsi.json | 3 +- ...CreateServiceWithUserAssignedIdentity.json | 136 + .../examples/ApiManagementDeleteGateway.json | 14 + .../ApiManagementDeleteGatewayApi.json | 15 + ...entDeleteGatewayHostnameConfiguration.json | 15 + .../ApiManagementGatewayGenerateToken.json | 20 + .../ApiManagementGatewayListKeys.json | 17 + .../ApiManagementGatewayRegenerateKey.json | 15 + .../examples/ApiManagementGetGateway.json | 24 + ...gementGetGatewayHostnameConfiguration.json | 24 + .../examples/ApiManagementHeadGateway.json | 16 + .../examples/ApiManagementHeadGatewayApi.json | 17 + ...ementHeadGatewayHostnameConfiguration.json | 17 + .../ApiManagementListGatewayApis.json | 34 + ...mentListGatewayHostnameConfigurations.json | 38 + .../examples/ApiManagementListGateways.json | 39 + .../examples/ApiManagementUpdateGateway.json | 21 + .../stable/2019-01-01/definitions.json | 17 + .../stable/2019-12-01/apimanagement.json | 718 + .../stable/2019-12-01/apimapis.json | 4470 +++ .../stable/2019-12-01/apimapisByTags.json | 106 + .../stable/2019-12-01/apimapiversionsets.json | 367 + .../2019-12-01/apimauthorizationservers.json | 412 + .../stable/2019-12-01/apimbackends.json | 421 + .../stable/2019-12-01/apimcaches.json | 363 + .../stable/2019-12-01/apimcertificates.json | 319 + .../stable/2019-12-01/apimdeployment.json | 1551 + .../stable/2019-12-01/apimdiagnostics.json | 367 + .../stable/2019-12-01/apimemailtemplates.json | 354 + .../stable/2019-12-01/apimgateways.json | 997 + .../stable/2019-12-01/apimgroups.json | 581 + .../2019-12-01/apimidentityprovider.json | 401 + .../stable/2019-12-01/apimissues.json | 150 + .../stable/2019-12-01/apimloggers.json | 380 + .../stable/2019-12-01/apimnamedvalues.json | 441 + .../stable/2019-12-01/apimnetworkstatus.json | 212 + .../stable/2019-12-01/apimnotifications.json | 564 + .../apimopenidconnectproviders.json | 412 + .../stable/2019-12-01/apimpolicies.json | 304 + .../2019-12-01/apimpolicydescriptions.json | 100 + .../stable/2019-12-01/apimportalsettings.json | 657 + .../stable/2019-12-01/apimproducts.json | 1399 + .../stable/2019-12-01/apimproductsByTags.json | 106 + .../stable/2019-12-01/apimquotas.json | 242 + .../stable/2019-12-01/apimregions.json | 85 + .../stable/2019-12-01/apimreports.json | 514 + .../stable/2019-12-01/apimsubscriptions.json | 502 + .../stable/2019-12-01/apimtagresources.json | 99 + .../stable/2019-12-01/apimtags.json | 374 + .../stable/2019-12-01/apimtenant.json | 740 + .../stable/2019-12-01/apimusers.json | 702 + .../stable/2019-12-01/definitions.json | 5561 +++ ...ementApplyNetworkConfigurationUpdates.json | 53 + .../ApiManagementBackendReconnect.json | 17 + .../examples/ApiManagementCreateAILogger.json | 51 + .../examples/ApiManagementCreateApi.json | 98 + .../examples/ApiManagementCreateApiClone.json | 79 + .../ApiManagementCreateApiDiagnostic.json | 160 + .../examples/ApiManagementCreateApiIssue.json | 49 + ...ApiManagementCreateApiIssueAttachment.json | 44 + .../ApiManagementCreateApiIssueComment.json | 44 + ...ntCreateApiNewVersionUsingExistingApi.json | 95 + .../ApiManagementCreateApiOperation.json | 130 + ...ApiManagementCreateApiOperationPolicy.json | 40 + .../ApiManagementCreateApiOperationTag.json | 33 + .../ApiManagementCreateApiPolicy.json | 39 + ...anagementCreateApiPolicyNonXmlEncoded.json | 39 + .../ApiManagementCreateApiRelease.json | 44 + ...ementCreateApiRevisionFromExistingApi.json | 68 + .../ApiManagementCreateApiSchema.json | 51 + .../examples/ApiManagementCreateApiTag.json | 32 + .../ApiManagementCreateApiTagDescription.json | 47 + ...reateApiUsingImportOverrideServiceUrl.json | 68 + ...ApiManagementCreateApiUsingOai3Import.json | 65 + ...ManagementCreateApiUsingSwaggerImport.json | 67 + ...ApiManagementCreateApiUsingWadlImport.json | 67 + .../ApiManagementCreateApiVersionSet.json | 42 + ...iManagementCreateApiWithOpenIdConnect.json | 99 + ...piManagementCreateAuthorizationServer.json | 94 + ...piManagementCreateBackendProxyBackend.json | 126 + ...iManagementCreateBackendServiceFabric.json | 87 + .../examples/ApiManagementCreateBackup.json | 126 + .../examples/ApiManagementCreateCache.json | 42 + .../ApiManagementCreateCertificate.json | 41 + .../ApiManagementCreateDiagnostic.json | 159 + .../examples/ApiManagementCreateEHLogger.json | 55 + .../ApiManagementCreateEmailTemplate.json | 96 + .../examples/ApiManagementCreateGateway.json | 45 + .../ApiManagementCreateGatewayApi.json | 61 + ...entCreateGatewayHostnameConfiguration.json | 43 + .../examples/ApiManagementCreateGroup.json | 38 + .../ApiManagementCreateGroupExternal.json | 45 + .../ApiManagementCreateGroupUser.json | 44 + .../ApiManagementCreateIdentityProvider.json | 39 + ...eMultiRegionServiceWithCustomHostname.json | 256 + .../ApiManagementCreateNamedValue.json | 59 + .../ApiManagementCreateNotification.json | 32 + ...ementCreateNotificationRecipientEmail.json | 32 + ...gementCreateNotificationRecipientUser.json | 32 + ...ManagementCreateOpenIdConnectProvider.json | 43 + .../examples/ApiManagementCreatePolicy.json | 37 + .../examples/ApiManagementCreateProduct.json | 42 + .../ApiManagementCreateProductApi.json | 56 + .../ApiManagementCreateProductGroup.json | 38 + .../ApiManagementCreateProductPolicy.json | 38 + .../ApiManagementCreateProductTag.json | 32 + .../examples/ApiManagementCreateService.json | 124 + .../ApiManagementCreateServiceHavingMsi.json | 119 + ...ntCreateServiceWithSystemCertificates.json | 154 + ...CreateServiceWithUserAssignedIdentity.json | 136 + ...eateSoapPassThroughApiUsingWsdlImport.json | 72 + ...entCreateSoapToRestApiUsingWsdlImport.json | 69 + .../ApiManagementCreateSubscription.json | 46 + .../examples/ApiManagementCreateTag.json | 36 + .../examples/ApiManagementCreateUser.json | 61 + .../examples/ApiManagementDeleteApi.json | 14 + .../ApiManagementDeleteApiDiagnostic.json | 15 + .../examples/ApiManagementDeleteApiIssue.json | 15 + ...ApiManagementDeleteApiIssueAttachment.json | 16 + .../ApiManagementDeleteApiIssueComment.json | 16 + .../ApiManagementDeleteApiOperation.json | 15 + ...ApiManagementDeleteApiOperationPolicy.json | 16 + .../ApiManagementDeleteApiOperationTag.json | 16 + .../ApiManagementDeleteApiPolicy.json | 15 + .../ApiManagementDeleteApiRelease.json | 15 + .../ApiManagementDeleteApiSchema.json | 15 + .../examples/ApiManagementDeleteApiTag.json | 15 + .../ApiManagementDeleteApiTagDescription.json | 15 + .../ApiManagementDeleteApiVersionSet.json | 14 + ...piManagementDeleteAuthorizationServer.json | 14 + .../examples/ApiManagementDeleteBackend.json | 14 + .../examples/ApiManagementDeleteCache.json | 14 + .../ApiManagementDeleteCertificate.json | 14 + .../ApiManagementDeleteDiagnostic.json | 14 + .../ApiManagementDeleteEmailTemplate.json | 14 + .../examples/ApiManagementDeleteGateway.json | 14 + .../ApiManagementDeleteGatewayApi.json | 15 + ...entDeleteGatewayHostnameConfiguration.json | 15 + .../examples/ApiManagementDeleteGroup.json | 14 + .../ApiManagementDeleteGroupUser.json | 15 + .../ApiManagementDeleteIdentityProvider.json | 14 + .../examples/ApiManagementDeleteLogger.json | 14 + .../ApiManagementDeleteNamedValue.json | 14 + ...ementDeleteNotificationRecipientEmail.json | 14 + ...gementDeleteNotificationRecipientUser.json | 14 + ...ManagementDeleteOpenIdConnectProvider.json | 14 + .../examples/ApiManagementDeletePolicy.json | 14 + .../examples/ApiManagementDeleteProduct.json | 15 + .../ApiManagementDeleteProductApi.json | 15 + .../ApiManagementDeleteProductGroup.json | 15 + .../ApiManagementDeleteProductPolicy.json | 15 + .../ApiManagementDeleteProductTag.json | 15 + .../ApiManagementDeleteSubscription.json | 14 + .../examples/ApiManagementDeleteTag.json | 14 + .../examples/ApiManagementDeleteUser.json | 14 + .../ApiManagementGatewayGenerateToken.json | 20 + .../ApiManagementGatewayListKeys.json | 17 + .../ApiManagementGatewayRegenerateKey.json | 15 + .../examples/ApiManagementGetApiContract.json | 34 + .../ApiManagementGetApiDiagnostic.json | 57 + ...iManagementGetApiExportInOpenApi2dot0.json | 22 + ...iManagementGetApiExportInOpenApi3dot0.json | 22 + .../examples/ApiManagementGetApiIssue.json | 27 + .../ApiManagementGetApiIssueAttachment.json | 25 + .../ApiManagementGetApiIssueComment.json | 25 + .../ApiManagementGetApiOperation.json | 53 + .../ApiManagementGetApiOperationPetStore.json | 91 + .../ApiManagementGetApiOperationPolicy.json | 23 + .../ApiManagementGetApiOperationTag.json | 23 + .../examples/ApiManagementGetApiPolicy.json | 22 + .../examples/ApiManagementGetApiRelease.json | 25 + .../examples/ApiManagementGetApiRevision.json | 32 + .../examples/ApiManagementGetApiSchema.json | 25 + .../examples/ApiManagementGetApiTag.json | 22 + .../ApiManagementGetApiTagDescription.json | 26 + .../ApiManagementGetApiVersionSet.json | 23 + .../ApiManagementGetAuthorizationServer.json | 43 + .../examples/ApiManagementGetBackend.json | 38 + .../examples/ApiManagementGetCache.json | 23 + .../examples/ApiManagementGetCertificate.json | 23 + .../examples/ApiManagementGetDiagnostic.json | 56 + .../ApiManagementGetEmailTemplate.json | 51 + .../examples/ApiManagementGetGateway.json | 24 + ...gementGetGatewayHostnameConfiguration.json | 24 + .../examples/ApiManagementGetGroup.json | 25 + .../ApiManagementGetIdentityProvider.json | 30 + .../examples/ApiManagementGetIssue.json | 26 + .../examples/ApiManagementGetLogger.json | 28 + .../examples/ApiManagementGetNamedValue.json | 27 + .../ApiManagementGetNotification.json | 32 + ...ApiManagementGetOpenIdConnectProvider.json | 24 + .../examples/ApiManagementGetPolicy.json | 21 + .../ApiManagementGetPolicyFormat.json | 23 + .../examples/ApiManagementGetProduct.json | 26 + .../ApiManagementGetProductPolicy.json | 22 + .../examples/ApiManagementGetProductTag.json | 22 + .../ApiManagementGetQuotaCounterKeys.json | 28 + ...ementGetQuotaCounterKeysByQuotaPeriod.json | 24 + .../ApiManagementGetReportsByApi.json | 55 + .../ApiManagementGetReportsByGeo.json | 37 + .../ApiManagementGetReportsByOperation.json | 76 + .../ApiManagementGetReportsByProduct.json | 55 + .../ApiManagementGetReportsByRequest.json | 56 + ...ApiManagementGetReportsBySubscription.json | 79 + .../ApiManagementGetReportsByTime.json | 56 + .../ApiManagementGetReportsByUser.json | 73 + .../ApiManagementGetSubscription.json | 25 + .../examples/ApiManagementGetTag.json | 21 + .../ApiManagementGetTenantAccess.json | 17 + .../examples/ApiManagementGetUser.json | 31 + .../examples/ApiManagementHeadApi.json | 16 + .../ApiManagementHeadApiDiagnostic.json | 17 + .../examples/ApiManagementHeadApiIssue.json | 17 + .../ApiManagementHeadApiIssueAttachment.json | 18 + .../ApiManagementHeadApiIssueComment.json | 18 + .../ApiManagementHeadApiOperation.json | 17 + .../ApiManagementHeadApiOperationPolicy.json | 18 + .../ApiManagementHeadApiOperationTag.json | 18 + .../examples/ApiManagementHeadApiPolicy.json | 17 + .../examples/ApiManagementHeadApiRelease.json | 17 + .../examples/ApiManagementHeadApiSchema.json | 17 + .../examples/ApiManagementHeadApiTag.json | 17 + .../ApiManagementHeadApiTagDescription.json | 17 + .../ApiManagementHeadApiVersionSet.json | 16 + .../ApiManagementHeadAuthorizationServer.json | 16 + .../examples/ApiManagementHeadBackend.json | 16 + .../examples/ApiManagementHeadCache.json | 16 + .../ApiManagementHeadCertificate.json | 16 + .../ApiManagementHeadDelegationSettings.json | 15 + .../examples/ApiManagementHeadDiagnostic.json | 16 + .../ApiManagementHeadEmailTemplate.json | 16 + .../examples/ApiManagementHeadGateway.json | 16 + .../examples/ApiManagementHeadGatewayApi.json | 17 + ...ementHeadGatewayHostnameConfiguration.json | 17 + .../examples/ApiManagementHeadGroup.json | 16 + .../examples/ApiManagementHeadGroupUser.json | 14 + .../ApiManagementHeadIdentityProvider.json | 16 + .../examples/ApiManagementHeadLogger.json | 16 + .../examples/ApiManagementHeadNamedValue.json | 16 + ...agementHeadNotificationRecipientEmail.json | 14 + ...nagementHeadNotificationRecipientUser.json | 14 + ...piManagementHeadOpenIdConnectProvider.json | 16 + .../examples/ApiManagementHeadPolicy.json | 16 + .../examples/ApiManagementHeadProduct.json | 16 + .../examples/ApiManagementHeadProductApi.json | 13 + .../ApiManagementHeadProductGroup.json | 13 + .../ApiManagementHeadProductPolicy.json | 17 + .../examples/ApiManagementHeadProductTag.json | 17 + .../ApiManagementHeadSignInSettings.json | 15 + .../ApiManagementHeadSignUpSettings.json | 15 + .../ApiManagementHeadSubscription.json | 16 + .../examples/ApiManagementHeadTag.json | 16 + .../ApiManagementHeadTenantAccess.json | 12 + .../examples/ApiManagementHeadUser.json | 16 + .../ApiManagementListApiDiagnostics.json | 60 + .../ApiManagementListApiIssueAttachments.json | 29 + .../ApiManagementListApiIssueComments.json | 29 + .../examples/ApiManagementListApiIssues.json | 31 + ...ApiManagementListApiOperationPolicies.json | 27 + .../ApiManagementListApiOperationTags.json | 27 + .../ApiManagementListApiOperations.json | 69 + .../ApiManagementListApiOperationsByTags.json | 32 + .../ApiManagementListApiPolicies.json | 26 + .../ApiManagementListApiProducts.json | 31 + .../ApiManagementListApiReleases.json | 28 + .../ApiManagementListApiRevisions.json | 26 + .../examples/ApiManagementListApiSchemas.json | 26 + .../ApiManagementListApiTagDescriptions.json | 29 + .../examples/ApiManagementListApiTags.json | 26 + .../ApiManagementListApiVersionSets.json | 37 + .../examples/ApiManagementListApis.json | 81 + .../examples/ApiManagementListApisByTags.json | 30 + ...ApiManagementListAuthorizationServers.json | 74 + .../examples/ApiManagementListBackends.json | 80 + .../examples/ApiManagementListCaches.json | 26 + .../ApiManagementListCertificates.json | 27 + .../ApiManagementListDiagnostics.json | 73 + .../ApiManagementListEmailTemplates.json | 55 + .../ApiManagementListGatewayApis.json | 34 + ...mentListGatewayHostnameConfigurations.json | 38 + .../examples/ApiManagementListGateways.json | 39 + .../examples/ApiManagementListGroupUsers.json | 37 + .../examples/ApiManagementListGroups.json | 62 + .../ApiManagementListIdentityProviders.json | 52 + .../examples/ApiManagementListIssues.json | 30 + .../examples/ApiManagementListLoggers.json | 46 + .../ApiManagementListNamedValues.json | 40 + ...gementListNotificationRecipientEmails.json | 42 + ...agementListNotificationRecipientUsers.json | 26 + .../ApiManagementListNotifications.json | 126 + ...iManagementListOpenIdConnectProviders.json | 28 + .../examples/ApiManagementListOperations.json | 59 + .../examples/ApiManagementListPolicies.json | 25 + .../ApiManagementListPolicyDescriptions.json | 36 + .../ApiManagementListProductApis.json | 34 + .../ApiManagementListProductGroups.json | 51 + .../ApiManagementListProductPolicies.json | 26 + ...ApiManagementListProductSubscriptions.json | 29 + .../ApiManagementListProductTags.json | 26 + .../examples/ApiManagementListProducts.json | 55 + .../ApiManagementListProductsByTags.json | 32 + .../examples/ApiManagementListRegions.json | 23 + .../ApiManagementListSKUs-Consumption.json | 24 + .../ApiManagementListSKUs-Dedicated.json | 65 + ...agementListSecretsAuthorizationServer.json | 16 + ...ManagementListSecretsIdentityProvider.json | 16 + .../ApiManagementListSecretsNamedValue.json | 16 + ...ementListSecretsOpenIdConnectProvider.json | 16 + ...istSecretsPortalSettingsValidationKey.json | 15 + .../ApiManagementListSecretsSubscription.json | 17 + .../ApiManagementListSecretsTenantAccess.json | 19 + ...piManagementListServiceBySubscription.json | 164 + ...ServiceBySubscriptionAndResourceGroup.json | 121 + .../ApiManagementListSubscriptions.json | 55 + .../ApiManagementListTagResources.json | 61 + .../examples/ApiManagementListTags.json | 33 + .../examples/ApiManagementListUserGroups.json | 29 + .../ApiManagementListUserIdentities.json | 22 + .../ApiManagementListUserSubscriptions.json | 44 + .../examples/ApiManagementListUsers.json | 71 + ...ManagementPortalSettingsGetDelegation.json | 26 + .../ApiManagementPortalSettingsGetSignIn.json | 20 + .../ApiManagementPortalSettingsGetSignUp.json | 25 + ...ManagementPortalSettingsPutDelegation.json | 40 + .../ApiManagementPortalSettingsPutSignIn.json | 27 + .../ApiManagementPortalSettingsPutSignUp.json | 37 + ...agementPortalSettingsUpdateDelegation.json | 25 + ...iManagementPortalSettingsUpdateSignIn.json | 18 + ...iManagementPortalSettingsUpdateSignUp.json | 23 + .../examples/ApiManagementRestoreService.json | 126 + ...anagementServiceCheckNameAvailability.json | 19 + .../ApiManagementServiceDeleteService.json | 60 + ...mentServiceGetMultiRegionInternalVnet.json | 98 + .../ApiManagementServiceGetNetworkStatus.json | 101 + ...mentServiceGetNetworkStatusByLocation.json | 62 + .../ApiManagementServiceGetService.json | 115 + ...iManagementServiceGetServiceHavingMsi.json | 87 + .../ApiManagementServiceGetSsoToken.json | 15 + ...ementSubscriptionRegeneratePrimaryKey.json | 12 + ...entSubscriptionRegenerateSecondaryKey.json | 12 + ...piManagementTenantAccessRegenerateKey.json | 12 + .../ApiManagementTenantAccessSyncState.json | 22 + ...piManagementTenantConfigurationDeploy.json | 33 + .../ApiManagementTenantConfigurationSave.json | 32 + ...ManagementTenantConfigurationValidate.json | 172 + .../examples/ApiManagementUpdateApi.json | 20 + .../ApiManagementUpdateApiDiagnostic.json | 60 + .../examples/ApiManagementUpdateApiIssue.json | 19 + .../ApiManagementUpdateApiOperation.json | 50 + .../ApiManagementUpdateApiRelease.json | 20 + .../ApiManagementUpdateApiVersionSet.json | 20 + ...piManagementUpdateAuthorizationServer.json | 19 + .../examples/ApiManagementUpdateBackend.json | 22 + .../examples/ApiManagementUpdateCache.json | 18 + .../ApiManagementUpdateDiagnostic.json | 59 + .../ApiManagementUpdateEmailTemplate.json | 19 + .../examples/ApiManagementUpdateGateway.json | 21 + .../examples/ApiManagementUpdateGroup.json | 18 + .../ApiManagementUpdateIdentityProvider.json | 19 + .../examples/ApiManagementUpdateLogger.json | 21 + .../ApiManagementUpdateNamedValue.json | 44 + ...ManagementUpdateOpenIdConnectProvider.json | 18 + .../examples/ApiManagementUpdateProduct.json | 18 + .../ApiManagementUpdateQuotaCounterKey.json | 16 + ...entUpdateQuotaCounterKeyByQuotaPeriod.json | 17 + ...piManagementUpdateServiceDisableTls10.json | 92 + ...nagementUpdateServicePublisherDetails.json | 91 + .../ApiManagementUpdateSubscription.json | 18 + .../examples/ApiManagementUpdateTag.json | 18 + .../ApiManagementUpdateTenantAccess.json | 18 + .../examples/ApiManagementUpdateUser.json | 20 + ...anagementUserConfirmationPasswordSend.json | 12 + .../ApiManagementUserGenerateSsoUrl.json | 16 + .../examples/ApiManagementUserToken.json | 22 + .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.java.md | 14 + .../apimanagement/resource-manager/readme.md | 84 +- .../2019-11-01-preview/appconfiguration.json | 54 + .../examples/ConfigurationStoresCreate.json | 14 +- ...ConfigurationStoresCreateWithIdentity.json | 14 +- .../examples/ConfigurationStoresGet.json | 6 +- .../examples/ConfigurationStoresList.json | 12 +- ...onfigurationStoresListByResourceGroup.json | 12 +- .../examples/ConfigurationStoresUpdate.json | 8 +- ...ConfigurationStoresUpdateWithIdentity.json | 8 +- .../examples/PrivateLinkResourceGet.json | 3 + ...LinkResourcesListByConfigurationStore.json | 3 + .../examples/ConfigurationStoresCreate.json | 6 +- ...ConfigurationStoresCreateWithIdentity.json | 6 +- .../examples/ConfigurationStoresGet.json | 2 +- .../examples/ConfigurationStoresList.json | 4 +- ...onfigurationStoresListByResourceGroup.json | 4 +- .../resource-manager/readme.cli.md | 47 +- .../resource-manager/readme.python.md | 21 +- .../preview/2018-04-20/swagger.json | 6 + .../preview/v1/AppInsights.json | 6 + .../componentProactiveDetection_API.json | 40 +- .../2018-05-01-preview/components_API.json | 697 + .../examples/ComponentsCreate.json | 79 + .../examples/ComponentsDelete.json | 12 + .../examples/ComponentsGet.json | 40 + .../examples/ComponentsList.json | 71 + .../ComponentsListByResourceGroup.json | 72 + .../examples/ComponentsPurge.json | 28 + .../examples/ComponentsPurgeStatus.json | 16 + .../examples/ComponentsUpdate.json | 84 + .../examples/ComponentsUpdateTagsOnly.json | 91 + .../ProactiveDetectionConfigurationGet.json | 0 ...ProactiveDetectionConfigurationUpdate.json | 1 - .../ProactiveDetectionConfigurationsList.json | 0 .../2020-02-02-preview/components_API.json | 690 + .../examples/ComponentsCreate.json | 49 + .../examples/ComponentsDelete.json | 12 + .../examples/ComponentsGet.json | 39 + .../examples/ComponentsList.json | 69 + .../ComponentsListByResourceGroup.json | 70 + .../examples/ComponentsPurge.json | 28 + .../examples/ComponentsPurgeStatus.json | 16 + .../examples/ComponentsUpdate.json | 50 + .../examples/ComponentsUpdateTagsOnly.json | 54 + .../WebTestResults_API.json | 294 + .../examples/Operations_List.json | 23 + .../WebTestResultsTestResultFile.json | 21 + .../componentLinkedStorageAccounts_API.json | 13 +- ...tLinkedStorageAccountsCreateAndUpdate.json | 2 +- .../ComponentLinkedStorageAccountsDelete.json | 2 +- .../ComponentLinkedStorageAccountsGet.json | 2 +- .../ComponentLinkedStorageAccountsUpdate.json | 2 +- .../stable/2015-05-01/components_API.json | 21 + .../resource-manager/readme.cli.md | 10 +- .../resource-manager/readme.md | 63 +- .../resource-manager/readme.python.md | 106 +- .../2019-05-01-preview/appplatform.json | 876 +- .../examples/Apps_CreateOrUpdate.json | 11 +- .../2019-05-01-preview/examples/Apps_Get.json | 3 + .../examples/Apps_List.json | 3 + .../examples/Apps_Update.json | 11 +- .../examples/Certificates_CreateOrUpdate.json | 41 + .../examples/Certificates_Delete.json | 13 + .../examples/Certificates_Get.json | 34 + .../examples/Certificates_List.json | 38 + .../CustomDomains_CreateOrUpdate.json | 31 + .../examples/CustomDomains_Delete.json | 14 + .../examples/CustomDomains_Get.json | 24 + .../examples/CustomDomains_List.json | 28 + .../examples/CustomDomains_Patch.json | 31 + .../examples/CustomDomains_Validate.json | 20 + .../examples/Deployments_CreateOrUpdate.json | 6 +- .../examples/Deployments_Get.json | 2 +- .../examples/Deployments_List.json | 2 +- ...Deployments_ListClusterAllDeployments.json | 2 +- .../examples/Deployments_Update.json | 4 +- .../examples/Operations_List.json | 2 +- .../resource-manager/readme.cli.md | 15 +- .../PrivateEndpointConnectionDelete.json | 13 + .../PrivateEndpointConnectionGet.json | 28 + .../PrivateEndpointConnectionListGet.json | 46 + .../PrivateEndpointConnectionUpdate.json | 37 + .../examples/PrivateLinkResourceGet.json | 25 + .../examples/PrivateLinkResourceListGet.json | 28 + .../privateEndpointConnection.json | 311 + .../privateLinkResources.json | 175 + .../automation/resource-manager/readme.cli.md | 178 + .../automation/resource-manager/readme.md | 39 + .../preview/2018-09-01/Backup.json | 14 + .../preview/2018-09-01/BackupLocations.json | 20 +- .../preview/2018-09-01/Backups.json | 17 +- .../stable/2016-05-01/Backup.json | 204 - .../stable/2016-05-01/BackupLocations.json | 317 - .../stable/2016-05-01/Backups.json | 310 - .../examples/BackupLocations/Backup.json | 144 - .../examples/BackupLocations/Get.json | 28 - .../examples/BackupLocations/List.json | 30 - .../examples/BackupLocations/Update.json | 63 - .../2016-05-01/examples/Backups/Get.json | 83 - .../2016-05-01/examples/Backups/List.json | 87 - .../2016-05-01/examples/Backups/Restore.json | 14 - .../2016-05-01/examples/Operations/List.json | 15 - .../resource-manager/backup/readme.md | 36 +- .../preview/2015-06-01-preview/Commerce.json | 3 +- .../commerce/readme.azsautogen.md | 8 + .../resource-manager/commerce/readme.md | 1 - .../2018-07-30-preview/DiskMigrationJobs.json | 24 +- .../preview/2018-07-30-preview/Disks.json | 24 +- .../readme.azsautogen.md | 12 + .../infrastructureinsights/readme.md | 19 +- .../keyvault/readme.azsautogen.md | 9 + .../resource-manager/keyvault/readme.md | 5 +- .../preview/2015-06-15/PublicIpAddresses.json | 4 +- .../preview/2015-06-15/Quotas.json | 6 - .../2015-06-15/examples/Quota/Get.json | 3 +- .../2015-06-15/examples/Quota/List.json | 3 +- .../resource-manager/network/readme.md | 24 +- .../examples/StorageAccounts/Undelete.json | 6 +- .../preview/2019-08-08/settings.json | 3 +- .../preview/2019-08-08/storage.json | 4 +- .../preview/2019-08-08/storageaccounts.json | 14 +- .../storage/readme.azsautogen.md | 55 + .../preview/2015-11-01/AcquiredPlan.json | 6 +- .../preview/2015-11-01/DelegatedProvider.json | 2 +- .../preview/2015-11-01/DirectoryTenant.json | 6 +- .../preview/2015-11-01/Offer.json | 18 +- .../preview/2015-11-01/OfferDelegation.json | 6 +- .../preview/2015-11-01/Plan.json | 10 +- .../preview/2015-11-01/Subscriptions.json | 36 +- .../examples/AcquiredPlan/Create.json | 2 +- .../examples/DirectoryTenant/Create.json | 2 +- .../2015-11-01/examples/Offer/Create.json | 2 +- .../examples/OfferDelegation/Create.json | 2 +- .../2015-11-01/examples/Plan/Create.json | 2 +- .../Subscriptions/CheckIdentityHealth.json | 2 +- .../examples/Subscriptions/Create.json | 3 +- .../examples/Subscriptions/Delete.json | 1 + .../examples/Subscriptions/Get.json | 1 + .../subscriptions/readme.azsautogen.md | 114 + .../resource-manager/subscriptions/readme.md | 8 +- .../preview/2016-05-01/UpdateLocations.json | 4 +- .../preview/2016-05-01/UpdateRuns.json | 10 +- .../preview/2016-05-01/Updates.json | 6 +- .../update/readme.azsautogen.md | 73 + .../resource-manager/update/readme.md | 9 +- ...dDatabaseConfigurationsCreateOrUpdate.json | 61 + ...oAttachedDatabaseConfigurationsDelete.json | 14 + ...ustoAttachedDatabaseConfigurationsGet.json | 25 + ...edDatabaseConfigurationsListByCluster.json | 40 + .../KustoClusterAddLanguageExtensions.json | 22 + .../KustoClusterDetachFollowerDatabases.json | 16 + .../KustoClusterListFollowerDatabases.json | 26 + .../KustoClusterListLanguageExtensions.json | 22 + ...cipalAssignmentsCheckNameAvailability.json | 21 + ...terPrincipalAssignmentsCreateOrUpdate.json | 51 + ...ustoClusterPrincipalAssignmentsDelete.json | 14 + .../KustoClusterPrincipalAssignmentsGet.json | 27 + .../KustoClusterPrincipalAssignmentsList.json | 45 + .../KustoClusterRemoveLanguageExtensions.json | 22 + .../KustoClustersCheckNameAvailability.json | 20 + .../examples/KustoClustersCreateOrUpdate.json | 88 + .../examples/KustoClustersDelete.json | 13 + .../KustoClustersDiagnoseVirtualNetwork.json | 18 + .../2020-02-15/examples/KustoClustersGet.json | 39 + .../examples/KustoClustersList.json | 47 + .../KustoClustersListByResourceGroup.json | 48 + .../KustoClustersListResourceSkus.json | 68 + .../examples/KustoClustersListSkus.json | 103 + .../examples/KustoClustersStart.json | 12 + .../examples/KustoClustersStop.json | 12 + .../examples/KustoClustersUpdate.json | 107 + .../KustoDataConnectionValidation.json | 29 + ...oDataConnectionsCheckNameAvailability.json | 23 + .../KustoDataConnectionsCreateOrUpdate.json | 59 + .../examples/KustoDataConnectionsDelete.json | 15 + .../examples/KustoDataConnectionsGet.json | 25 + .../KustoDataConnectionsListByDatabase.json | 39 + .../examples/KustoDataConnectionsUpdate.json | 59 + .../examples/KustoDatabaseAddPrincipals.json | 69 + .../examples/KustoDatabaseListPrincipals.json | 41 + ...cipalAssignmentsCheckNameAvailability.json | 22 + ...asePrincipalAssignmentsCreateOrUpdate.json | 52 + ...stoDatabasePrincipalAssignmentsDelete.json | 15 + .../KustoDatabasePrincipalAssignmentsGet.json | 28 + ...KustoDatabasePrincipalAssignmentsList.json | 45 + .../KustoDatabaseRemovePrincipals.json | 69 + .../KustoDatabasesCheckNameAvailability.json | 21 + .../KustoDatabasesCreateOrUpdate.json | 57 + .../examples/KustoDatabasesDelete.json | 14 + .../examples/KustoDatabasesGet.json | 24 + .../examples/KustoDatabasesListByCluster.json | 36 + .../examples/KustoDatabasesUpdate.json | 56 + .../examples/KustoOperationsList.json | 22 + .../stable/2020-02-15/kusto.json | 4238 +++ .../azure-kusto/resource-manager/readme.az.md | 27 + .../azure-kusto/resource-manager/readme.go.md | 10 + .../azure-kusto/resource-manager/readme.md | 13 +- .../resource-manager/readme.typescript.md | 2 +- .../AzureADPrivateLinkPolicyCreate.json | 50 + .../AzureADPrivateLinkPolicyDelete.json | 24 + .../examples/AzureADPrivateLinkPolicyGet.json | 24 + .../AzureADPrivateLinkPolicyList.json | 27 + ...ADPrivateLinkPolicyListBySubscription.json | 27 + .../AzureADPrivateLinkPolicyMinCreate.json | 50 + .../AzureADPrivateLinkPolicyUpdate.json | 28 + .../AzureADPrivateLinkResourceGet.json | 25 + .../AzureADPrivateLinkResourceListGet.json | 29 + .../privateLinkForAzureAD.json | 480 + .../privateLinkResources.json | 267 + .../preview/2019-07-24-preview/azuredata.json | 2594 ++ .../CreateOrUpdateHybridDataManager.json | 41 + .../CreateOrUpdatePostgresInstance.json | 41 + .../examples/CreateOrUpdateSqlInstance.json | 41 + .../CreateOrUpdateSqlServerInstance.json | 63 + .../CreateOrUpdateSqlServerRegistration.json | 41 + ...rUpdateSqlServerWithRegistrationGroup.json | 48 + .../examples/DeleteHybridDataManager.json | 12 + .../examples/DeletePostgresInstance.json | 12 + .../examples/DeleteSqlInstance.json | 12 + .../examples/DeleteSqlServer.json | 13 + .../examples/DeleteSqlServerInstance.json | 12 + .../examples/DeleteSqlServerRegistration.json | 12 + .../examples/GetHybridDataManager.json | 22 + .../examples/GetPostgresInstance.json | 22 + .../examples/GetSqlInstance.json | 22 + .../examples/GetSqlServer.json | 26 + .../examples/GetSqlServerInstance.json | 30 + .../examples/GetSqlServerRegistration.json | 22 + .../ListByResourceGroupHybridDataManager.json | 35 + .../ListByResourceGroupPostgresInstance.json | 35 + .../ListByResourceGroupSqlInstance.json | 35 + .../ListByResourceGroupSqlServer.json | 40 + .../ListByResourceGroupSqlServerInstance.json | 51 + ...tByResourceGroupSqlServerRegistration.json | 35 + .../examples/ListOperation.json | 148 + .../ListSubscriptionHybridDataManager.json | 34 + .../ListSubscriptionPostgresInstance.json | 34 + .../ListSubscriptionSqlIInstance.json | 34 + .../ListSubscriptionSqlServerInstance.json | 50 + ...ListSubscriptionSqlServerRegistration.json | 34 + .../examples/UpdateHybridDataManager.json | 27 + .../examples/UpdatePostgresInstance.json | 27 + .../examples/UpdateSqlInstance.json | 24 + .../examples/UpdateSqlServerInstance.json | 32 + .../examples/UpdateSqlServerRegistration.json | 27 + .../azuredata/resource-manager/readme.go.md | 21 +- .../azuredata/resource-manager/readme.md | 30 +- .../resource-manager/readme.python.md | 4 +- .../azuredata/resource-manager/readme.ruby.md | 10 +- .../stable/2020-03-01/BatchManagement.json | 32 +- ...te.json => PrivateBatchAccountCreate.json} | 0 .../examples/PrivateBatchAccountGet.json | 48 + .../examples/PrivateLinkResourceGet.json | 3 + .../examples/PrivateLinkResourcesList.json | 3 + .../preview/2019-10-01-preview/billing.json | 894 +- .../billing/resource-manager/readme.cli.md | 12 +- .../examples/BlockchainMembers_Create.json | 4 +- .../examples/BlockchainMembers_Update.json | 4 +- .../examples/TransactionNodes_Create.json | 2 +- .../examples/TransactionNodes_Update.json | 2 +- .../blockchain/resource-manager/readme.az.md | 12 + .../blockchain/resource-manager/readme.cli.md | 32 +- .../resource-manager/readme.python.md | 12 +- .../assignmentOperation.json | 24 +- .../blueprintAssignment.json | 58 +- .../blueprintDefinition.json | 27 +- .../examples/ResourceGroupWithTags.json | 2 +- .../BlueprintAssignmentOperation_Get.json | 49 + .../BlueprintAssignmentOperation_List.json | 53 + ...ntAssignment_Create_SystemAssignedMSI.json | 79 + ...rintAssignment_Create_UserAssignedMSI.json | 87 + .../BlueprintAssignment_Delete.json | 49 + .../BlueprintAssignment_Get.json | 48 + .../BlueprintAssignment_List.json | 51 + .../WhoIsBlueprint_Action.json | 2 +- .../ARMTemplateArtifact_Create.json | 2 +- .../ARMTemplateArtifact_Delete.json | 2 +- .../ARMTemplateArtifact_Get.json | 2 +- .../managementGroupBPDef/Artifact_List.json | 2 +- .../Blueprint_Create.json | 2 +- .../Blueprint_Delete.json | 2 +- .../managementGroupBPDef/Blueprint_Get.json | 2 +- .../managementGroupBPDef/Blueprint_List.json | 2 +- .../PolicyAssignmentArtifact_Create.json | 2 +- .../PolicyAssignmentArtifact_Delete.json | 2 +- .../PolicyAssignmentArtifact_Get.json | 2 +- .../RoleAssignmentArtifact_Create.json | 2 +- .../RoleAssignmentArtifact_Delete.json | 2 +- .../RoleAssignmentArtifact_Get.json | 2 +- .../SealedARMTemplateArtifact_Get.json | 2 +- .../SealedArtifact_List.json | 2 +- .../SealedBlueprint_Delete.json | 2 +- .../SealedBlueprint_Get.json | 2 +- .../SealedBlueprint_List.json | 2 +- .../SealedBlueprint_Publish.json | 2 +- .../SealedPolicyAssignmentArtifact_Get.json | 2 +- .../SealedRoleAssignmentArtifact_Get.json | 2 +- .../BlueprintAssignmentOperation_Get.json | 2 +- .../BlueprintAssignmentOperation_List.json | 2 +- ...ntAssignment_Create_SystemAssignedMSI.json | 4 +- ...rintAssignment_Create_UserAssignedMSI.json | 4 +- .../BlueprintAssignment_Delete.json | 4 +- .../BlueprintAssignment_Get.json | 4 +- .../BlueprintAssignment_List.json | 4 +- .../WhoIsBlueprint_Action.json | 14 + .../ARMTemplateArtifact_Create.json | 2 +- .../ARMTemplateArtifact_Delete.json | 2 +- .../ARMTemplateArtifact_Get.json | 2 +- .../subscriptionBPDef/Artifact_List.json | 2 +- .../subscriptionBPDef/Blueprint_Create.json | 2 +- .../subscriptionBPDef/Blueprint_Delete.json | 2 +- .../subscriptionBPDef/Blueprint_Get.json | 2 +- .../subscriptionBPDef/Blueprint_List.json | 2 +- .../PolicyAssignmentArtifact_Create.json | 2 +- .../PolicyAssignmentArtifact_Delete.json | 2 +- .../PolicyAssignmentArtifact_Get.json | 2 +- .../RoleAssignmentArtifact_Create.json | 2 +- .../RoleAssignmentArtifact_Delete.json | 2 +- .../RoleAssignmentArtifact_Get.json | 2 +- .../SealedARMTemplateArtifact_Get.json | 2 +- .../SealedArtifact_List.json | 2 +- .../SealedBlueprint_Delete.json | 2 +- .../SealedBlueprint_Get.json | 2 +- .../SealedBlueprint_List.json | 2 +- .../SealedBlueprint_Publish.json | 2 +- .../SealedPolicyAssignmentArtifact_Get.json | 2 +- .../SealedRoleAssignmentArtifact_Get.json | 2 +- .../cdnwebapplicationfirewall.json | 15 +- .../examples/WafListPolicies.json | 4 +- .../examples/WafPatchPolicy.json | 4 +- .../examples/WafPolicyCreateOrUpdate.json | 8 +- .../examples/WafPolicyGet.json | 2 +- .../Microsoft.Cdn/stable/2019-06-15/cdn.json | 4605 +++ .../2019-06-15/cdnwebapplicationfirewall.json | 926 + .../examples/CheckNameAvailability.json | 18 + ...CheckNameAvailabilityWithSubscription.json | 19 + .../examples/CustomDomains_Create.json | 62 + .../examples/CustomDomains_Delete.json | 29 + .../CustomDomains_DisableCustomHttps.json | 28 + ...tomDomains_EnableCustomHttpsUsingBYOC.json | 42 + ...CustomHttpsUsingCDNManagedCertificate.json | 36 + .../examples/CustomDomains_Get.json | 27 + .../CustomDomains_ListByEndpoint.json | 30 + .../2019-06-15/examples/EdgeNodes_List.json | 107 + .../2019-06-15/examples/Endpoints_Create.json | 377 + .../2019-06-15/examples/Endpoints_Delete.json | 13 + .../2019-06-15/examples/Endpoints_Get.json | 48 + .../examples/Endpoints_ListByProfile.json | 49 + .../examples/Endpoints_ListResourceUsage.json | 29 + .../examples/Endpoints_LoadContent.json | 18 + .../examples/Endpoints_PurgeContent.json | 18 + .../2019-06-15/examples/Endpoints_Start.json | 85 + .../2019-06-15/examples/Endpoints_Stop.json | 85 + .../2019-06-15/examples/Endpoints_Update.json | 99 + .../Endpoints_ValidateCustomDomain.json | 21 + .../2019-06-15/examples/Operations_List.json | 93 + .../2019-06-15/examples/Origins_Get.json | 27 + .../examples/Origins_ListByEndpoint.json | 30 + .../2019-06-15/examples/Origins_Update.json | 48 + .../2019-06-15/examples/Profiles_Create.json | 64 + .../2019-06-15/examples/Profiles_Delete.json | 12 + .../examples/Profiles_GenerateSsoUri.json | 15 + .../2019-06-15/examples/Profiles_Get.json | 26 + .../2019-06-15/examples/Profiles_List.json | 42 + .../Profiles_ListByResourceGroup.json | 43 + .../examples/Profiles_ListResourceUsage.json | 22 + ...ofiles_ListSupportedOptimizationTypes.json | 18 + .../2019-06-15/examples/Profiles_Update.json | 51 + .../examples/ResourceUsage_List.json | 20 + .../2019-06-15/examples/ValidateProbe.json | 18 + .../examples/WafListManagedRuleSets.json | 53 + .../2019-06-15/examples/WafListPolicies.json | 265 + .../2019-06-15/examples/WafPatchPolicy.json | 272 + .../examples/WafPolicyCreateOrUpdate.json | 505 + .../2019-06-15/examples/WafPolicyDelete.json | 12 + .../2019-06-15/examples/WafPolicyGet.json | 139 + .../Microsoft.Cdn/stable/2019-12-31/cdn.json | 7 +- .../Microsoft.Cdn/stable/2020-03-31/cdn.json | 5486 +++ .../2020-03-31/cdnwebapplicationfirewall.json | 926 + .../examples/CheckNameAvailability.json | 18 + ...CheckNameAvailabilityWithSubscription.json | 19 + .../examples/CustomDomains_Create.json | 62 + .../examples/CustomDomains_Delete.json | 29 + .../CustomDomains_DisableCustomHttps.json | 28 + ...tomDomains_EnableCustomHttpsUsingBYOC.json | 43 + ...CustomHttpsUsingCDNManagedCertificate.json | 37 + .../examples/CustomDomains_Get.json | 27 + .../CustomDomains_ListByEndpoint.json | 30 + .../2020-03-31/examples/EdgeNodes_List.json | 107 + .../2020-03-31/examples/Endpoints_Create.json | 543 + .../2020-03-31/examples/Endpoints_Delete.json | 13 + .../2020-03-31/examples/Endpoints_Get.json | 70 + .../examples/Endpoints_ListByProfile.json | 77 + .../examples/Endpoints_ListResourceUsage.json | 29 + .../examples/Endpoints_LoadContent.json | 18 + .../examples/Endpoints_PurgeContent.json | 18 + .../2020-03-31/examples/Endpoints_Start.json | 83 + .../2020-03-31/examples/Endpoints_Stop.json | 83 + .../2020-03-31/examples/Endpoints_Update.json | 138 + .../Endpoints_ValidateCustomDomain.json | 21 + .../2020-03-31/examples/Operations_List.json | 93 + .../examples/OriginGroups_Create.json | 109 + .../examples/OriginGroups_Delete.json | 14 + .../2020-03-31/examples/OriginGroups_Get.json | 44 + .../examples/OriginGroups_ListByEndpoint.json | 41 + .../examples/OriginGroups_Update.json | 71 + .../2020-03-31/examples/Origins_Create.json | 93 + .../2020-03-31/examples/Origins_Delete.json | 14 + .../2020-03-31/examples/Origins_Get.json | 34 + .../examples/Origins_ListByEndpoint.json | 37 + .../2020-03-31/examples/Origins_Update.json | 69 + .../2020-03-31/examples/Profiles_Create.json | 64 + .../2020-03-31/examples/Profiles_Delete.json | 12 + .../examples/Profiles_GenerateSsoUri.json | 15 + .../2020-03-31/examples/Profiles_Get.json | 26 + .../2020-03-31/examples/Profiles_List.json | 42 + .../Profiles_ListByResourceGroup.json | 43 + .../examples/Profiles_ListResourceUsage.json | 22 + ...ofiles_ListSupportedOptimizationTypes.json | 18 + .../2020-03-31/examples/Profiles_Update.json | 51 + .../examples/ResourceUsage_List.json | 20 + .../2020-03-31/examples/ValidateProbe.json | 18 + .../examples/WafListManagedRuleSets.json | 53 + .../2020-03-31/examples/WafListPolicies.json | 265 + .../2020-03-31/examples/WafPatchPolicy.json | 272 + .../examples/WafPolicyCreateOrUpdate.json | 505 + .../2020-03-31/examples/WafPolicyDelete.json | 12 + .../2020-03-31/examples/WafPolicyGet.json | 139 + .../Microsoft.Cdn/stable/2020-04-15/cdn.json | 5518 +++ .../2020-04-15/cdnwebapplicationfirewall.json | 926 + .../examples/CheckNameAvailability.json | 18 + ...CheckNameAvailabilityWithSubscription.json | 19 + .../examples/CustomDomains_Create.json | 62 + .../examples/CustomDomains_Delete.json | 29 + .../CustomDomains_DisableCustomHttps.json | 28 + ...tomDomains_EnableCustomHttpsUsingBYOC.json | 43 + ...CustomHttpsUsingCDNManagedCertificate.json | 37 + .../examples/CustomDomains_Get.json | 27 + .../CustomDomains_ListByEndpoint.json | 30 + .../2020-04-15/examples/EdgeNodes_List.json | 107 + .../2020-04-15/examples/Endpoints_Create.json | 543 + .../2020-04-15/examples/Endpoints_Delete.json | 13 + .../2020-04-15/examples/Endpoints_Get.json | 70 + .../examples/Endpoints_ListByProfile.json | 77 + .../examples/Endpoints_ListResourceUsage.json | 29 + .../examples/Endpoints_LoadContent.json | 18 + .../examples/Endpoints_PurgeContent.json | 18 + .../2020-04-15/examples/Endpoints_Start.json | 83 + .../2020-04-15/examples/Endpoints_Stop.json | 83 + .../2020-04-15/examples/Endpoints_Update.json | 138 + .../Endpoints_ValidateCustomDomain.json | 21 + .../2020-04-15/examples/Operations_List.json | 93 + .../examples/OriginGroups_Create.json | 109 + .../examples/OriginGroups_Delete.json | 14 + .../2020-04-15/examples/OriginGroups_Get.json | 44 + .../examples/OriginGroups_ListByEndpoint.json | 41 + .../examples/OriginGroups_Update.json | 71 + .../2020-04-15/examples/Origins_Create.json | 108 + .../2020-04-15/examples/Origins_Delete.json | 14 + .../2020-04-15/examples/Origins_Get.json | 37 + .../examples/Origins_ListByEndpoint.json | 40 + .../2020-04-15/examples/Origins_Update.json | 76 + .../2020-04-15/examples/Profiles_Create.json | 64 + .../2020-04-15/examples/Profiles_Delete.json | 12 + .../examples/Profiles_GenerateSsoUri.json | 15 + .../2020-04-15/examples/Profiles_Get.json | 26 + .../2020-04-15/examples/Profiles_List.json | 42 + .../Profiles_ListByResourceGroup.json | 43 + .../examples/Profiles_ListResourceUsage.json | 22 + ...ofiles_ListSupportedOptimizationTypes.json | 18 + .../2020-04-15/examples/Profiles_Update.json | 51 + .../examples/ResourceUsage_List.json | 20 + .../2020-04-15/examples/ValidateProbe.json | 18 + .../examples/WafListManagedRuleSets.json | 53 + .../2020-04-15/examples/WafListPolicies.json | 265 + .../2020-04-15/examples/WafPatchPolicy.json | 272 + .../examples/WafPolicyCreateOrUpdate.json | 505 + .../2020-04-15/examples/WafPolicyDelete.json | 12 + .../2020-04-15/examples/WafPolicyGet.json | 139 + .../cdn/resource-manager/readme.go.md | 9 +- specification/cdn/resource-manager/readme.md | 26 +- .../cdn/resource-manager/readme.ruby.md | 34 +- .../2020-04-01-preview/changeanalysis.json | 519 + .../examples/ConfigurationProfileCreate.json | 26 + ...onfigurationProfileCreateWithIdentity.json | 35 + .../examples/ConfigurationProfileDelete.json | 11 + .../examples/ConfigurationProfileGet.json | 30 + .../examples/ConfigurationProfileUpdate.json | 36 + ...onfigurationProfileUpdateWithIdentity.json | 44 + .../examples/OperationsList.json | 37 + .../resource-manager/readme.csharp.md | 15 + .../resource-manager/readme.go.md | 19 + .../changeanalysis/resource-manager/readme.md | 140 + .../resource-manager/readme.python.md | 21 + .../resource-manager/readme.ruby.md | 19 + .../resource-manager/readme.typescript.md | 13 + .../preview/v1.0/AnomalyDetector.json | 54 +- .../preview/v3.0-preview/Ocr.json | 449 + .../examples/SuccessfulGetReadResult.json | 369 + .../examples/SuccessfulReadWithStream.json | 15 + .../examples/SuccessfulReadWithUrl.json | 15 + .../data-plane/ComputerVision/readme.go.md | 10 + .../data-plane/ComputerVision/readme.md | 9 + .../CustomVision/Training/readme.go.md | 1 + .../data-plane/Face/stable/v1.0/Face.json | 44 +- .../v1.0/examples/AddFaceListFaceFromUrl.json | 4 +- .../examples/AddLargeFaceListFaceFromUrl.json | 4 +- .../AddLargePersonGroupPersonFaceFromUrl.json | 4 +- .../AddPersonGroupPersonFaceFromUrl.json | 4 +- .../stable/v1.0/examples/DetectWithUrl.json | 4 +- .../preview/v2.0/FormRecognizer.json | 412 +- .../preview/v2.0/examples/CopyModel.json | 25 + .../v2.0/examples/CopyModelAuthorization.json | 20 + .../v2.0/examples/CopyOperationResult.json | 23 + .../CopyOperationResultWithErrors.json | 28 + .../preview/v2.0/examples/GetModels.json | 5 - .../v2.0/examples/GetModelsSummary.json | 20 + .../preview/v3.0/LUIS-Authoring.json | 786 +- .../SuccessfulImportLuApplicationRequest.json | 16 + .../SuccessfulImportV2ApplicationRequest.json | 307 + .../examples/SuccessfulAddLabelRequest.json | 1 + .../SuccessfulBatchAddLabelsRequest.json | 1 + ...uccessfulReviewLabeledExamplesRequest.json | 3 +- ...SuccessfulGetEntitySuggestionExamples.json | 3 +- ...uccessfulGetIntentsSuggestionExamples.json | 3 +- .../SuccessfulAddUserToAccessListRequest.json | 19 - ...ulGetApplicationUserAccessListRequest.json | 18 - ...essfulRemoveUserFromAccessListRequest.json | 19 - ...fulReplacesUsersFromAccessListRequest.json | 22 - ...sfulExportLuApplicationVersionRequest.json | 17 + ...sfulImportLuApplicationVersionRequest.json | 17 + ...sfulImportV2ApplicationVersionRequest.json | 308 + .../data-plane/QnAMaker/readme.python.md | 30 +- .../QnAMaker/stable/v4.0/QnAMaker.json | 2 +- .../v4.0/examples/SuccessfulDownloadKb.json | 372 +- .../stable/v4.0/examples/SuccessfulRepKb.json | 69 +- .../preview/v3.0-preview.1/TextAnalytics.json | 2 +- .../preview/v3.1-preview.1/TextAnalytics.json | 1347 + .../examples/SuccessfulEntitiesRequest.json | 91 + .../SuccessfulEntityLinkingRequest.json | 99 + .../examples/SuccessfulEntityPIIRequest.json | 78 + .../examples/SuccessfulKeyPhrasesRequest.json | 60 + .../examples/SuccessfulLanguagesRequest.json | 67 + .../examples/SuccessfulSentimentRequest.json | 323 + .../data-plane/TextAnalytics/readme.md | 22 +- .../stable/v3.0/TextAnalytics.json | 1127 + .../examples/SuccessfulEntitiesRequest.json | 91 + .../SuccessfulEntityLinkingRequest.json | 99 + .../examples/SuccessfulKeyPhrasesRequest.json | 60 + .../examples/SuccessfulLanguagesRequest.json | 61 + .../examples/SuccessfulSentimentRequest.json | 127 + .../stable/2017-04-18/cognitiveservices.json | 519 +- .../examples/CheckDomainAvailability.json | 2 +- .../examples/CheckSkuAvailability.json | 2 +- .../2017-04-18/examples/CreateAccount.json | 18 +- .../2017-04-18/examples/CreateAccountMin.json | 90 + .../2017-04-18/examples/DeleteAccount.json | 4 +- .../DeletePrivateEndpointConnection.json | 14 + .../2017-04-18/examples/GetAccount.json | 10 +- .../GetPrivateEndpointConnection.json | 29 + .../stable/2017-04-18/examples/GetUsages.json | 2 +- .../examples/ListAccountsByResourceGroup.json | 10 +- .../examples/ListAccountsBySubscription.json | 10 +- .../stable/2017-04-18/examples/ListKeys.json | 6 +- .../examples/ListPrivateLinkResources.json | 30 + .../stable/2017-04-18/examples/ListSkus.json | 6 +- .../PutPrivateEndpointConnection.json | 37 + .../2017-04-18/examples/RegenerateKey.json | 6 +- .../2017-04-18/examples/UpdateAccount.json | 6 +- .../resource-manager/readme.cli.md | 24 + .../resource-management/v1/privatelinks.json | 174 + .../stable/2015-06-15/compute.json | 4 +- .../stable/2016-03-30/compute.json | 4 +- .../stable/2017-03-30/compute.json | 12 +- .../stable/2017-12-01/compute.json | 12 +- .../stable/2018-04-01/compute.json | 12 +- .../stable/2018-06-01/compute.json | 12 +- .../stable/2018-10-01/compute.json | 14 +- .../stable/2019-03-01/compute.json | 14 +- .../2019-03-01/examples/UpdateImage.json | 2 +- .../stable/2019-04-01/skus.json | 2 +- .../stable/2019-07-01/compute.json | 16 +- .../2019-07-01/examples/UpdateImage.json | 2 +- .../stable/2019-07-01/gallery.json | 3 - .../stable/2019-12-01/compute.json | 11037 ++++++ ...eSetFromAnUnmanagedGeneralizedOsImage.json | 202 + ...geVmFromAnUnmanagedGeneralizedOsImage.json | 145 + ...formImageScaleSetWithUnmanagedOsDisks.json | 222 + ...ormImageVmWithUnmanagedOsAndDataDisks.json | 213 + .../CreateAScaleSetFromACustomImage.json | 204 + ...ateAScaleSetWithAMarketplaceImagePlan.json | 230 + ...ScaleSetWithAnAzureApplicationGateway.json | 230 + ...reateAScaleSetWithAnAzureLoadBalancer.json | 251 + .../CreateAScaleSetWithAutomaticRepairs.json | 227 + .../CreateAScaleSetWithBootDiagnostics.json | 233 + .../CreateAScaleSetWithDiffOsDisk.json | 239 + ...tWithDiffOsDiskUsingDiffDiskPlacement.json | 242 + ...teAScaleSetWithEmptyDataDisksOnEachVm.json | 270 + ...teAScaleSetWithPasswordAuthentication.json | 215 + .../CreateAScaleSetWithPremiumStorage.json | 215 + .../CreateAScaleSetWithSshAuthentication.json | 239 + ...SetWithTerminateScheduledEventEnabled.json | 233 + ...reateAScaleSetWithVMsInDifferentZones.json | 284 + ...ScalesetWithDiskEncryptionSetResource.json | 255 + .../examples/CreateAVmFromACustomImage.json | 144 + .../CreateAVmInAnAvailabilitySet.json | 162 + .../examples/CreateAVmWithADiffOsDisk.json | 177 + ...DiskUsingDiffDiskPlacementAsCacheDisk.json | 180 + ...kUsingDiffDiskPlacementAsResourceDisk.json | 180 + .../CreateAVmWithAMarketplaceImagePlan.json | 168 + .../CreateAVmWithBootDiagnostics.json | 171 + ...reateAVmWithDiskEncryptionSetResource.json | 229 + .../examples/CreateAVmWithEmptyDataDisks.json | 205 + .../CreateAVmWithPasswordAuthentication.json | 153 + .../examples/CreateAVmWithPremiumStorage.json | 153 + .../CreateAVmWithSshAuthentication.json | 177 + .../examples/CreateAnAvailabilitySet.json | 32 + .../examples/CreateAnImageFromABlob.json | 65 + ...AnImageFromABlobWithDiskEncryptionSet.json | 71 + .../CreateAnImageFromAManagedDisk.json | 71 + ...FromAManagedDiskWithDiskEncryptionSet.json | 77 + .../examples/CreateAnImageFromASnapshot.json | 71 + ...ageFromASnapshotWithDiskEncryptionSet.json | 77 + .../examples/CreateAnImageFromAVM.json | 70 + ...AnImageThatIncludesADataDiskFromABlob.json | 81 + ...ThatIncludesADataDiskFromAManagedDisk.json | 93 + ...ageThatIncludesADataDiskFromASnapshot.json | 93 + .../examples/CreateAnSshPublicKey.json | 36 + .../CreateOrUpdateADedicatedHost.json | 60 + .../CreateOrUpdateADedicatedHostGroup.json | 57 + ...reateOrUpdateAProximityPlacementGroup.json | 38 + ...ateVirtualMachineScaleSetVMExtensions.json | 60 + .../DeleteAProximityPlacementGroup.json | 12 + ...eteVirtualMachineScaleSetVMExtensions.json | 15 + .../examples/GeneralizeVirtualMachine.json | 11 + .../examples/GenerateSshKeyPair.json | 17 + .../examples/GetADedicatedHost.json | 58 + .../examples/GetADedicatedHostGroup.json | 33 + .../examples/GetAProximityPlacementGroup.json | 37 + .../examples/GetAnSshPublicKey.json | 23 + .../examples/GetInformationAboutAnImage.json | 50 + .../examples/GetVirtualMachine.json | 118 + .../GetVirtualMachineInstanceView.json | 99 + ...GetVirtualMachineScaleSetVMExtensions.json | 30 + .../ListAvailabilitySetsInASubscription.json | 85 + .../ListAvailableVmSizes_VirtualMachines.json | 32 + .../examples/ListImagesInAResourceGroup.json | 51 + .../examples/ListImagesInASubscription.json | 50 + ...ximityPlacementGroupsInAResourceGroup.json | 41 + ...oximityPlacementGroupsInASubscription.json | 40 + ...istVirtualMachineScaleSetVMExtensions.json | 49 + ...tualMachinesInASubscriptionByLocation.json | 127 + .../LogAnalyticsRequestRateByInterval.json | 24 + .../LogAnalyticsThrottledRequests.json | 24 + .../PatchAProximityPlacementGroup.json | 26 + .../examples/ReapplyVirtualMachine.json | 12 + .../examples/ReimageVirtualMachine.json | 15 + .../examples/SimulateEvictionOfVM.json | 11 + .../examples/SimulateEvictionOfVmssVM.json | 12 + .../2019-12-01/examples/UpdateImage.json | 107 + ...tachDataDiskUsingToBeDetachedProperty.json | 208 + ...ateVirtualMachineScaleSetVMExtensions.json | 41 + .../VMScaleSetExtensionRollingUpgrade.json | 12 + .../examples/VirtualMachineRunCommand.json | 34 + .../examples/VirtualMachineRunCommandGet.json | 38 + .../VirtualMachineRunCommandList.json | 85 + .../stable/2019-12-01/gallery.json | 9 +- .../stable/2019-12-01/runCommands.json | 467 + .../compute/resource-manager/readme.csharp.md | 19 + .../compute/resource-manager/readme.go.md | 19 + .../compute/resource-manager/readme.md | 12 +- .../compute/resource-manager/readme.nodejs.md | 16 + .../compute/resource-manager/readme.python.md | 117 +- .../compute/resource-manager/readme.ruby.md | 28 + .../resource-manager/readme.typescript.md | 16 + .../stable/2019-06-01/consumption.json | 2 +- .../stable/2019-10-01/consumption.json | 253 +- .../examples/ReservationDetails.json | 2 +- .../ReservationDetailsByBillingAccountId.json | 2 +- .../ReservationDetailsWithReservationId.json | 2 +- ...RecommendationDetailsByBillingAccount.json | 99 + ...RecommendationDetailsByBillingProfile.json | 66 + ...onRecommendationDetailsBySubscription.json | 70 + .../examples/ReservationSummariesDaily.json | 2 +- ...ionSummariesDailyWithBillingAccountId.json | 2 +- ...vationSummariesDailyWithReservationId.json | 2 +- ...ionTransactionsListByBillingAccountId.json | 2 +- .../containerregistry_build.json | 86 +- .../2019-12-01-preview/containerregistry.json | 2370 +- .../examples/ExportPipelineCreate.json | 72 + .../examples/ExportPipelineDelete.json | 14 + .../examples/ExportPipelineGet.json | 34 + .../examples/ExportPipelineList.json | 37 + .../examples/ImportPipelineCreate.json | 99 + .../examples/ImportPipelineDelete.json | 14 + .../examples/ImportPipelineGet.json | 45 + .../examples/ImportPipelineList.json | 48 + .../examples/PipelineRunCreate_Export.json | 86 + .../examples/PipelineRunCreate_Import.json | 85 + .../examples/PipelineRunDelete.json | 14 + .../examples/PipelineRunGet.json | 41 + .../examples/PipelineRunList.json | 72 + .../resource-manager/readme.java.md | 9 + .../resource-manager/readme.md | 2 +- .../resource-manager/readme.typescript.md | 2 +- .../examples/AgentPoolsCreate_Spot.json | 84 + .../examples/AgentPoolsCreate_Update.json | 85 + .../2020-03-01/examples/AgentPoolsDelete.json | 13 + .../2020-03-01/examples/AgentPoolsGet.json | 25 + ...entPoolsGetAgentPoolAvailableVersions.json | 32 + .../examples/AgentPoolsGetUpgradeProfile.json | 27 + .../2020-03-01/examples/AgentPoolsList.json | 28 + .../ManagedClustersCreate_Update.json | 249 + .../examples/ManagedClustersDelete.json | 12 + .../examples/ManagedClustersGet.json | 92 + .../ManagedClustersGetAccessProfile.json | 22 + .../ManagedClustersGetUpgradeProfile.json | 49 + .../examples/ManagedClustersList.json | 65 + .../ManagedClustersListByResourceGroup.json | 66 + ...edClustersListClusterCredentialResult.json | 20 + .../ManagedClustersResetAADProfile.json | 18 + ...dClustersResetServicePrincipalProfile.json | 16 + ...agedClustersRotateClusterCertificates.json | 12 + .../examples/ManagedClustersUpdateTags.json | 68 + .../stable/2020-03-01/managedClusters.json | 2592 ++ .../resource-manager/readme.cli.md | 20 +- .../resource-manager/readme.go.md | 11 + .../resource-manager/readme.java.md | 14 + .../resource-manager/readme.md | 30 +- .../resource-manager/readme.python.md | 12 + .../2019-02-02/examples/TableCreate.json | 22 + .../2019-02-02/examples/TableDelete.json | 10 + .../examples/TableDeleteEntity.json | 14 + .../preview/2019-02-02/examples/TableGet.json | 23 + .../examples/TableInsertEntity.json | 48 + .../2019-02-02/examples/TableMergeEntity.json | 27 + .../examples/TableQueryEntities.json | 30 + ...leQueryEntitiesWithPartitionAndRowKey.json | 31 + .../examples/TableUpdateEntity.json | 27 + .../preview/2019-02-02/table.json | 1908 ++ .../cosmos-db/data-plane/readme.go.md | 26 + specification/cosmos-db/data-plane/readme.md | 270 + .../cosmos-db/data-plane/readme.nodejs.md | 14 + .../cosmos-db/data-plane/readme.typescript.md | 12 + .../CosmosDBPrivateEndpointConnectionGet.json | 4 +- ...mosDBPrivateEndpointConnectionListGet.json | 8 +- ...smosDBPrivateEndpointConnectionUpdate.json | 4 +- .../CosmosDBPrivateLinkResourceGet.json | 3 + .../CosmosDBPrivateLinkResourceListGet.json | 3 + .../privateEndpointConnection.json | 8 + .../privateLinkResources.json | 35 +- .../stable/2014-04-01/cosmos-db.json | 2 +- .../stable/2015-04-08/cosmos-db.json | 2 +- .../stable/2015-11-06/cosmos-db.json | 2 +- .../stable/2016-03-19/cosmos-db.json | 2 +- .../stable/2016-03-31/cosmos-db.json | 2 +- .../stable/2019-08-01/cosmos-db.json | 2 +- .../CosmosDBNotebookWorkspaceCreate.json | 23 + .../CosmosDBNotebookWorkspaceDelete.json | 13 + .../CosmosDBNotebookWorkspaceGet.json | 22 + .../CosmosDBNotebookWorkspaceList.json | 25 + ...DBNotebookWorkspaceListConnectionInfo.json | 17 + ...BNotebookWorkspaceRegenerateAuthToken.json | 13 + .../CosmosDBNotebookWorkspaceStart.json | 13 + .../stable/2019-08-01/notebook.json | 461 + .../stable/2019-12-12/cosmos-db.json | 20 +- .../stable/2020-03-01/cosmos-db.json | 807 +- .../examples/CosmosDBDatabaseAccountGet.json | 14 + .../examples/CosmosDBDatabaseAccountList.json | 14 + .../CosmosDBDatabaseAccountPatch.json | 14 + .../examples/CosmosDBSqlContainerGet.json | 3 + .../cosmos-db/resource-manager/readme.go.md | 10 + .../cosmos-db/resource-manager/readme.java.md | 14 + .../cosmos-db/resource-manager/readme.md | 19 +- .../2019-03-01-preview/costmanagement.json | 81 + .../examples/CheckEligibilityPost.json | 35 + .../examples/ShowbackRulePut.json | 1 - .../stable/2019-10-01/costmanagement.json | 24 +- .../ExternalBillingAccountsDimensions.json | 72 +- .../ExternalBillingAccountsQuery.json | 162 +- .../ExternalSubscriptionsDimensions.json | 73 +- .../examples/ExternalSubscriptionsQuery.json | 137 +- .../stable/2019-11-01/costmanagement.json | 2210 +- .../examples/BillingAccountAlerts.json | 98 + .../examples/BillingAccountForecast.json | 117 + .../examples/BillingProfileAlerts.json | 99 + .../examples/BillingProfileForecast.json | 118 + .../2019-11-01/examples/DepartmentAlerts.json | 99 + .../examples/DepartmentForecast.json | 118 + .../examples/EnrollmentAccountAlerts.json | 99 + .../examples/EnrollmentAccountForecast.json | 118 + .../ExternalBillingAccountAlerts.json | 98 + .../ExternalBillingAccountForecast.json | 99 + .../ExternalBillingAccountsDimensions.json | 45 + .../ExternalBillingAccountsQuery.json | 99 + .../examples/ExternalSubscriptionAlerts.json | 98 + .../ExternalSubscriptionForecast.json | 82 + .../ExternalSubscriptionsDimensions.json | 45 + .../examples/ExternalSubscriptionsQuery.json | 78 + .../examples/InvoiceSectionAlerts.json | 100 + .../examples/InvoiceSectionForecast.json | 119 + .../2019-11-01/examples/PrivateView.json | 69 + .../examples/PrivateViewCreateOrUpdate.json | 185 + .../examples/PrivateViewDelete.json | 10 + .../2019-11-01/examples/PrivateViewList.json | 131 + .../examples/ResourceGroupAlerts.json | 99 + .../examples/ResourceGroupForecast.json | 97 + .../examples/SubscriptionAlerts.json | 98 + .../examples/SubscriptionForecast.json | 117 + .../examples/ViewByResourceGroup.json | 70 + .../ViewCreateOrUpdateByResourceGroup.json | 186 + .../examples/ViewDeleteByResourceGroup.json | 11 + .../examples/ViewListByResourceGroup.json | 132 + .../resource-manager/readme.az.md | 13 + .../resource-manager/readme.cli.md | 1 + .../resource-manager/readme.md | 46 +- .../resource-manager/readme.python.md | 29 + .../resource-manager/readme.python.md | 6 +- .../2018-09-01-preview/customproviders.json | 2 +- .../resource-manager/readme.az.md | 24 + .../resource-manager/readme.cli.md | 9 + .../resource-manager/readme.md | 35 + .../resource-manager/readme.python.md | 16 +- .../resource-manager/readme.trenton.md | 19 + .../stable/2019-08-01/databoxedge.json | 2520 +- .../2019-08-01/examples/ContainerDelete.json | 2 +- .../2019-08-01/examples/ContainerGet.json | 20 +- .../examples/ContainerListAllInDevice.json | 81 +- .../2019-08-01/examples/ContainerPut.json | 26 +- .../stable/2019-08-01/examples/ListSkus.json | 100 +- .../examples/NodeGetAllInDevice.json | 69 +- .../stable/2019-08-01/examples/OrderPut.json | 2 +- .../stable/2019-08-01/examples/SACPut.json | 2 +- .../examples/StorageAccountDelete.json | 2 +- .../examples/StorageAccountGet.json | 24 +- .../StorageAccountGetAllInDevice.json | 39 +- .../examples/StorageAccountPut.json | 34 +- .../2019-08-01/examples/TriggerPut.json | 2 +- .../stable/2019-08-01/examples/UserGet.json | 4 +- .../examples/UserGetAllInDevice.json | 8 +- .../stable/2019-08-01/examples/UserPut.json | 6 +- .../stable/2018-04-01/databricks.json | 86 +- .../2018-04-01/examples/OperationsList.json | 27 + .../2018-04-01/examples/WorkspaceCreate.json | 52 +- .../WorkspaceCreateWithParameters.json | 155 +- .../2018-04-01/examples/WorkspaceDelete.json | 1 + .../2018-04-01/examples/WorkspaceGet.json | 29 +- .../examples/WorkspaceGetParameters.json | 69 +- .../2018-04-01/examples/WorkspaceUpdate.json | 26 +- .../WorkspacesListByResourceGroup.json | 50 +- .../WorkspacesListBySubscription.json | 50 +- .../2018-06-01/entityTypes/Dataset.json | 59 + .../entityTypes/IntegrationRuntime.json | 25 + .../2018-06-01/entityTypes/LinkedService.json | 121 +- .../2018-06-01/entityTypes/Pipeline.json | 389 +- .../datashare/resource-manager/readme.az.md | 24 + .../datashare/resource-manager/readme.cli.md | 9 + .../datashare/resource-manager/readme.md | 1 + .../resource-manager/readme.python.md | 25 + .../2019-11-01-preview/deploymentmanager.json | 4 +- .../artifactsource_createorupdate.json | 70 +- ...actsource_createorupdate_artifactroot.json | 72 +- .../examples/artifactsource_delete.json | 22 +- .../examples/artifactsource_get.json | 46 +- .../examples/artifactsources_list.json | 82 +- .../examples/operations_list.json | 328 +- .../examples/rollout_createorupdate.json | 230 +- .../examples/rollout_delete.json | 22 +- .../examples/rollout_get.json | 228 +- .../examples/rollout_post_cancel.json | 228 +- .../examples/rollout_post_restart.json | 138 +- .../examples/rollouts_list.json | 194 +- .../examples/service_createorupdate.json | 56 +- .../examples/service_delete.json | 24 +- .../examples/service_get.json | 40 +- .../examples/services_list.json | 62 +- .../examples/servicetopologies_list.json | 56 +- .../servicetopology_createorupdate.json | 50 +- ...ology_createorupdate_noartifactsource.json | 46 +- .../examples/servicetopology_delete.json | 22 +- .../examples/servicetopology_get.json | 36 +- .../examples/serviceunit_createorupdate.json | 72 +- ...eunit_createorupdate_noartifactsource.json | 72 +- .../examples/serviceunit_delete.json | 26 +- .../examples/serviceunit_get.json | 50 +- .../examples/serviceunits_list.json | 80 +- .../examples/step_delete.json | 22 +- .../2019-11-01-preview/examples/step_get.json | 42 +- .../step_health_check_createorupdate.json | 284 +- .../examples/step_wait_createorupdate.json | 60 +- .../examples/steps_list.json | 68 +- .../desktopvirtualization.json | 3056 ++ .../ActiveApplication_ListBySessionHost.json | 52 + ...ionGroupAssignment_WorkspaceLevelList.json | 51 + .../examples/ApplicationGroup_Create.json | 61 + .../examples/ApplicationGroup_Delete.json | 28 + .../examples/ApplicationGroup_Get.json | 29 + .../ApplicationGroup_ListByResourceGroup.json | 50 + .../ApplicationGroup_ListBySubscription.json | 49 + .../examples/ApplicationGroup_Update.json | 39 + .../examples/Application_Create.json | 61 + .../examples/Application_Delete.json | 29 + .../examples/Application_Get.json | 30 + .../examples/Application_List.json | 50 + .../examples/Application_Update.json | 42 + .../examples/Desktop_Get.json | 24 + .../examples/Desktop_List.json | 27 + .../examples/Desktop_Update.json | 30 + .../examples/HostPool_Create.json | 89 + .../examples/HostPool_Delete.json | 39 + .../examples/HostPool_Get.json | 39 + .../examples/HostPool_List.json | 68 + .../HostPool_ListByResourceGroup.json | 69 + .../examples/HostPool_Update.json | 57 + .../examples/OperationDescription_List.json | 27 + .../examples/SessionHost_Delete.json | 32 + .../examples/SessionHost_Get.json | 32 + .../examples/SessionHost_List.json | 54 + .../examples/SessionHost_Update.json | 38 + .../examples/StartMenuItem_List.json | 42 + .../examples/UserSession_Delete.json | 26 + .../examples/UserSession_Disconnect_Post.json | 13 + .../examples/UserSession_Get.json | 26 + .../examples/UserSession_List.json | 41 + .../examples/UserSession_ListByHostPool.json | 41 + .../UserSession_SendMessage_Post.json | 17 + .../examples/Workspace_Create.json | 53 + .../examples/Workspace_Delete.json | 25 + .../examples/Workspace_Get.json | 26 + .../Workspace_ListByResourceGroup.json | 43 + .../Workspace_ListBySubscription.json | 42 + .../examples/Workspace_Update.json | 36 + .../desktopvirtualization.json | 3075 ++ .../ActiveApplication_ListBySessionHost.json | 52 + ...ionGroupAssignment_WorkspaceLevelList.json | 51 + .../examples/ApplicationGroup_Create.json | 61 + .../examples/ApplicationGroup_Delete.json | 28 + .../examples/ApplicationGroup_Get.json | 29 + .../ApplicationGroup_ListByResourceGroup.json | 50 + .../ApplicationGroup_ListBySubscription.json | 49 + .../examples/ApplicationGroup_Update.json | 39 + .../examples/Application_Create.json | 61 + .../examples/Application_Delete.json | 29 + .../examples/Application_Get.json | 30 + .../examples/Application_List.json | 50 + .../examples/Application_Update.json | 42 + .../examples/Desktop_Get.json | 24 + .../examples/Desktop_List.json | 27 + .../examples/Desktop_Update.json | 30 + .../examples/HostPool_Create.json | 89 + .../examples/HostPool_Delete.json | 39 + .../examples/HostPool_Get.json | 39 + .../examples/HostPool_List.json | 68 + .../HostPool_ListByResourceGroup.json | 69 + .../examples/HostPool_Update.json | 57 + .../examples/OperationDescription_List.json | 27 + .../examples/SessionHost_Delete.json | 32 + .../examples/SessionHost_Get.json | 32 + .../examples/SessionHost_List.json | 54 + .../examples/SessionHost_Update.json | 38 + .../examples/StartMenuItem_List.json | 42 + .../examples/UserSession_Delete.json | 26 + .../examples/UserSession_Disconnect_Post.json | 13 + .../examples/UserSession_Get.json | 26 + .../examples/UserSession_List.json | 41 + .../examples/UserSession_ListByHostPool.json | 41 + .../UserSession_SendMessage_Post.json | 17 + .../examples/Workspace_Create.json | 53 + .../examples/Workspace_Delete.json | 25 + .../examples/Workspace_Get.json | 26 + .../Workspace_ListByResourceGroup.json | 43 + .../Workspace_ListBySubscription.json | 42 + .../examples/Workspace_Update.json | 36 + .../desktopvirtualization.json | 3078 ++ .../ActiveApplication_ListBySessionHost.json | 52 + ...ionGroupAssignment_WorkspaceLevelList.json | 51 + .../examples/ApplicationGroup_Create.json | 61 + .../examples/ApplicationGroup_Delete.json | 28 + .../examples/ApplicationGroup_Get.json | 29 + .../ApplicationGroup_ListByResourceGroup.json | 50 + .../ApplicationGroup_ListBySubscription.json | 49 + .../examples/ApplicationGroup_Update.json | 39 + .../examples/Application_Create.json | 61 + .../examples/Application_Delete.json | 29 + .../examples/Application_Get.json | 30 + .../examples/Application_List.json | 50 + .../examples/Application_Update.json | 42 + .../examples/Desktop_Get.json | 24 + .../examples/Desktop_List.json | 27 + .../examples/Desktop_Update.json | 30 + .../examples/HostPool_Create.json | 89 + .../examples/HostPool_Delete.json | 39 + .../examples/HostPool_Get.json | 39 + .../examples/HostPool_List.json | 68 + .../HostPool_ListByResourceGroup.json | 69 + .../examples/HostPool_Update.json | 57 + .../examples/OperationDescription_List.json | 27 + .../examples/SessionHost_Delete.json | 32 + .../examples/SessionHost_Get.json | 32 + .../examples/SessionHost_List.json | 54 + .../examples/SessionHost_Update.json | 38 + .../examples/StartMenuItem_List.json | 42 + .../examples/UserSession_Delete.json | 26 + .../examples/UserSession_Disconnect_Post.json | 13 + .../examples/UserSession_Get.json | 26 + .../examples/UserSession_List.json | 41 + .../examples/UserSession_ListByHostPool.json | 41 + .../UserSession_SendMessage_Post.json | 17 + .../examples/Workspace_Create.json | 53 + .../examples/Workspace_Delete.json | 25 + .../examples/Workspace_Get.json | 26 + .../Workspace_ListByResourceGroup.json | 43 + .../Workspace_ListBySubscription.json | 42 + .../examples/Workspace_Update.json | 36 + .../resource-manager/readme.az.md | 12 + .../resource-manager/readme.cli.md | 8 + .../resource-manager/readme.csharp.md | 15 + .../resource-manager/readme.go.md | 46 + .../resource-manager/readme.java.md | 34 + .../resource-manager/readme.md | 132 + .../resource-manager/readme.node.md | 15 + .../resource-manager/readme.python.md | 27 + .../resource-manager/readme.ruby.md | 48 + .../resource-manager/readme.typescript.md | 13 + .../DPSCertificateCreateOrUpdate.json | 30 + .../examples/DPSCheckNameAvailability.json | 18 + .../stable/2020-01-01/examples/DPSCreate.json | 65 + .../stable/2020-01-01/examples/DPSDelete.json | 14 + .../examples/DPSDeleteCertificate.json | 14 + .../examples/DPSGenerateVerificationCode.json | 26 + .../stable/2020-01-01/examples/DPSGet.json | 33 + .../examples/DPSGetCertificate.json | 27 + .../examples/DPSGetCertificates.json | 30 + .../stable/2020-01-01/examples/DPSGetKey.json | 19 + .../examples/DPSGetOperationResult.json | 17 + .../2020-01-01/examples/DPSGetValidSku.json | 19 + .../examples/DPSListByResourceGroup.json | 55 + .../examples/DPSListBySubscription.json | 54 + .../2020-01-01/examples/DPSListKeys.json | 28 + .../2020-01-01/examples/DPSOperations.json | 293 + .../stable/2020-01-01/examples/DPSPatch.json | 41 + .../examples/DPSVerifyCertificate.json | 31 + .../stable/2020-01-01/iotdps.json | 2003 ++ .../resource-manager/readme.md | 10 + .../devops/resource-manager/readme.az.md | 24 + .../devops/resource-manager/readme.cli.md | 9 + .../devops/resource-manager/readme.md | 16 + .../2020-03-01-preview/digitaltwins.json | 6 +- .../examples/DigitalTwinsDelete_example.json | 3 - .../examples/DigitalTwinsGet_example.json | 3 - ...gitalTwinsListByResourceGroup_example.json | 6 - .../examples/DigitalTwinsList_example.json | 6 - .../examples/DigitalTwinsPatch_example.json | 3 - .../examples/DigitalTwinsPut_example.json | 11 +- .../digitaltwins/resource-manager/readme.md | 21 +- .../resource-manager/readme.python.md | 6 +- .../dns/resource-manager/readme.cli.md | 24 +- .../stable/2020-01-01/domainservices.json | 2 +- .../examples/CreateDomainService.json | 10 +- .../2020-01-01/examples/GetDomainService.json | 4 +- .../ListDomainServicesByResourceGroup.json | 4 +- .../ListDomainServicesBySubscription.json | 4 +- .../examples/UpdateDomainService.json | 10 +- .../2018-01-01/MachineLearningServices.json | 36 +- .../preview/2020-04-01-preview/EventGrid.json | 817 +- .../PrivateEndpointConnections_Update.json | 19 +- .../eventgrid/resource-manager/readme.java.md | 2 +- .../common/v1/definitions.json | 221 + .../AvailableClusterRegions-preview.json | 98 + .../2018-01-01-preview/Clusters-preview.json | 425 + .../2018-01-01-preview/EventHub-preview.json | 1972 -- .../examples/NameSpaces/EHNameSpaceList.json | 2 +- .../EHNameSpaceListByResourceGroup.json | 2 +- .../ipfilterrules-preview.json | 278 + .../namespaces-preview.json | 540 + .../networkrulessets-preview.json | 218 + .../operations-preview.json | 126 + .../quotaConfiguration-preview.json | 156 + .../virtualnetworkrules-preview.json | 262 + .../stable/2017-04-01/AuthorizationRules.json | 886 + .../2017-04-01/CheckNameAvailability.json | 132 + .../stable/2017-04-01/EventHub.json | 3045 -- .../stable/2017-04-01/consumergroups.json | 292 + .../2017-04-01/disasterRecoveryConfigs.json | 482 + .../stable/2017-04-01/eventhubs.json | 389 + .../stable/2017-04-01/namespaces.json | 533 + .../stable/2017-04-01/networkRuleSets.json | 283 + .../stable/2017-04-01/operations.json | 126 + .../stable/2017-04-01/sku.json | 128 + .../eventhub/resource-manager/readme.md | 45 +- .../resource-manager/readme.python.md | 40 +- .../stable/2020-01-01/frontdoor.json | 2 +- .../stable/2020-05-01/assets/frontdoor.svg | 668 + .../CheckFrontdoorNameAvailability.json | 18 + ...tdoorNameAvailabilityWithSubscription.json | 19 + .../2020-05-01/examples/FrontdoorCreate.json | 571 + .../2020-05-01/examples/FrontdoorDelete.json | 12 + .../examples/FrontdoorDisableHttps.json | 13 + .../examples/FrontdoorEnableHttps.json | 25 + .../FrontdoorFrontendEndpointGet.json | 25 + .../FrontdoorFrontendEndpointList.json | 28 + .../2020-05-01/examples/FrontdoorGet.json | 215 + .../2020-05-01/examples/FrontdoorList.json | 218 + .../2020-05-01/examples/FrontdoorListAll.json | 216 + .../examples/FrontdoorPurgeContent.json | 18 + .../examples/FrontdoorRulesEngineCreate.json | 281 + .../examples/FrontdoorRulesEngineDelete.json | 13 + .../examples/FrontdoorRulesEngineGet.json | 105 + .../examples/FrontdoorRulesEngineList.json | 108 + .../FrontdoorValidateCustomDomain.json | 20 + .../stable/2020-05-01/frontdoor.json | 2348 ++ .../stable/2020-05-01/frontdoor.specs.md | 21 + .../stable/2020-05-01/network.json | 167 + .../frontdoor/resource-manager/readme.go.md | 10 + .../frontdoor/resource-manager/readme.md | 26 +- .../stable/1.6/graphrbac.json | 7 + .../examples/HanaOperations_List.json | 33 + .../examples/ProviderInstances_Create.json | 44 + .../examples/ProviderInstances_Delete.json | 14 + .../examples/ProviderInstances_Get.json | 23 + .../examples/ProviderInstances_List.json | 36 + .../examples/SapMonitors_Create.json | 65 + .../examples/SapMonitors_Delete.json | 13 + .../examples/SapMonitors_Get.json | 31 + .../examples/SapMonitors_List.json | 52 + .../examples/SapMonitors_PatchTags.json | 36 + .../SapMonitors_PatchTags_Delete.json | 32 + .../2020-02-07-preview/hanaonazure.json | 866 + .../hanaonazure/resource-manager/readme.md | 13 +- .../2018-10-31-preview/dedicatedhsm.json | 137 +- .../examples/DedicatedHsm_CreateOrUpdate.json | 1 - .../examples/DedicatedHsm_OperationsList.json | 23 + .../resource-manager/readme.az.md | 12 + .../resource-manager/readme.cli.md | 8 + .../resource-manager/readme.python.md | 25 + .../hdinsight-kafka-rest-proxy/proxy.json | 11 + .../examples/GetClusterVirtualMachines.json | 43 + .../RestartVirtualMachinesOperation.json | 24 + .../2018-06-01-preview/virtualMachines.json | 210 + .../hdinsight/resource-manager/readme.md | 2 + .../2018-08-20-preview/healthcare-apis.json | 6 +- .../2019-09-16/examples/ServiceCreate.json | 22 + .../stable/2019-09-16/healthcare-apis.json | 61 +- .../resource-manager/readme.cli.md | 6 +- .../DataManagers_Create-PUT-example-41.json | 46 + ...DataManagers_Delete-DELETE-example-41.json | 24 + .../DataManagers_Get-GET-example-41.json | 36 + .../DataManagers_List-GET-example-21.json | 902 + ...rs_ListByResourceGroup-GET-example-31.json | 88 + .../DataManagers_Update-PATCH-example-43.json | 54 + .../DataServices_Get-GET-example-62.json | 40 + ...ices_ListByDataManager-GET-example-51.json | 109 + .../DataStoreTypes_Get-GET-example-182.json | 39 + .../DataStoreTypes_Get-GET-example-183.json | 40 + ...pes_ListByDataManager-GET-example-171.json | 104 + ...eateOrUpdate_DataSink-PUT-example-162.json | 69 + ...teOrUpdate_DataSource-PUT-example-162.json | 64 + ...es_Delete_DataSink-DELETE-example-161.json | 25 + ..._Delete_DataSource-DELETE-example-161.json | 25 + .../DataStores_Get-GET-example-161.json | 39 + .../DataStores_Get-GET-example-162.json | 38 + ...res_ListByDataManager-GET-example-151.json | 56 + ...nitions_CreateOrUpdate-PUT-example-83.json | 84 + ...bDefinitions_Delete-DELETE-example-81.json | 26 + .../JobDefinitions_Get-GET-example-81.json | 54 + ...ons_ListByDataManager-GET-example-191.json | 57 + ...ions_ListByDataService-GET-example-71.json | 58 + .../JobDefinitions_Run-POST-example-132.json | 50 + .../Jobs_Cancel-POST-example-111.json | 27 + .../examples/Jobs_Get-GET-example-101.json | 41 + ...obs_ListByDataManager-GET-example-201.json | 57 + ...obs_ListByDataService-GET-example-141.json | 58 + ...bs_ListByJobDefinition-GET-example-91.json | 59 + .../Jobs_Resume-POST-example-121.json | 27 + .../Operations_List-GET-example-11.json | 300 + .../PublicKeys_Get-GET-example-222.json | 42 + ...eys_ListByDataManager-GET-example-211.json | 45 + .../stable/2019-06-01/hybriddata.json | 2654 ++ .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.md | 20 + .../resource-manager/readme.ruby.md | 11 + .../2020-01-01-preview/connectedClusters.json | 690 + ...dClustersListClusterCredentialsResult.json | 20 + .../examples/CreateClusterExample.json | 72 + .../examples/DeleteClusterExample.json | 13 + .../examples/GetClusterExample.json | 35 + .../GetClustersByResourceGroupExample.json | 62 + .../GetClustersBySubscriptionExample.json | 61 + ...ListConnectedClusterOperationsExample.json | 41 + .../examples/UpdateClusterExample.json | 42 + .../resource-manager/readme.csharp.md | 16 + .../resource-manager/readme.go.md | 26 + .../resource-manager/readme.java.md | 34 + .../resource-manager/readme.md | 104 + .../resource-manager/readme.nodejs.md | 14 + .../resource-manager/readme.python.md | 27 + .../resource-manager/readme.ruby.md | 27 + .../examples/ListImageTemplatesByRg.json | 5 +- .../2020-02-14/examples/CancelImageBuild.json | 17 + .../examples/CreateImageTemplateLinux.json | 147 + .../examples/CreateImageTemplateWindows.json | 176 + .../examples/DeleteImageTemplate.json | 17 + .../2020-02-14/examples/GetImageTemplate.json | 55 + .../2020-02-14/examples/GetRunOutput.json | 22 + .../examples/ListImageTemplates.json | 109 + .../examples/ListImageTemplatesByRg.json | 118 + .../2020-02-14/examples/ListRunOutputs.json | 35 + .../2020-02-14/examples/RunImageTemplate.json | 17 + .../examples/UpdateImageTemplateTags.json | 68 + ...UpdateImageTemplateToRemoveIdentities.json | 62 + .../stable/2020-02-14/imagebuilder.json | 1451 + .../resource-manager/readme.go.md | 10 + .../imagebuilder/resource-manager/readme.md | 19 +- .../examples/devicecredentials_get.json | 2 +- ...devices_attestations_set_symmetricKey.json | 27 + .../devices_attestations_set_tpm.json | 25 + ...son => devices_attestations_set_x509.json} | 4 +- .../examples/modules_commands_send.json | 26 + .../examples/modules_commandshistory_get.json | 24 + .../modules_properties_components_get.json | 32 + .../modules_properties_components_set.json | 31 + .../examples/modules_properties_get.json | 33 + .../examples/modules_properties_update.json | 34 + .../examples/modules_telemetry_get.json | 23 + .../2019-10-28-preview/iotcentral.json | 426 +- .../examples/IotHub_ManualFailover.json | 15 + .../examples/checkNameAvailability.json | 20 + .../iothub_certificatescreateorupdate.json | 46 + .../examples/iothub_certificatesdelete.json | 14 + .../examples/iothub_certverify.json | 31 + .../examples/iothub_createOrUpdate.json | 226 + .../examples/iothub_createconsumergroup.json | 23 + .../2020-03-01/examples/iothub_delete.json | 164 + .../examples/iothub_deleteconsumergroup.json | 13 + ...othub_deleteprivateendpointconnection.json | 46 + .../examples/iothub_exportdevices.json | 23 + .../iothub_generateverificationcode.json | 26 + .../2020-03-01/examples/iothub_get.json | 96 + .../examples/iothub_getcertificate.json | 27 + .../examples/iothub_getconsumergroup.json | 23 + .../2020-03-01/examples/iothub_getjob.json | 20 + .../2020-03-01/examples/iothub_getkey.json | 19 + .../iothub_getprivateendpointconnection.json | 28 + .../iothub_getprivatelinkresources.json | 27 + .../2020-03-01/examples/iothub_getskus.json | 53 + .../examples/iothub_importdevices.json | 23 + .../2020-03-01/examples/iothub_listbyrg.json | 90 + .../examples/iothub_listbysubscription.json | 89 + .../examples/iothub_listcertificates.json | 30 + .../examples/iothub_listehgroups.json | 26 + .../2020-03-01/examples/iothub_listjobs.json | 23 + .../2020-03-01/examples/iothub_listkeys.json | 46 + ...iothub_listprivateendpointconnections.json | 29 + .../iothub_listprivatelinkresources.json | 30 + .../examples/iothub_operations.json | 328 + .../2020-03-01/examples/iothub_patch.json | 95 + .../examples/iothub_quotametrics.json | 26 + .../iothub_routingendpointhealth.json | 24 + .../2020-03-01/examples/iothub_stats.json | 17 + .../examples/iothub_testallroutes.json | 38 + .../examples/iothub_testnewroute.json | 52 + ...othub_updateprivateendpointconnection.json | 53 + .../2020-03-01/examples/iothub_usages.json | 25 + .../stable/2020-03-01/iothub.json | 4148 +++ .../iothub/resource-manager/readme.go.md | 10 + .../iothub/resource-manager/readme.java.md | 18 + .../iothub/resource-manager/readme.md | 14 +- .../iothub/resource-manager/readme.python.md | 12 + .../preview/7.2/backuprestore.json | 306 + .../preview/7.2/certificates.json | 2054 ++ .../preview/7.2/common.json | 73 + .../examples/BackupCertificate-example.json | 14 + .../7.2/examples/BackupKey-example.json | 14 + .../7.2/examples/BackupSecret-example.json | 14 + .../examples/CreateCertificate-example.json | 47 + .../7.2/examples/CreateKey-example.json | 54 + .../examples/DeleteCertificate-example.json | 65 + .../DeleteCertificateContacts-example.json | 25 + .../DeleteCertificateIssuer-example.json | 33 + .../DeleteCertificateOperation-example.json | 22 + .../7.2/examples/DeleteKey-example.json | 40 + .../DeleteRoleAssignments-example.json | 22 + .../7.2/examples/DeleteSecret-example.json | 23 + .../7.2/examples/FullBackup-example.json | 25 + .../examples/FullBackup-pending-example.json | 18 + .../7.2/examples/FullRestore-example.json | 27 + .../examples/FullRestore-pending-example.json | 17 + .../7.2/examples/GetCertificate-example.json | 63 + .../GetCertificateContacts-example.json | 25 + .../GetCertificateIssuer-example.json | 33 + .../GetCertificateIssuers-example.json | 27 + .../GetCertificateOperation-example.json | 22 + .../GetCertificatePolicy-example.json | 47 + .../GetCertificateVersions-example.json | 38 + .../7.2/examples/GetCertificates-example.json | 37 + .../GetDeletedCertificate-example.json | 66 + .../GetDeletedCertificates-example.json | 31 + .../7.2/examples/GetDeletedKey-example.json | 40 + .../7.2/examples/GetDeletedKeys-example.json | 29 + .../examples/GetDeletedSecret-example.json | 23 + .../examples/GetDeletedSecrets-example.json | 30 + .../preview/7.2/examples/GetKey-example.json | 38 + .../7.2/examples/GetKeyVersions-example.json | 27 + .../preview/7.2/examples/GetKeys-example.json | 26 + .../examples/GetRoleAssignments-example.json | 22 + .../7.2/examples/GetSecret-example.json | 22 + .../examples/GetSecretVersions-example.json | 25 + .../7.2/examples/GetSecrets-example.json | 25 + .../examples/ImportCertificate-example.json | 77 + .../7.2/examples/ImportKey-example.json | 52 + .../examples/ListRoleAssignments-example.json | 25 + .../examples/ListRoleDefinitions-example.json | 36 + .../examples/MergeCertificate-example.json | 68 + .../PurgeDeletedCertificate-example.json | 10 + .../7.2/examples/PurgeDeletedKey-example.json | 10 + .../examples/PurgeDeletedSecret-example.json | 10 + .../examples/PutRoleAssignments-example.json | 28 + .../RecoverDeletedCertificate-example.json | 62 + .../examples/RecoverDeletedKey-example.json | 37 + .../RecoverDeletedSecret-example.json | 20 + .../examples/RestoreCertificate-example.json | 70 + .../7.2/examples/RestoreKey-example.json | 37 + .../7.2/examples/RestoreSecret-example.json | 25 + .../SetCertificateContacts-example.json | 39 + .../SetCertificateIssuer-example.json | 50 + .../7.2/examples/SetSecret-example.json | 24 + .../examples/UpdateCertificate-example.json | 39 + .../UpdateCertificateIssuer-example.json | 40 + .../UpdateCertificateOperation-example.json | 25 + .../UpdateCertificatePolicy-example.json | 80 + .../7.2/examples/UpdateKey-example.json | 43 + .../7.2/examples/UpdateSecret-example.json | 34 + .../7.2/examples/backupStorageAccount.json | 15 + .../preview/7.2/examples/decrypt-example.json | 20 + .../7.2/examples/deleteStorageAccount.json | 32 + .../examples/deleteStorageSasDefinition.json | 29 + .../preview/7.2/examples/encrypt-example.json | 20 + .../examples/getDeletedStorageAccount.json | 32 + .../getDeletedStorageSasDefinition.json | 29 + .../7.2/examples/getStorageAccount.json | 29 + .../7.2/examples/getStorageSasDefinition.json | 26 + .../examples/listDeletedStorageAccount.json | 50 + .../listDeletedStorageSasDefinition.json | 43 + .../7.2/examples/listStorageAccount.json | 44 + .../examples/listStorageSasDefinition.json | 37 + .../7.2/examples/purgeStorageAccount.json | 12 + .../7.2/examples/recoverStorageAccount.json | 29 + .../examples/recoverStorageSasDefinition.json | 26 + .../examples/regenerateStorageAccountKey.json | 32 + .../7.2/examples/restoreStorageAccount.json | 32 + .../7.2/examples/setStorageAccount.json | 42 + .../7.2/examples/setStorageSasDefinition.json | 34 + .../preview/7.2/examples/sign-example.json | 20 + .../7.2/examples/unwrapKey-example.json | 20 + .../7.2/examples/updateStorageAccount.json | 33 + .../examples/updateStorageSasDefinition.json | 34 + .../preview/7.2/examples/verify-example.json | 20 + .../preview/7.2/examples/wrapKey-example.json | 20 + .../Microsoft.KeyVault/preview/7.2/index.md | 26 + .../Microsoft.KeyVault/preview/7.2/keys.json | 1732 + .../Microsoft.KeyVault/preview/7.2/rbac.json | 505 + .../preview/7.2/secrets.json | 861 + .../preview/7.2/storage.json | 1592 + .../stable/7.0/keyvault.json | 2 +- .../keyvault/data-plane/readme.go.md | 10 + specification/keyvault/data-plane/readme.md | 24 +- .../keyvault/data-plane/readme.python.md | 11 + .../preview/2018-02-14-preview/keyvault.json | 2 +- .../deletePrivateEndpointConnection.json | 41 +- .../getPrivateEndpointConnection.json | 48 +- .../examples/listPrivateLinkResources.json | 54 +- .../putPrivateEndpointConnection.json | 66 +- .../stable/2018-02-14/keyvault.json | 2 +- .../deletePrivateEndpointConnection.json | 41 +- .../getPrivateEndpointConnection.json | 48 +- .../examples/listPrivateLinkResources.json | 54 +- .../putPrivateEndpointConnection.json | 66 +- .../stable/2019-09-01/keyvault.json | 6 +- .../keyvault/resource-manager/readme.cli.md | 40 +- .../resource-manager/readme.python.md | 44 +- .../CreateSourceControlConfiguration.json | 88 + .../DeleteSourceControlConfiguration.json | 15 + .../GetSourceControlConfiguration.json | 42 + .../ListSourceControlConfiguration.json | 50 + .../examples/OperationsList.json | 38 + .../kubernetesconfiguration.json | 664 + .../resource-manager/readme.csharp.md | 15 + .../resource-manager/readme.go.md | 26 + .../resource-manager/readme.java.md | 33 + .../resource-manager/readme.md | 103 + .../resource-manager/readme.python.md | 27 + .../resource-manager/readme.ruby.md | 26 + .../resource-manager/readme.typescript.md | 14 + ...ationAccountAgreements_CreateOrUpdate.json | 24 +- .../IntegrationAccountAgreements_Get.json | 8 +- .../IntegrationAccountAgreements_List.json | 8 +- .../WorkflowTriggerHistories_Get.json | 38 +- .../examples/WorkflowTriggers_Run.json | 3 +- .../2019-05-01/examples/Workflows_Update.json | 57 +- .../Workflows_ValidateByLocation.json | 7 +- .../Workflows_ValidateByResourceGroup.json | 2 - .../stable/2019-05-01/logic.json | 229 +- .../logic/resource-manager/readme.az.md | 15 + .../logic/resource-manager/readme.cli.md | 9 + .../logic/resource-manager/readme.md | 1 + .../logic/resource-manager/readme.python.md | 25 + .../examples/createWorkspace.json | 8 + .../machineLearningServices.json | 1 - .../2020-02-18-preview/examples/ListSkus.json | 79 + .../examples/ListUsages.json | 400 + .../examples/ListVMSizesResult.json | 455 + .../examples/ListWorkspaceFeatures.json | 26 + .../ListWorkspaceQuotasByVMFamily.json | 415 + .../examples/amlComputeListNodes.json | 34 + .../examples/createBasicAKSCompute.json | 44 + .../examples/createBasicAmlCompute.json | 54 + .../createBasicDataFactoryCompute.json | 44 + .../examples/createComputeInstance.json | 52 + .../createComputeInstanceMinimal.json | 47 + .../examples/createWorkspace.json | 135 + .../examples/deleteCompute.json | 19 + .../examples/deleteWorkspace.json | 12 + .../examples/getAKSCompute.json | 25 + .../examples/getAmlCompute.json | 49 + .../examples/getComputeInstance.json | 52 + .../examples/getComputes.json | 41 + .../examples/getWorkspace.json | 42 + .../getWorkspacesByResourceGroup.json | 56 + .../examples/getWorkspacesBySubscription.json | 55 + .../examples/listKeysAKSCompute.json | 19 + .../examples/listWorkspaceKeys.json | 31 + .../examples/patchAmlCompute.json | 36 + .../examples/restartComputeInstance.json | 12 + .../examples/resyncWorkspaceKeys.json | 11 + .../examples/startComputeInstance.json | 12 + .../examples/stopComputeInstance.json | 12 + .../examples/updateAKSCompute.json | 54 + .../examples/updateAmlCompute.json | 57 + .../examples/updateQuota.json | 45 + .../examples/updateWorkspace.json | 42 + ...kspaceDeletePrivateEndpointConnection.json | 14 + ...workspaceGetPrivateEndpointConnection.json | 30 + .../workspaceListPrivateLinkResources.json | 28 + ...workspacePutPrivateEndpointConnection.json | 38 + .../machineLearningServices.json | 3603 ++ .../2018-11-19/examples/createWorkspace.json | 8 + .../2018-11-19/machineLearningServices.json | 1 - .../2019-05-01/examples/createWorkspace.json | 8 + .../2019-05-01/machineLearningServices.json | 1 - .../2019-06-01/examples/createWorkspace.json | 8 + .../2019-06-01/machineLearningServices.json | 1 - .../2019-11-01/examples/createWorkspace.json | 8 + .../2020-01-01/examples/createWorkspace.json | 8 + .../stable/2020-03-01/examples/ListSkus.json | 79 + .../2020-03-01/examples/ListUsages.json | 400 + .../examples/ListVMSizesResult.json | 455 + .../examples/ListWorkspaceFeatures.json | 26 + .../ListWorkspaceQuotasByVMFamily.json | 415 + .../examples/amlComputeListNodes.json | 34 + .../examples/createBasicAKSCompute.json | 44 + .../examples/createBasicAmlCompute.json | 54 + .../createBasicDataFactoryCompute.json | 44 + .../2020-03-01/examples/createWorkspace.json | 140 + .../2020-03-01/examples/deleteCompute.json | 19 + .../2020-03-01/examples/deleteWorkspace.json | 12 + .../2020-03-01/examples/getAKSCompute.json | 25 + .../2020-03-01/examples/getAmlCompute.json | 49 + .../2020-03-01/examples/getComputes.json | 41 + .../2020-03-01/examples/getWorkspace.json | 74 + .../getWorkspacesByResourceGroup.json | 56 + .../examples/getWorkspacesBySubscription.json | 55 + .../examples/listKeysAKSCompute.json | 19 + .../examples/listWorkspaceKeys.json | 31 + .../2020-03-01/examples/patchAmlCompute.json | 36 + .../examples/resyncWorkspaceKeys.json | 11 + .../2020-03-01/examples/updateAKSCompute.json | 54 + .../2020-03-01/examples/updateAmlCompute.json | 57 + .../2020-03-01/examples/updateQuota.json | 45 + .../2020-03-01/examples/updateWorkspace.json | 42 + ...kspaceDeletePrivateEndpointConnection.json | 14 + ...workspaceGetPrivateEndpointConnection.json | 30 + .../workspaceListPrivateLinkResources.json | 28 + ...workspacePutPrivateEndpointConnection.json | 38 + .../2020-03-01/machineLearningServices.json | 3316 ++ .../stable/2020-04-01/examples/ListSkus.json | 79 + .../2020-04-01/examples/ListUsages.json | 400 + .../examples/ListVMSizesResult.json | 455 + .../examples/ListWorkspaceFeatures.json | 26 + .../ListWorkspaceQuotasByVMFamily.json | 415 + .../examples/amlComputeListNodes.json | 34 + .../examples/createBasicAKSCompute.json | 44 + .../examples/createBasicAmlCompute.json | 60 + .../createBasicDataFactoryCompute.json | 44 + .../2020-04-01/examples/createWorkspace.json | 132 + .../2020-04-01/examples/deleteCompute.json | 19 + .../2020-04-01/examples/deleteWorkspace.json | 12 + .../2020-04-01/examples/getAKSCompute.json | 25 + .../2020-04-01/examples/getAmlCompute.json | 60 + .../2020-04-01/examples/getComputes.json | 41 + .../2020-04-01/examples/getWorkspace.json | 74 + .../getWorkspacesByResourceGroup.json | 56 + .../examples/getWorkspacesBySubscription.json | 55 + .../examples/listKeysAKSCompute.json | 19 + .../examples/listWorkspaceKeys.json | 31 + .../2020-04-01/examples/patchAmlCompute.json | 36 + .../examples/resyncWorkspaceKeys.json | 11 + .../2020-04-01/examples/updateAKSCompute.json | 53 + .../2020-04-01/examples/updateAmlCompute.json | 59 + .../2020-04-01/examples/updateQuota.json | 45 + .../2020-04-01/examples/updateWorkspace.json | 42 + ...kspaceDeletePrivateEndpointConnection.json | 14 + ...workspaceGetPrivateEndpointConnection.json | 30 + .../workspaceListPrivateLinkResources.json | 28 + ...workspacePutPrivateEndpointConnection.json | 38 + .../2020-04-01/machineLearningServices.json | 3341 ++ .../resource-manager/readme.az.md | 20 + .../resource-manager/readme.cli.md | 9 + .../resource-manager/readme.go.md | 29 + .../resource-manager/readme.md | 60 +- .../stable/2020-04-01/Maintenance.json | 1632 + .../examples/ApplyUpdates_CreateOrUpdate.json | 23 + .../ApplyUpdates_CreateOrUpdateParent.json | 25 + .../2020-04-01/examples/ApplyUpdates_Get.json | 24 + .../examples/ApplyUpdates_GetParent.json | 26 + ...nfigurationAssignments_CreateOrUpdate.json | 29 + ...ationAssignments_CreateOrUpdateParent.json | 31 + .../ConfigurationAssignments_Delete.json | 20 + ...ConfigurationAssignments_DeleteParent.json | 22 + .../ConfigurationAssignments_List.json | 27 + .../ConfigurationAssignments_ListParent.json | 29 + ...figurations_CreateOrUpdateForResource.json | 27 + ...nanceConfigurations_DeleteForResource.json | 20 + ...ntenanceConfigurations_GetForResource.json | 21 + .../MaintenanceConfigurations_List.json | 23 + ...nanceConfigurations_UpdateForResource.json | 27 + .../2020-04-01/examples/Operations_List.json | 12 + .../2020-04-01/examples/Updates_List.json | 28 + .../examples/Updates_ListParent.json | 30 + .../maintenance/resource-manager/readme.go.md | 10 + .../resource-manager/readme.java.md | 14 + .../maintenance/resource-manager/readme.md | 13 +- .../resource-manager/readme.nodejs.md | 2 +- .../resource-manager/readme.ruby.md | 13 +- .../stable/2018-06-01/examples/ServerGet.json | 19 +- .../2018-06-01/examples/ServerList.json | 42 +- .../examples/ServerListByResourceGroup.json | 23 +- .../stable/2018-06-01/mariadb.json | 127 + .../mariadb/resource-manager/readme.cli.md | 64 + .../mariadb/resource-manager/readme.go.md | 9 - .../stable/2019-12-01/Marketplace.json | 158 +- .../stable/2020-01-01/Marketplace.json | 171 +- .../examples/DeletePrivateStore.json | 2 +- .../examples/DeletePrivateStoreOffer.json | 4 +- .../2020-01-01/examples/GetPrivateStore.json | 20 + .../examples/GetPrivateStoreByName.json | 14 - .../examples/GetPrivateStoreOffer.json | 38 +- .../examples/GetPrivateStoreOffers.json | 69 +- .../2020-01-01/examples/GetPrivateStores.json | 20 +- .../examples/UpdatePrivateStore.json | 19 +- .../examples/UpdatePrivateStoreOffer.json | 49 +- .../marketplace/resource-manager/readme.md | 53 +- .../preview/2019-09-01-preview/Common.json | 2 +- .../preview/2020-02-01-preview/Common.json | 2 +- .../examples/SpatialAnchorsAccount/Patch.json | 3 +- .../examples/remote-rendering/Patch.json | 3 +- .../examples/spatial-anchors/Patch.json | 3 +- .../preview/2020-04-06-preview/common.json | 166 + ...eckNameAvailabilityForLocalUniqueness.json | 20 + .../proxy/ExposingAvailableOperations.json | 50 + .../examples/remote-rendering/Delete.json | 12 + .../examples/remote-rendering/Get.json | 23 + .../remote-rendering/GetByResourceGroup.json | 38 + .../remote-rendering/GetBySubscription.json | 37 + .../examples/remote-rendering/ListKeys.json | 16 + .../examples/remote-rendering/Patch.json | 33 + .../examples/remote-rendering/Put.json | 39 + .../remote-rendering/RegenerateKey.json | 19 + .../preview/2020-04-06-preview/proxy.json | 254 + .../2020-04-06-preview/remote-rendering.json | 428 + .../stable/2020-05-01/common.json | 166 + ...eckNameAvailabilityForLocalUniqueness.json | 20 + .../proxy/ExposingAvailableOperations.json | 50 + .../examples/spatial-anchors/Delete.json | 12 + .../examples/spatial-anchors/Get.json | 23 + .../spatial-anchors/GetByResourceGroup.json | 38 + .../spatial-anchors/GetBySubscription.json | 37 + .../examples/spatial-anchors/ListKeys.json | 16 + .../examples/spatial-anchors/Patch.json | 33 + .../examples/spatial-anchors/Put.json | 39 + .../spatial-anchors/RegenerateKey.json | 19 + .../stable/2020-05-01/proxy.json | 254 + .../stable/2020-05-01/spatial-anchors.json | 428 + .../mixedreality/resource-manager/readme.md | 40 +- ...OrUpdateSubscriptionDiagnosticSetting.json | 140 +- .../getSubscriptionDiagnosticSetting.json | 112 +- .../listSubscriptionDiagnosticSettings.json | 116 +- .../subscriptionDiagnosticsSettings_API.json | 680 +- .../PrivateLinkScopedResourceUpdate.json | 11 + .../examples/PrivateLinkScopesCreate.json | 12 + .../examples/PrivateLinkScopesUpdate.json | 14 + .../privateLinkScopes_API.json | 328 +- .../stable/2016-03-01/alertRules_API.json | 12 +- .../examples/createOrUpdateAlertRule.json | 1 - .../2016-03-01/examples/patchAlertRule.json | 1 - .../stable/2018-03-01/metricAlert_API.json | 9 +- .../monitor/resource-manager/readme.cli.md | 58 +- .../monitor/resource-manager/readme.md | 40 +- .../monitor/resource-manager/readme.python.md | 121 +- .../examples/ServerAdminCreateUpdate.json | 12 +- .../examples/ServerAdminDelete.json | 12 +- .../examples/ServerCreate.json | 2 + .../examples/ServerGet.json | 1 + .../examples/ServerList.json | 3 + .../preview/2017-12-01-preview/mysql.json | 184 +- .../examples/ServerAdminCreateUpdate.json | 12 +- .../examples/ServerAdminDelete.json | 12 +- .../2018-06-01-privatepreview/mysql.json | 180 +- .../examples/ServerAdminCreateUpdate.json | 45 + .../examples/ServerAdminDelete.json | 14 + .../2017-12-01/examples/ServerAdminGet.json | 24 + .../2017-12-01/examples/ServerAdminList.json | 27 + .../stable/2017-12-01/examples/ServerGet.json | 19 +- .../2017-12-01/examples/ServerList.json | 42 +- .../examples/ServerListByResourceGroup.json | 23 +- .../stable/2017-12-01/mysql.json | 471 +- .../stable/2020-01-01/DataEncryptionKeys.json | 330 + .../examples/ServerKeyCreateOrUpdate.json | 43 + .../2020-01-01/examples/ServerKeyDelete.json | 14 + .../2020-01-01/examples/ServerKeyGet.json | 24 + .../2020-01-01/examples/ServerKeyList.json | 27 + .../mysql/resource-manager/readme.go.md | 10 + .../mysql/resource-manager/readme.md | 18 +- .../stable/2019-05-01/netapp.json | 2 +- .../stable/2019-06-01/netapp.json | 2 +- .../stable/2019-07-01/netapp.json | 2 +- .../stable/2019-08-01/netapp.json | 2 +- .../stable/2019-10-01/netapp.json | 2 +- .../stable/2019-11-01/netapp.json | 46 +- .../netapp/resource-manager/readme.md | 15 + ...ilableSslOptionsPredefinedPoliciesGet.json | 69 +- .../stable/2018-07-01/publicIpPrefix.json | 15 +- .../stable/2018-08-01/publicIpPrefix.json | 15 +- .../stable/2018-10-01/publicIpPrefix.json | 15 +- .../stable/2018-11-01/publicIpPrefix.json | 15 +- ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + .../networkWatcherConnectionMonitorV1.json | 791 + ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + .../networkWatcherConnectionMonitorV1.json | 791 + ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + .../networkWatcherConnectionMonitorV1.json | 791 + .../stable/2019-11-01/applicationGateway.json | 2 +- .../stable/2019-12-01/applicationGateway.json | 2843 ++ .../2019-12-01/applicationSecurityGroup.json | 406 + .../2019-12-01/availableDelegations.json | 178 + .../2019-12-01/availableServiceAliases.json | 171 + .../stable/2019-12-01/azureFirewall.json | 1064 + .../2019-12-01/azureFirewallFqdnTag.json | 130 + .../stable/2019-12-01/bastionHost.json | 869 + .../2019-12-01/checkDnsAvailability.json | 96 + .../stable/2019-12-01/ddosCustomPolicy.json | 364 + .../stable/2019-12-01/ddosProtectionPlan.json | 436 + .../stable/2019-12-01/endpointService.json | 119 + ...tionGatewayAvailableRequestHeadersGet.json | 13 + ...ionGatewayAvailableResponseHeadersGet.json | 13 + ...ionGatewayAvailableServerVariablesGet.json | 13 + ...licationGatewayAvailableSslOptionsGet.json | 64 + ...ilableSslOptionsPredefinedPoliciesGet.json | 101 + ...vailableSslOptionsPredefinedPolicyGet.json | 48 + ...icationGatewayAvailableWafRuleSetsGet.json | 36 + .../ApplicationGatewayBackendHealthGet.json | 57 + .../ApplicationGatewayBackendHealthTest.json | 45 + .../examples/ApplicationGatewayCreate.json | 745 + .../examples/ApplicationGatewayDelete.json | 13 + .../examples/ApplicationGatewayGet.json | 259 + .../examples/ApplicationGatewayList.json | 125 + .../examples/ApplicationGatewayListAll.json | 124 + .../examples/ApplicationGatewayStart.json | 12 + .../examples/ApplicationGatewayStop.json | 12 + .../ApplicationGatewayUpdateTags.json | 148 + .../ApplicationSecurityGroupCreate.json | 38 + .../ApplicationSecurityGroupDelete.json | 13 + .../examples/ApplicationSecurityGroupGet.json | 22 + .../ApplicationSecurityGroupList.json | 35 + .../ApplicationSecurityGroupListAll.json | 34 + .../ApplicationSecurityGroupUpdateTags.json | 33 + .../AutoApprovedPrivateLinkServicesGet.json | 24 + ...edPrivateLinkServicesResourceGroupGet.json | 25 + .../AvailableDelegationsResourceGroupGet.json | 25 + .../AvailableDelegationsSubscriptionGet.json | 24 + .../AvailablePrivateEndpointTypesGet.json | 20 + ...ePrivateEndpointTypesResourceGroupGet.json | 21 + .../examples/AvailableServiceAliasesList.json | 27 + ...ableServiceAliasesListByResourceGroup.json | 28 + .../examples/AzureFirewallDelete.json | 13 + ...ureFirewallFqdnTagsListBySubscription.json | 28 + .../2019-12-01/examples/AzureFirewallGet.json | 177 + ...reFirewallGetWithAdditionalProperties.json | 179 + .../AzureFirewallGetWithIpGroups.json | 189 + .../AzureFirewallGetWithMgmtSubnet.json | 190 + .../examples/AzureFirewallGetWithZones.json | 181 + .../AzureFirewallListByResourceGroup.json | 193 + .../AzureFirewallListBySubscription.json | 192 + .../2019-12-01/examples/AzureFirewallPut.json | 497 + .../examples/AzureFirewallPutInHub.json | 103 + ...reFirewallPutWithAdditionalProperties.json | 507 + .../AzureFirewallPutWithIpGroups.json | 505 + .../AzureFirewallPutWithMgmtSubnet.json | 507 + .../examples/AzureFirewallPutWithZones.json | 509 + .../examples/AzureFirewallUpdateTags.json | 32 + .../examples/BastionHostDelete.json | 13 + .../2019-12-01/examples/BastionHostGet.json | 44 + .../BastionHostListByResourceGroup.json | 44 + .../BastionHostListBySubscription.json | 43 + .../2019-12-01/examples/BastionHostPut.json | 89 + .../examples/BastionSessionDelete.json | 36 + .../examples/BastionSessionsList.json | 30 + .../examples/BastionShareableLinkCreate.json | 45 + .../examples/BastionShareableLinkDelete.json | 26 + .../examples/BastionShareableLinkGet.json | 44 + .../examples/CheckDnsNameAvailability.json | 15 + .../CheckPrivateLinkServiceVisibility.json | 17 + ...eLinkServiceVisibilityByResourceGroup.json | 18 + .../examples/DdosCustomPolicyCreate.json | 58 + .../examples/DdosCustomPolicyDelete.json | 16 + .../examples/DdosCustomPolicyGet.json | 27 + .../examples/DdosCustomPolicyUpdateTags.json | 39 + .../examples/DdosProtectionPlanCreate.json | 40 + .../examples/DdosProtectionPlanDelete.json | 13 + .../examples/DdosProtectionPlanGet.json | 27 + .../examples/DdosProtectionPlanList.json | 45 + .../examples/DdosProtectionPlanListAll.json | 47 + .../DdosProtectionPlanUpdateTags.json | 33 + .../examples/DefaultSecurityRuleGet.json | 33 + .../examples/DefaultSecurityRuleList.json | 136 + .../examples/EndpointServicesList.json | 30 + .../ExpressRouteCircuitARPTableList.json | 25 + ...xpressRouteCircuitAuthorizationCreate.json | 36 + ...xpressRouteCircuitAuthorizationDelete.json | 14 + .../ExpressRouteCircuitAuthorizationGet.json | 24 + .../ExpressRouteCircuitAuthorizationList.json | 26 + .../ExpressRouteCircuitConnectionCreate.json | 74 + .../ExpressRouteCircuitConnectionDelete.json | 15 + .../ExpressRouteCircuitConnectionGet.json | 36 + .../ExpressRouteCircuitConnectionList.json | 54 + .../examples/ExpressRouteCircuitCreate.json | 84 + ...sRouteCircuitCreateOnExpressRoutePort.json | 79 + .../examples/ExpressRouteCircuitDelete.json | 13 + .../examples/ExpressRouteCircuitGet.json | 38 + ...xpressRouteCircuitListByResourceGroup.json | 91 + ...ExpressRouteCircuitListBySubscription.json | 90 + .../ExpressRouteCircuitPeeringCreate.json | 75 + .../ExpressRouteCircuitPeeringDelete.json | 14 + .../ExpressRouteCircuitPeeringGet.json | 61 + .../ExpressRouteCircuitPeeringList.json | 88 + .../ExpressRouteCircuitPeeringStats.json | 19 + .../ExpressRouteCircuitRouteTableList.json | 26 + ...ressRouteCircuitRouteTableSummaryList.json | 26 + .../examples/ExpressRouteCircuitStats.json | 18 + .../ExpressRouteCircuitUpdateTags.json | 48 + .../ExpressRouteConnectionCreate.json | 50 + .../ExpressRouteConnectionDelete.json | 14 + .../examples/ExpressRouteConnectionGet.json | 25 + .../examples/ExpressRouteConnectionList.json | 28 + ...sRouteCrossConnectionBgpPeeringCreate.json | 75 + ...sRouteCrossConnectionBgpPeeringDelete.json | 14 + ...ressRouteCrossConnectionBgpPeeringGet.json | 37 + ...essRouteCrossConnectionBgpPeeringList.json | 40 + .../ExpressRouteCrossConnectionGet.json | 32 + .../ExpressRouteCrossConnectionList.json | 33 + ...uteCrossConnectionListByResourceGroup.json | 34 + .../ExpressRouteCrossConnectionUpdate.json | 36 + ...ExpressRouteCrossConnectionUpdateTags.json | 41 + .../ExpressRouteCrossConnectionsArpTable.json | 25 + ...xpressRouteCrossConnectionsRouteTable.json | 33 + ...outeCrossConnectionsRouteTableSummary.json | 31 + .../examples/ExpressRouteGatewayCreate.json | 63 + .../examples/ExpressRouteGatewayDelete.json | 13 + .../examples/ExpressRouteGatewayGet.json | 25 + ...xpressRouteGatewayListByResourceGroup.json | 48 + ...ExpressRouteGatewayListBySubscription.json | 47 + .../examples/ExpressRouteLinkGet.json | 26 + .../examples/ExpressRouteLinkList.json | 42 + .../examples/ExpressRoutePortCreate.json | 112 + .../examples/ExpressRoutePortDelete.json | 13 + .../examples/ExpressRoutePortGet.json | 57 + .../examples/ExpressRoutePortList.json | 59 + .../ExpressRoutePortListByResourceGroup.json | 60 + .../examples/ExpressRoutePortUpdateLink.json | 120 + .../examples/ExpressRoutePortUpdateTags.json | 63 + .../ExpressRoutePortsLocationGet.json | 28 + .../ExpressRoutePortsLocationList.json | 26 + .../examples/ExpressRouteProviderList.json | 60 + .../examples/FirewallPolicyDelete.json | 13 + .../examples/FirewallPolicyGet.json | 32 + .../FirewallPolicyListByResourceGroup.json | 35 + .../FirewallPolicyListBySubscription.json | 34 + .../examples/FirewallPolicyPut.json | 69 + .../FirewallPolicyRuleGroupDelete.json | 14 + .../examples/FirewallPolicyRuleGroupGet.json | 50 + .../examples/FirewallPolicyRuleGroupList.json | 54 + .../examples/FirewallPolicyRuleGroupPut.json | 119 + ...irewallPolicyRuleGroupWithIpGroupsGet.json | 50 + ...rewallPolicyRuleGroupWithIpGroupsList.json | 54 + ...irewallPolicyRuleGroupWithIpGroupsPut.json | 119 + ...alWanVpnServerConfigurationVpnProfile.json | 18 + .../GetVirtualWanVpnServerConfigurations.json | 20 + .../HubVirtualNetworkConnectionGet.json | 26 + .../HubVirtualNetworkConnectionList.json | 41 + .../examples/InboundNatRuleCreate.json | 66 + .../examples/InboundNatRuleDelete.json | 14 + .../examples/InboundNatRuleGet.json | 32 + .../examples/InboundNatRuleList.json | 54 + .../2019-12-01/examples/IpGroupsCreate.json | 67 + .../2019-12-01/examples/IpGroupsDelete.json | 13 + .../2019-12-01/examples/IpGroupsGet.json | 32 + .../examples/IpGroupsListByResourceGroup.json | 55 + .../examples/IpGroupsListBySubscription.json | 54 + .../examples/IpGroupsUpdateTags.json | 42 + .../LoadBalancerBackendAddressPoolGet.json | 32 + .../LoadBalancerBackendAddressPoolList.json | 35 + .../examples/LoadBalancerCreate.json | 339 + .../LoadBalancerCreateStandardSku.json | 339 + .../LoadBalancerCreateWithInboundNatPool.json | 180 + .../LoadBalancerCreateWithOutboundRules.json | 423 + .../examples/LoadBalancerCreateWithZones.json | 348 + .../examples/LoadBalancerDelete.json | 13 + ...oadBalancerFrontendIPConfigurationGet.json | 38 + ...adBalancerFrontendIPConfigurationList.json | 41 + .../2019-12-01/examples/LoadBalancerGet.json | 139 + .../2019-12-01/examples/LoadBalancerList.json | 161 + .../examples/LoadBalancerListAll.json | 160 + .../LoadBalancerLoadBalancingRuleGet.json | 38 + .../LoadBalancerLoadBalancingRuleList.json | 41 + ...oadBalancerNetworkInterfaceListSimple.json | 59 + .../LoadBalancerNetworkInterfaceListVmss.json | 112 + .../examples/LoadBalancerOutboundRuleGet.json | 34 + .../LoadBalancerOutboundRuleList.json | 37 + .../examples/LoadBalancerProbeGet.json | 32 + .../examples/LoadBalancerProbeList.json | 35 + .../examples/LoadBalancerUpdateTags.json | 132 + .../examples/LocalNetworkGatewayCreate.json | 60 + .../examples/LocalNetworkGatewayDelete.json | 13 + .../examples/LocalNetworkGatewayGet.json | 29 + .../examples/LocalNetworkGatewayList.json | 49 + .../LocalNetworkGatewayUpdateTags.json | 38 + .../examples/NatGatewayCreateOrUpdate.json | 118 + .../2019-12-01/examples/NatGatewayDelete.json | 13 + .../2019-12-01/examples/NatGatewayGet.json | 40 + .../2019-12-01/examples/NatGatewayList.json | 71 + .../examples/NatGatewayListAll.json | 70 + .../examples/NatGatewayUpdateTags.json | 50 + .../examples/NetworkInterfaceCreate.json | 101 + .../examples/NetworkInterfaceDelete.json | 13 + .../NetworkInterfaceEffectiveNSGList.json | 71 + ...tworkInterfaceEffectiveRouteTableList.json | 71 + .../examples/NetworkInterfaceGet.json | 55 + .../NetworkInterfaceIPConfigurationGet.json | 45 + .../NetworkInterfaceIPConfigurationList.json | 31 + .../examples/NetworkInterfaceList.json | 92 + .../examples/NetworkInterfaceListAll.json | 91 + .../NetworkInterfaceLoadBalancerList.json | 139 + ...etworkInterfaceTapConfigurationCreate.json | 46 + ...etworkInterfaceTapConfigurationDelete.json | 14 + .../NetworkInterfaceTapConfigurationGet.json | 25 + .../NetworkInterfaceTapConfigurationList.json | 28 + .../examples/NetworkInterfaceUpdateTags.json | 56 + .../NetworkProfileCreateConfigOnly.json | 110 + .../examples/NetworkProfileDelete.json | 13 + .../examples/NetworkProfileGetConfigOnly.json | 84 + .../NetworkProfileGetWithContainerNic.json | 203 + .../examples/NetworkProfileList.json | 97 + .../examples/NetworkProfileListAll.json | 84 + .../examples/NetworkProfileUpdateTags.json | 58 + .../examples/NetworkSecurityGroupCreate.json | 233 + .../NetworkSecurityGroupCreateWithRule.json | 282 + .../examples/NetworkSecurityGroupDelete.json | 13 + .../examples/NetworkSecurityGroupGet.json | 136 + .../examples/NetworkSecurityGroupList.json | 231 + .../examples/NetworkSecurityGroupListAll.json | 230 + .../NetworkSecurityGroupRuleCreate.json | 57 + .../NetworkSecurityGroupRuleDelete.json | 14 + .../examples/NetworkSecurityGroupRuleGet.json | 28 + .../NetworkSecurityGroupRuleList.json | 31 + .../NetworkSecurityGroupUpdateTags.json | 130 + .../NetworkVirtualApplianceDelete.json | 13 + .../examples/NetworkVirtualApplianceGet.json | 57 + ...rkVirtualApplianceListByResourceGroup.json | 60 + ...orkVirtualApplianceListBySubscription.json | 59 + .../examples/NetworkVirtualAppliancePut.json | 133 + .../NetworkVirtualApplianceUpdateTags.json | 64 + ...tworkWatcherAvailableProvidersListGet.json | 68 + ...workWatcherAzureReachabilityReportGet.json | 82 + ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + ...tworkWatcherConnectionMonitorV2Create.json | 206 + .../NetworkWatcherConnectivityCheck.json | 80 + .../examples/NetworkWatcherCreate.json | 40 + .../examples/NetworkWatcherDelete.json | 12 + .../NetworkWatcherFlowLogConfigure.json | 35 + .../examples/NetworkWatcherFlowLogCreate.json | 73 + .../examples/NetworkWatcherFlowLogDelete.json | 13 + .../examples/NetworkWatcherFlowLogGet.json | 43 + .../examples/NetworkWatcherFlowLogList.json | 69 + .../NetworkWatcherFlowLogStatusQuery.json | 31 + .../examples/NetworkWatcherGet.json | 23 + .../examples/NetworkWatcherIpFlowVerify.json | 31 + .../examples/NetworkWatcherList.json | 37 + .../examples/NetworkWatcherListAll.json | 36 + ...WatcherNetworkConfigurationDiagnostic.json | 198 + .../examples/NetworkWatcherNextHopGet.json | 30 + .../NetworkWatcherPacketCaptureCreate.json | 56 + .../NetworkWatcherPacketCaptureDelete.json | 13 + .../NetworkWatcherPacketCaptureGet.json | 37 + ...etworkWatcherPacketCaptureQueryStatus.json | 31 + .../NetworkWatcherPacketCaptureStop.json | 13 + .../NetworkWatcherPacketCapturesList.json | 58 + .../NetworkWatcherSecurityGroupViewGet.json | 141 + .../examples/NetworkWatcherTopologyGet.json | 39 + .../NetworkWatcherTroubleshootGet.json | 71 + ...NetworkWatcherTroubleshootResultQuery.json | 67 + .../examples/NetworkWatcherUpdateTags.json | 32 + .../2019-12-01/examples/OperationList.json | 137 + .../examples/P2SVpnGatewayDelete.json | 13 + .../P2SVpnGatewayGenerateVpnProfile.json | 17 + .../2019-12-01/examples/P2SVpnGatewayGet.json | 53 + .../P2SVpnGatewayGetConnectionHealth.json | 54 + ...VpnGatewayGetConnectionHealthDetailed.json | 21 + .../examples/P2SVpnGatewayList.json | 97 + .../P2SVpnGatewayListByResourceGroup.json | 93 + .../2019-12-01/examples/P2SVpnGatewayPut.json | 118 + .../examples/P2SVpnGatewayUpdateTags.json | 61 + ...pnGatewaysDisconnectP2sVpnConnections.json | 18 + .../PeerExpressRouteCircuitConnectionGet.json | 32 + ...PeerExpressRouteCircuitConnectionList.json | 53 + .../examples/PrivateEndpointCreate.json | 98 + ...rivateEndpointCreateForManualApproval.json | 98 + .../examples/PrivateEndpointDelete.json | 13 + .../examples/PrivateEndpointGet.json | 46 + .../PrivateEndpointGetForManualApproval.json | 46 + .../examples/PrivateEndpointList.json | 83 + .../examples/PrivateEndpointListAll.json | 114 + .../examples/PrivateLinkServiceCreate.json | 155 + .../examples/PrivateLinkServiceDelete.json | 13 + ...erviceDeletePrivateEndpointConnection.json | 14 + .../examples/PrivateLinkServiceGet.json | 77 + ...nkServiceGetPrivateEndpointConnection.json | 25 + .../examples/PrivateLinkServiceList.json | 141 + .../examples/PrivateLinkServiceListAll.json | 142 + ...kServiceListPrivateEndpointConnection.json | 40 + ...erviceUpdatePrivateEndpointConnection.json | 37 + ...PublicIpAddressCreateCustomizedValues.json | 70 + .../PublicIpAddressCreateDefaults.json | 53 + .../examples/PublicIpAddressCreateDns.json | 60 + .../examples/PublicIpAddressDelete.json | 13 + .../examples/PublicIpAddressGet.json | 37 + .../examples/PublicIpAddressList.json | 60 + .../examples/PublicIpAddressListAll.json | 49 + .../examples/PublicIpAddressUpdateTags.json | 37 + .../PublicIpPrefixCreateCustomizedValues.json | 69 + .../PublicIpPrefixCreateDefaults.json | 59 + .../examples/PublicIpPrefixDelete.json | 13 + .../examples/PublicIpPrefixGet.json | 35 + .../examples/PublicIpPrefixList.json | 56 + .../examples/PublicIpPrefixListAll.json | 76 + .../examples/PublicIpPrefixUpdateTags.json | 40 + .../examples/RouteFilterCreate.json | 95 + .../examples/RouteFilterDelete.json | 13 + .../2019-12-01/examples/RouteFilterGet.json | 42 + .../2019-12-01/examples/RouteFilterList.json | 44 + .../RouteFilterListByResourceGroup.json | 45 + .../examples/RouteFilterRuleCreate.json | 53 + .../examples/RouteFilterRuleDelete.json | 14 + .../examples/RouteFilterRuleGet.json | 27 + .../RouteFilterRuleListByRouteFilter.json | 30 + .../examples/RouteFilterUpdateTags.json | 46 + .../2019-12-01/examples/RouteTableCreate.json | 39 + .../examples/RouteTableCreateWithRoute.json | 70 + .../2019-12-01/examples/RouteTableDelete.json | 13 + .../2019-12-01/examples/RouteTableGet.json | 33 + .../2019-12-01/examples/RouteTableList.json | 47 + .../examples/RouteTableListAll.json | 44 + .../examples/RouteTableRouteCreate.json | 39 + .../examples/RouteTableRouteDelete.json | 14 + .../examples/RouteTableRouteGet.json | 22 + .../examples/RouteTableRouteList.json | 34 + .../examples/RouteTableUpdateTags.json | 32 + .../examples/ServiceCommunityList.json | 56 + .../examples/ServiceEndpointPolicyCreate.json | 41 + ...iceEndpointPolicyCreateWithDefinition.json | 83 + ...ServiceEndpointPolicyDefinitionCreate.json | 52 + ...ServiceEndpointPolicyDefinitionDelete.json | 14 + .../ServiceEndpointPolicyDefinitionGet.json | 26 + .../ServiceEndpointPolicyDefinitionList.json | 29 + .../examples/ServiceEndpointPolicyDelete.json | 13 + .../examples/ServiceEndpointPolicyGet.json | 37 + .../examples/ServiceEndpointPolicyList.json | 63 + .../ServiceEndpointPolicyListAll.json | 64 + .../ServiceEndpointPolicyUpdateTags.json | 47 + .../2019-12-01/examples/ServiceTagsList.json | 88 + .../2019-12-01/examples/SubnetCreate.json | 36 + .../examples/SubnetCreateServiceEndpoint.json | 61 + .../examples/SubnetCreateWithDelegation.json | 60 + .../2019-12-01/examples/SubnetDelete.json | 14 + .../stable/2019-12-01/examples/SubnetGet.json | 21 + .../examples/SubnetGetWithDelegation.json | 33 + .../2019-12-01/examples/SubnetList.json | 32 + .../SubnetPrepareNetworkPolicies.json | 16 + .../SubnetUnprepareNetworkPolicies.json | 16 + .../stable/2019-12-01/examples/UsageList.json | 265 + .../examples/UsageListSpacedLocation.json | 335 + .../2019-12-01/examples/VirtualHubDelete.json | 13 + .../2019-12-01/examples/VirtualHubGet.json | 29 + .../2019-12-01/examples/VirtualHubList.json | 146 + .../VirtualHubListByResourceGroup.json | 147 + .../2019-12-01/examples/VirtualHubPut.json | 61 + .../VirtualHubRouteTableV2Delete.json | 14 + .../examples/VirtualHubRouteTableV2Get.json | 47 + .../examples/VirtualHubRouteTableV2List.json | 72 + .../examples/VirtualHubRouteTableV2Put.json | 113 + .../examples/VirtualHubUpdateTags.json | 39 + ...tualNetworkCheckIPAddressAvailability.json | 23 + .../examples/VirtualNetworkCreate.json | 56 + ...ualNetworkCreateServiceEndpointPolicy.json | 126 + .../VirtualNetworkCreateServiceEndpoints.json | 111 + .../examples/VirtualNetworkCreateSubnet.json | 82 + ...etworkCreateSubnetWithAddressPrefixes.json | 91 + ...tualNetworkCreateSubnetWithDelegation.json | 114 + ...irtualNetworkCreateWithBgpCommunities.json | 93 + .../examples/VirtualNetworkDelete.json | 13 + ...VirtualNetworkGatewayConnectionCreate.json | 133 + ...VirtualNetworkGatewayConnectionDelete.json | 13 + .../VirtualNetworkGatewayConnectionGet.json | 43 + ...lNetworkGatewayConnectionGetSharedKey.json | 15 + ...etworkGatewayConnectionResetSharedKey.json | 19 + ...lNetworkGatewayConnectionSetSharedKey.json | 23 + ...rkGatewayConnectionStartPacketCapture.json | 14 + ...onnectionStartPacketCaptureFilterData.json | 17 + ...orkGatewayConnectionStopPacketCapture.json | 17 + ...ualNetworkGatewayConnectionUpdateTags.json | 51 + .../VirtualNetworkGatewayConnectionsList.json | 73 + .../examples/VirtualNetworkGatewayDelete.json | 13 + ...etworkGatewayGenerateVpnClientPackage.json | 15 + ...rtualNetworkGatewayGenerateVpnProfile.json | 15 + .../examples/VirtualNetworkGatewayGet.json | 85 + ...tualNetworkGatewayGetAdvertisedRoutes.json | 15 + ...VirtualNetworkGatewayGetBGPPeerStatus.json | 14 + ...orkGatewayGetVpnClientIpsecParameters.json | 22 + ...NetworkGatewayGetVpnProfilePackageUrl.json | 14 + ...rkGatewayGetVpnclientConnectionHealth.json | 45 + .../VirtualNetworkGatewayLearnedRoutes.json | 14 + .../examples/VirtualNetworkGatewayList.json | 129 + .../examples/VirtualNetworkGatewayReset.json | 74 + ...NetworkGatewayResetVpnClientSharedKey.json | 12 + ...orkGatewaySetVpnClientIpsecParameters.json | 24 + ...rtualNetworkGatewayStartPacketCapture.json | 14 + ...rkGatewayStartPacketCaptureFilterData.json | 17 + ...irtualNetworkGatewayStopPacketCapture.json | 17 + ...rtualNetworkGatewaySupportedVpnDevice.json | 13 + .../examples/VirtualNetworkGatewayUpdate.json | 200 + .../VirtualNetworkGatewayUpdateTags.json | 83 + ...rkGatewayVpnDeviceConfigurationScript.json | 18 + ...rkGatewaysDisconnectP2sVpnConnections.json | 18 + ...VirtualNetworkGatewaysListConnections.json | 41 + .../examples/VirtualNetworkGet.json | 42 + ...tualNetworkGetResourceNavigationLinks.json | 28 + ...tualNetworkGetServiceAssociationLinks.json | 31 + ...lNetworkGetWithServiceAssociationLink.json | 69 + ...VirtualNetworkGetWithSubnetDelegation.json | 54 + .../examples/VirtualNetworkList.json | 64 + .../examples/VirtualNetworkListAll.json | 63 + .../examples/VirtualNetworkListUsage.json | 36 + .../examples/VirtualNetworkPeeringCreate.json | 66 + .../examples/VirtualNetworkPeeringDelete.json | 14 + .../examples/VirtualNetworkPeeringGet.json | 33 + .../examples/VirtualNetworkPeeringList.json | 56 + .../examples/VirtualNetworkTapCreate.json | 62 + .../examples/VirtualNetworkTapDelete.json | 13 + .../examples/VirtualNetworkTapGet.json | 32 + .../examples/VirtualNetworkTapList.json | 55 + .../examples/VirtualNetworkTapListAll.json | 54 + .../examples/VirtualNetworkTapUpdateTags.json | 40 + .../examples/VirtualNetworkUpdateTags.json | 39 + .../examples/VirtualRouterDelete.json | 13 + .../2019-12-01/examples/VirtualRouterGet.json | 38 + .../VirtualRouterListByResourceGroup.json | 41 + .../VirtualRouterListBySubscription.json | 40 + .../examples/VirtualRouterPeeringDelete.json | 14 + .../examples/VirtualRouterPeeringGet.json | 23 + .../examples/VirtualRouterPeeringList.json | 26 + .../examples/VirtualRouterPeeringPut.json | 41 + .../2019-12-01/examples/VirtualRouterPut.json | 77 + .../2019-12-01/examples/VirtualWANDelete.json | 13 + .../2019-12-01/examples/VirtualWANGet.json | 35 + .../2019-12-01/examples/VirtualWANList.json | 60 + .../VirtualWANListByResourceGroup.json | 61 + .../2019-12-01/examples/VirtualWANPut.json | 70 + .../examples/VirtualWANUpdateTags.json | 42 + .../VirtualWanSupportedSecurityProviders.json | 22 + .../examples/VmssNetworkInterfaceGet.json | 65 + .../VmssNetworkInterfaceIpConfigGet.json | 39 + .../VmssNetworkInterfaceIpConfigList.json | 42 + .../examples/VmssNetworkInterfaceList.json | 118 + .../2019-12-01/examples/VmssPublicIpGet.json | 34 + .../examples/VmssPublicIpListAll.json | 52 + .../examples/VmssVmNetworkInterfaceList.json | 68 + .../examples/VmssVmPublicIpList.json | 37 + .../examples/VpnConnectionDelete.json | 14 + .../2019-12-01/examples/VpnConnectionGet.json | 75 + .../examples/VpnConnectionList.json | 76 + .../2019-12-01/examples/VpnConnectionPut.json | 112 + .../2019-12-01/examples/VpnGatewayDelete.json | 13 + .../2019-12-01/examples/VpnGatewayGet.json | 94 + .../2019-12-01/examples/VpnGatewayList.json | 137 + .../VpnGatewayListByResourceGroup.json | 137 + .../2019-12-01/examples/VpnGatewayPut.json | 170 + .../2019-12-01/examples/VpnGatewayReset.json | 53 + .../examples/VpnGatewayUpdateTags.json | 60 + .../VpnServerConfigurationDelete.json | 13 + .../examples/VpnServerConfigurationGet.json | 69 + .../examples/VpnServerConfigurationList.json | 128 + ...erverConfigurationListByResourceGroup.json | 129 + .../examples/VpnServerConfigurationPut.json | 177 + .../VpnServerConfigurationUpdateTags.json | 73 + .../2019-12-01/examples/VpnSiteDelete.json | 13 + .../2019-12-01/examples/VpnSiteGet.json | 57 + .../examples/VpnSiteLinkConnectionGet.json | 37 + .../examples/VpnSiteLinkConnectionList.json | 38 + .../2019-12-01/examples/VpnSiteLinkGet.json | 30 + .../examples/VpnSiteLinkListByVpnSite.json | 50 + .../2019-12-01/examples/VpnSiteList.json | 88 + .../examples/VpnSiteListByResourceGroup.json | 88 + .../2019-12-01/examples/VpnSitePut.json | 137 + .../examples/VpnSiteUpdateTags.json | 48 + .../VpnSitesConfigurationDownload.json | 22 + .../examples/WafListAllPolicies.json | 102 + .../2019-12-01/examples/WafListPolicies.json | 103 + .../examples/WafPolicyCreateOrUpdate.json | 258 + .../2019-12-01/examples/WafPolicyDelete.json | 13 + .../2019-12-01/examples/WafPolicyGet.json | 140 + .../2019-12-01/expressRouteCircuit.json | 2507 ++ .../expressRouteCrossConnection.json | 1006 + .../2019-12-01/expressRouteGateway.json | 700 + .../stable/2019-12-01/expressRoutePort.json | 869 + .../stable/2019-12-01/firewallPolicy.json | 1059 + .../stable/2019-12-01/ipGroups.json | 422 + .../stable/2019-12-01/loadBalancer.json | 2058 ++ .../stable/2019-12-01/natGateway.json | 472 + .../stable/2019-12-01/network.json | 335 + .../stable/2019-12-01/networkInterface.json | 1522 + .../stable/2019-12-01/networkProfile.json | 622 + .../2019-12-01/networkSecurityGroup.json | 982 + .../2019-12-01/networkVirtualAppliance.json | 493 + .../stable/2019-12-01/networkWatcher.json | 4446 +++ .../stable/2019-12-01/operation.json | 271 + .../stable/2019-12-01/privateEndpoint.json | 572 + .../stable/2019-12-01/privateLinkService.json | 1068 + .../stable/2019-12-01/publicIpAddress.json | 545 + .../stable/2019-12-01/publicIpPrefix.json | 485 + .../stable/2019-12-01/routeFilter.json | 822 + .../stable/2019-12-01/routeTable.json | 755 + .../stable/2019-12-01/serviceCommunity.json | 158 + .../2019-12-01/serviceEndpointPolicy.json | 742 + .../stable/2019-12-01/serviceTags.json | 166 + .../stable/2019-12-01/usage.json | 160 + .../stable/2019-12-01/virtualNetwork.json | 1951 ++ .../2019-12-01/virtualNetworkGateway.json | 3680 ++ .../stable/2019-12-01/virtualNetworkTap.json | 426 + .../stable/2019-12-01/virtualRouter.json | 698 + .../stable/2019-12-01/virtualWan.json | 4608 +++ .../2019-12-01/vmssNetworkInterface.json | 374 + .../2019-12-01/vmssPublicIpAddress.json | 241 + .../2019-12-01/webapplicationfirewall.json | 743 + .../stable/2020-03-01/applicationGateway.json | 2847 ++ .../2020-03-01/applicationSecurityGroup.json | 406 + .../2020-03-01/availableDelegations.json | 178 + .../2020-03-01/availableServiceAliases.json | 171 + .../stable/2020-03-01/azureFirewall.json | 1071 + .../2020-03-01/azureFirewallFqdnTag.json | 130 + .../stable/2020-03-01/bastionHost.json | 869 + .../2020-03-01/checkDnsAvailability.json | 96 + .../stable/2020-03-01/ddosCustomPolicy.json | 364 + .../stable/2020-03-01/ddosProtectionPlan.json | 436 + .../stable/2020-03-01/endpointService.json | 119 + ...tionGatewayAvailableRequestHeadersGet.json | 13 + ...ionGatewayAvailableResponseHeadersGet.json | 13 + ...ionGatewayAvailableServerVariablesGet.json | 13 + ...licationGatewayAvailableSslOptionsGet.json | 64 + ...ilableSslOptionsPredefinedPoliciesGet.json | 101 + ...vailableSslOptionsPredefinedPolicyGet.json | 48 + ...icationGatewayAvailableWafRuleSetsGet.json | 36 + .../ApplicationGatewayBackendHealthGet.json | 57 + .../ApplicationGatewayBackendHealthTest.json | 45 + .../examples/ApplicationGatewayCreate.json | 745 + .../examples/ApplicationGatewayDelete.json | 13 + .../examples/ApplicationGatewayGet.json | 259 + .../examples/ApplicationGatewayList.json | 125 + .../examples/ApplicationGatewayListAll.json | 124 + .../examples/ApplicationGatewayStart.json | 12 + .../examples/ApplicationGatewayStop.json | 12 + .../ApplicationGatewayUpdateTags.json | 148 + .../ApplicationSecurityGroupCreate.json | 38 + .../ApplicationSecurityGroupDelete.json | 13 + .../examples/ApplicationSecurityGroupGet.json | 22 + .../ApplicationSecurityGroupList.json | 35 + .../ApplicationSecurityGroupListAll.json | 34 + .../ApplicationSecurityGroupUpdateTags.json | 33 + .../AutoApprovedPrivateLinkServicesGet.json | 24 + ...edPrivateLinkServicesResourceGroupGet.json | 25 + .../AvailableDelegationsResourceGroupGet.json | 25 + .../AvailableDelegationsSubscriptionGet.json | 24 + .../AvailablePrivateEndpointTypesGet.json | 20 + ...ePrivateEndpointTypesResourceGroupGet.json | 21 + .../examples/AvailableServiceAliasesList.json | 27 + ...ableServiceAliasesListByResourceGroup.json | 28 + .../examples/AzureFirewallDelete.json | 13 + ...ureFirewallFqdnTagsListBySubscription.json | 28 + .../2020-03-01/examples/AzureFirewallGet.json | 177 + ...reFirewallGetWithAdditionalProperties.json | 179 + .../AzureFirewallGetWithIpGroups.json | 189 + .../AzureFirewallGetWithMgmtSubnet.json | 190 + .../examples/AzureFirewallGetWithZones.json | 181 + .../AzureFirewallListByResourceGroup.json | 193 + .../AzureFirewallListBySubscription.json | 192 + .../2020-03-01/examples/AzureFirewallPut.json | 497 + .../examples/AzureFirewallPutInHub.json | 103 + ...reFirewallPutWithAdditionalProperties.json | 507 + .../AzureFirewallPutWithIpGroups.json | 505 + .../AzureFirewallPutWithMgmtSubnet.json | 507 + .../examples/AzureFirewallPutWithZones.json | 509 + .../examples/AzureFirewallUpdateTags.json | 33 + .../examples/BastionHostDelete.json | 13 + .../2020-03-01/examples/BastionHostGet.json | 44 + .../BastionHostListByResourceGroup.json | 44 + .../BastionHostListBySubscription.json | 43 + .../2020-03-01/examples/BastionHostPut.json | 89 + .../examples/BastionSessionDelete.json | 36 + .../examples/BastionSessionsList.json | 30 + .../examples/BastionShareableLinkCreate.json | 45 + .../examples/BastionShareableLinkDelete.json | 26 + .../examples/BastionShareableLinkGet.json | 44 + .../examples/CheckDnsNameAvailability.json | 15 + .../CheckPrivateLinkServiceVisibility.json | 17 + ...eLinkServiceVisibilityByResourceGroup.json | 18 + .../examples/DdosCustomPolicyCreate.json | 58 + .../examples/DdosCustomPolicyDelete.json | 16 + .../examples/DdosCustomPolicyGet.json | 27 + .../examples/DdosCustomPolicyUpdateTags.json | 39 + .../examples/DdosProtectionPlanCreate.json | 40 + .../examples/DdosProtectionPlanDelete.json | 13 + .../examples/DdosProtectionPlanGet.json | 27 + .../examples/DdosProtectionPlanList.json | 45 + .../examples/DdosProtectionPlanListAll.json | 47 + .../DdosProtectionPlanUpdateTags.json | 33 + .../examples/DefaultSecurityRuleGet.json | 33 + .../examples/DefaultSecurityRuleList.json | 136 + .../examples/EndpointServicesList.json | 30 + .../ExpressRouteCircuitARPTableList.json | 25 + ...xpressRouteCircuitAuthorizationCreate.json | 36 + ...xpressRouteCircuitAuthorizationDelete.json | 14 + .../ExpressRouteCircuitAuthorizationGet.json | 24 + .../ExpressRouteCircuitAuthorizationList.json | 26 + .../ExpressRouteCircuitConnectionCreate.json | 74 + .../ExpressRouteCircuitConnectionDelete.json | 15 + .../ExpressRouteCircuitConnectionGet.json | 36 + .../ExpressRouteCircuitConnectionList.json | 54 + .../examples/ExpressRouteCircuitCreate.json | 84 + ...sRouteCircuitCreateOnExpressRoutePort.json | 79 + .../examples/ExpressRouteCircuitDelete.json | 13 + .../examples/ExpressRouteCircuitGet.json | 38 + ...xpressRouteCircuitListByResourceGroup.json | 91 + ...ExpressRouteCircuitListBySubscription.json | 90 + .../ExpressRouteCircuitPeeringCreate.json | 75 + .../ExpressRouteCircuitPeeringDelete.json | 14 + .../ExpressRouteCircuitPeeringGet.json | 61 + .../ExpressRouteCircuitPeeringList.json | 88 + .../ExpressRouteCircuitPeeringStats.json | 19 + .../ExpressRouteCircuitRouteTableList.json | 26 + ...ressRouteCircuitRouteTableSummaryList.json | 26 + .../examples/ExpressRouteCircuitStats.json | 18 + .../ExpressRouteCircuitUpdateTags.json | 48 + .../ExpressRouteConnectionCreate.json | 50 + .../ExpressRouteConnectionDelete.json | 14 + .../examples/ExpressRouteConnectionGet.json | 25 + .../examples/ExpressRouteConnectionList.json | 28 + ...sRouteCrossConnectionBgpPeeringCreate.json | 75 + ...sRouteCrossConnectionBgpPeeringDelete.json | 14 + ...ressRouteCrossConnectionBgpPeeringGet.json | 37 + ...essRouteCrossConnectionBgpPeeringList.json | 40 + .../ExpressRouteCrossConnectionGet.json | 32 + .../ExpressRouteCrossConnectionList.json | 33 + ...uteCrossConnectionListByResourceGroup.json | 34 + .../ExpressRouteCrossConnectionUpdate.json | 36 + ...ExpressRouteCrossConnectionUpdateTags.json | 41 + .../ExpressRouteCrossConnectionsArpTable.json | 25 + ...xpressRouteCrossConnectionsRouteTable.json | 33 + ...outeCrossConnectionsRouteTableSummary.json | 31 + .../examples/ExpressRouteGatewayCreate.json | 63 + .../examples/ExpressRouteGatewayDelete.json | 13 + .../examples/ExpressRouteGatewayGet.json | 25 + ...xpressRouteGatewayListByResourceGroup.json | 48 + ...ExpressRouteGatewayListBySubscription.json | 47 + .../examples/ExpressRouteLinkGet.json | 26 + .../examples/ExpressRouteLinkList.json | 42 + .../examples/ExpressRoutePortCreate.json | 112 + .../examples/ExpressRoutePortDelete.json | 13 + .../examples/ExpressRoutePortGet.json | 57 + .../examples/ExpressRoutePortList.json | 59 + .../ExpressRoutePortListByResourceGroup.json | 60 + .../examples/ExpressRoutePortUpdateLink.json | 120 + .../examples/ExpressRoutePortUpdateTags.json | 63 + .../ExpressRoutePortsLocationGet.json | 28 + .../ExpressRoutePortsLocationList.json | 26 + .../examples/ExpressRouteProviderList.json | 60 + .../examples/FirewallPolicyDelete.json | 13 + .../examples/FirewallPolicyGet.json | 32 + .../FirewallPolicyListByResourceGroup.json | 35 + .../FirewallPolicyListBySubscription.json | 34 + .../examples/FirewallPolicyPut.json | 69 + .../FirewallPolicyRuleGroupDelete.json | 14 + .../examples/FirewallPolicyRuleGroupGet.json | 50 + .../examples/FirewallPolicyRuleGroupList.json | 54 + .../examples/FirewallPolicyRuleGroupPut.json | 119 + ...irewallPolicyRuleGroupWithIpGroupsGet.json | 50 + ...rewallPolicyRuleGroupWithIpGroupsList.json | 54 + ...irewallPolicyRuleGroupWithIpGroupsPut.json | 119 + ...alWanVpnServerConfigurationVpnProfile.json | 18 + .../GetVirtualWanVpnServerConfigurations.json | 20 + .../HubVirtualNetworkConnectionGet.json | 26 + .../HubVirtualNetworkConnectionList.json | 41 + .../examples/InboundNatRuleCreate.json | 66 + .../examples/InboundNatRuleDelete.json | 14 + .../examples/InboundNatRuleGet.json | 32 + .../examples/InboundNatRuleList.json | 54 + .../examples/IpAllocationCreate.json | 52 + .../examples/IpAllocationDelete.json | 13 + .../2020-03-01/examples/IpAllocationGet.json | 26 + .../2020-03-01/examples/IpAllocationList.json | 42 + .../IpAllocationListByResourceGroup.json | 43 + .../examples/IpAllocationUpdateTags.json | 37 + .../2020-03-01/examples/IpGroupsCreate.json | 67 + .../2020-03-01/examples/IpGroupsDelete.json | 13 + .../2020-03-01/examples/IpGroupsGet.json | 32 + .../examples/IpGroupsListByResourceGroup.json | 55 + .../examples/IpGroupsListBySubscription.json | 54 + .../examples/IpGroupsUpdateTags.json | 42 + .../LoadBalancerBackendAddressPoolGet.json | 32 + .../LoadBalancerBackendAddressPoolList.json | 35 + .../examples/LoadBalancerCreate.json | 339 + .../LoadBalancerCreateStandardSku.json | 339 + .../LoadBalancerCreateWithInboundNatPool.json | 180 + .../LoadBalancerCreateWithOutboundRules.json | 423 + .../examples/LoadBalancerCreateWithZones.json | 348 + .../examples/LoadBalancerDelete.json | 13 + ...oadBalancerFrontendIPConfigurationGet.json | 38 + ...adBalancerFrontendIPConfigurationList.json | 41 + .../2020-03-01/examples/LoadBalancerGet.json | 139 + .../2020-03-01/examples/LoadBalancerList.json | 161 + .../examples/LoadBalancerListAll.json | 160 + .../LoadBalancerLoadBalancingRuleGet.json | 38 + .../LoadBalancerLoadBalancingRuleList.json | 41 + ...oadBalancerNetworkInterfaceListSimple.json | 59 + .../LoadBalancerNetworkInterfaceListVmss.json | 112 + .../examples/LoadBalancerOutboundRuleGet.json | 34 + .../LoadBalancerOutboundRuleList.json | 37 + .../examples/LoadBalancerProbeGet.json | 32 + .../examples/LoadBalancerProbeList.json | 35 + .../examples/LoadBalancerUpdateTags.json | 132 + .../examples/LocalNetworkGatewayCreate.json | 60 + .../examples/LocalNetworkGatewayDelete.json | 13 + .../examples/LocalNetworkGatewayGet.json | 29 + .../examples/LocalNetworkGatewayList.json | 49 + .../LocalNetworkGatewayUpdateTags.json | 38 + .../examples/NatGatewayCreateOrUpdate.json | 118 + .../2020-03-01/examples/NatGatewayDelete.json | 13 + .../2020-03-01/examples/NatGatewayGet.json | 40 + .../2020-03-01/examples/NatGatewayList.json | 71 + .../examples/NatGatewayListAll.json | 70 + .../examples/NatGatewayUpdateTags.json | 50 + .../examples/NetworkInterfaceCreate.json | 101 + .../examples/NetworkInterfaceDelete.json | 13 + .../NetworkInterfaceEffectiveNSGList.json | 71 + ...tworkInterfaceEffectiveRouteTableList.json | 71 + .../examples/NetworkInterfaceGet.json | 55 + .../NetworkInterfaceIPConfigurationGet.json | 45 + .../NetworkInterfaceIPConfigurationList.json | 31 + .../examples/NetworkInterfaceList.json | 92 + .../examples/NetworkInterfaceListAll.json | 91 + .../NetworkInterfaceLoadBalancerList.json | 139 + ...etworkInterfaceTapConfigurationCreate.json | 46 + ...etworkInterfaceTapConfigurationDelete.json | 14 + .../NetworkInterfaceTapConfigurationGet.json | 25 + .../NetworkInterfaceTapConfigurationList.json | 28 + .../examples/NetworkInterfaceUpdateTags.json | 56 + .../NetworkProfileCreateConfigOnly.json | 110 + .../examples/NetworkProfileDelete.json | 13 + .../examples/NetworkProfileGetConfigOnly.json | 84 + .../NetworkProfileGetWithContainerNic.json | 203 + .../examples/NetworkProfileList.json | 97 + .../examples/NetworkProfileListAll.json | 84 + .../examples/NetworkProfileUpdateTags.json | 58 + .../examples/NetworkSecurityGroupCreate.json | 233 + .../NetworkSecurityGroupCreateWithRule.json | 282 + .../examples/NetworkSecurityGroupDelete.json | 13 + .../examples/NetworkSecurityGroupGet.json | 136 + .../examples/NetworkSecurityGroupList.json | 231 + .../examples/NetworkSecurityGroupListAll.json | 230 + .../NetworkSecurityGroupRuleCreate.json | 57 + .../NetworkSecurityGroupRuleDelete.json | 14 + .../examples/NetworkSecurityGroupRuleGet.json | 28 + .../NetworkSecurityGroupRuleList.json | 31 + .../NetworkSecurityGroupUpdateTags.json | 130 + .../NetworkVirtualApplianceDelete.json | 13 + .../examples/NetworkVirtualApplianceGet.json | 57 + ...rkVirtualApplianceListByResourceGroup.json | 60 + ...orkVirtualApplianceListBySubscription.json | 59 + .../examples/NetworkVirtualAppliancePut.json | 133 + .../NetworkVirtualApplianceUpdateTags.json | 64 + ...tworkWatcherAvailableProvidersListGet.json | 68 + ...workWatcherAzureReachabilityReportGet.json | 82 + ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + ...tworkWatcherConnectionMonitorV2Create.json | 206 + .../NetworkWatcherConnectivityCheck.json | 80 + .../examples/NetworkWatcherCreate.json | 40 + .../examples/NetworkWatcherDelete.json | 12 + .../NetworkWatcherFlowLogConfigure.json | 35 + .../examples/NetworkWatcherFlowLogCreate.json | 73 + .../examples/NetworkWatcherFlowLogDelete.json | 13 + .../examples/NetworkWatcherFlowLogGet.json | 43 + .../examples/NetworkWatcherFlowLogList.json | 69 + .../NetworkWatcherFlowLogStatusQuery.json | 31 + .../examples/NetworkWatcherGet.json | 23 + .../examples/NetworkWatcherIpFlowVerify.json | 31 + .../examples/NetworkWatcherList.json | 37 + .../examples/NetworkWatcherListAll.json | 36 + ...WatcherNetworkConfigurationDiagnostic.json | 198 + .../examples/NetworkWatcherNextHopGet.json | 30 + .../NetworkWatcherPacketCaptureCreate.json | 56 + .../NetworkWatcherPacketCaptureDelete.json | 13 + .../NetworkWatcherPacketCaptureGet.json | 37 + ...etworkWatcherPacketCaptureQueryStatus.json | 31 + .../NetworkWatcherPacketCaptureStop.json | 13 + .../NetworkWatcherPacketCapturesList.json | 58 + .../NetworkWatcherSecurityGroupViewGet.json | 141 + .../examples/NetworkWatcherTopologyGet.json | 39 + .../NetworkWatcherTroubleshootGet.json | 71 + ...NetworkWatcherTroubleshootResultQuery.json | 67 + .../examples/NetworkWatcherUpdateTags.json | 32 + .../2020-03-01/examples/OperationList.json | 137 + .../examples/P2SVpnGatewayDelete.json | 13 + .../P2SVpnGatewayGenerateVpnProfile.json | 17 + .../2020-03-01/examples/P2SVpnGatewayGet.json | 53 + .../P2SVpnGatewayGetConnectionHealth.json | 54 + ...VpnGatewayGetConnectionHealthDetailed.json | 21 + .../examples/P2SVpnGatewayList.json | 97 + .../P2SVpnGatewayListByResourceGroup.json | 93 + .../2020-03-01/examples/P2SVpnGatewayPut.json | 118 + .../examples/P2SVpnGatewayUpdateTags.json | 61 + ...pnGatewaysDisconnectP2sVpnConnections.json | 18 + .../PeerExpressRouteCircuitConnectionGet.json | 32 + ...PeerExpressRouteCircuitConnectionList.json | 53 + .../examples/PrivateEndpointCreate.json | 126 + ...rivateEndpointCreateForManualApproval.json | 126 + .../examples/PrivateEndpointDelete.json | 13 + .../PrivateEndpointDnsZoneGroupCreate.json | 90 + .../PrivateEndpointDnsZoneGroupDelete.json | 14 + .../PrivateEndpointDnsZoneGroupGet.json | 68 + .../PrivateEndpointDnsZoneGroupList.json | 80 + .../examples/PrivateEndpointGet.json | 60 + .../PrivateEndpointGetForManualApproval.json | 60 + .../examples/PrivateEndpointList.json | 111 + .../examples/PrivateEndpointListAll.json | 156 + .../examples/PrivateLinkServiceCreate.json | 155 + .../examples/PrivateLinkServiceDelete.json | 13 + ...erviceDeletePrivateEndpointConnection.json | 14 + .../examples/PrivateLinkServiceGet.json | 77 + ...nkServiceGetPrivateEndpointConnection.json | 25 + .../examples/PrivateLinkServiceList.json | 141 + .../examples/PrivateLinkServiceListAll.json | 142 + ...kServiceListPrivateEndpointConnection.json | 40 + ...erviceUpdatePrivateEndpointConnection.json | 37 + ...PublicIpAddressCreateCustomizedValues.json | 70 + .../PublicIpAddressCreateDefaults.json | 53 + .../examples/PublicIpAddressCreateDns.json | 60 + .../examples/PublicIpAddressDelete.json | 13 + .../examples/PublicIpAddressGet.json | 37 + .../examples/PublicIpAddressList.json | 60 + .../examples/PublicIpAddressListAll.json | 49 + .../examples/PublicIpAddressUpdateTags.json | 37 + .../PublicIpPrefixCreateCustomizedValues.json | 69 + .../PublicIpPrefixCreateDefaults.json | 59 + .../examples/PublicIpPrefixDelete.json | 13 + .../examples/PublicIpPrefixGet.json | 35 + .../examples/PublicIpPrefixList.json | 56 + .../examples/PublicIpPrefixListAll.json | 76 + .../examples/PublicIpPrefixUpdateTags.json | 40 + .../examples/RouteFilterCreate.json | 95 + .../examples/RouteFilterDelete.json | 13 + .../2020-03-01/examples/RouteFilterGet.json | 42 + .../2020-03-01/examples/RouteFilterList.json | 44 + .../RouteFilterListByResourceGroup.json | 45 + .../examples/RouteFilterRuleCreate.json | 53 + .../examples/RouteFilterRuleDelete.json | 14 + .../examples/RouteFilterRuleGet.json | 27 + .../RouteFilterRuleListByRouteFilter.json | 30 + .../examples/RouteFilterUpdateTags.json | 46 + .../2020-03-01/examples/RouteTableCreate.json | 39 + .../examples/RouteTableCreateWithRoute.json | 70 + .../2020-03-01/examples/RouteTableDelete.json | 13 + .../2020-03-01/examples/RouteTableGet.json | 33 + .../2020-03-01/examples/RouteTableList.json | 47 + .../examples/RouteTableListAll.json | 44 + .../examples/RouteTableRouteCreate.json | 39 + .../examples/RouteTableRouteDelete.json | 14 + .../examples/RouteTableRouteGet.json | 22 + .../examples/RouteTableRouteList.json | 34 + .../examples/RouteTableUpdateTags.json | 32 + .../SecurityPartnerProviderDelete.json | 13 + .../examples/SecurityPartnerProviderGet.json | 30 + ...ityPartnerProviderListByResourceGroup.json | 33 + ...rityPartnerProviderListBySubscription.json | 32 + .../examples/SecurityPartnerProviderPut.json | 60 + .../SecurityPartnerProviderUpdateTags.json | 32 + .../examples/ServiceCommunityList.json | 56 + .../examples/ServiceEndpointPolicyCreate.json | 41 + ...iceEndpointPolicyCreateWithDefinition.json | 83 + ...ServiceEndpointPolicyDefinitionCreate.json | 52 + ...ServiceEndpointPolicyDefinitionDelete.json | 14 + .../ServiceEndpointPolicyDefinitionGet.json | 26 + .../ServiceEndpointPolicyDefinitionList.json | 29 + .../examples/ServiceEndpointPolicyDelete.json | 13 + .../examples/ServiceEndpointPolicyGet.json | 37 + .../examples/ServiceEndpointPolicyList.json | 63 + .../ServiceEndpointPolicyListAll.json | 64 + .../ServiceEndpointPolicyUpdateTags.json | 47 + .../2020-03-01/examples/ServiceTagsList.json | 88 + .../2020-03-01/examples/SubnetCreate.json | 36 + .../examples/SubnetCreateServiceEndpoint.json | 61 + .../examples/SubnetCreateWithDelegation.json | 60 + .../2020-03-01/examples/SubnetDelete.json | 14 + .../stable/2020-03-01/examples/SubnetGet.json | 21 + .../examples/SubnetGetWithDelegation.json | 33 + .../2020-03-01/examples/SubnetList.json | 32 + .../SubnetPrepareNetworkPolicies.json | 16 + .../SubnetUnprepareNetworkPolicies.json | 16 + .../stable/2020-03-01/examples/UsageList.json | 265 + .../examples/UsageListSpacedLocation.json | 335 + .../2020-03-01/examples/VirtualHubDelete.json | 13 + .../2020-03-01/examples/VirtualHubGet.json | 29 + .../2020-03-01/examples/VirtualHubList.json | 146 + .../VirtualHubListByResourceGroup.json | 147 + .../2020-03-01/examples/VirtualHubPut.json | 61 + .../VirtualHubRouteTableV2Delete.json | 14 + .../examples/VirtualHubRouteTableV2Get.json | 47 + .../examples/VirtualHubRouteTableV2List.json | 72 + .../examples/VirtualHubRouteTableV2Put.json | 113 + .../examples/VirtualHubUpdateTags.json | 39 + ...tualNetworkCheckIPAddressAvailability.json | 23 + .../examples/VirtualNetworkCreate.json | 56 + ...ualNetworkCreateServiceEndpointPolicy.json | 126 + .../VirtualNetworkCreateServiceEndpoints.json | 111 + .../examples/VirtualNetworkCreateSubnet.json | 82 + ...etworkCreateSubnetWithAddressPrefixes.json | 91 + ...tualNetworkCreateSubnetWithDelegation.json | 114 + ...irtualNetworkCreateWithBgpCommunities.json | 93 + .../examples/VirtualNetworkDelete.json | 13 + ...VirtualNetworkGatewayConnectionCreate.json | 136 + ...VirtualNetworkGatewayConnectionDelete.json | 13 + .../VirtualNetworkGatewayConnectionGet.json | 44 + ...lNetworkGatewayConnectionGetSharedKey.json | 15 + ...etworkGatewayConnectionResetSharedKey.json | 19 + ...lNetworkGatewayConnectionSetSharedKey.json | 23 + ...rkGatewayConnectionStartPacketCapture.json | 14 + ...onnectionStartPacketCaptureFilterData.json | 17 + ...orkGatewayConnectionStopPacketCapture.json | 17 + ...ualNetworkGatewayConnectionUpdateTags.json | 51 + .../VirtualNetworkGatewayConnectionsList.json | 75 + .../examples/VirtualNetworkGatewayDelete.json | 13 + ...etworkGatewayGenerateVpnClientPackage.json | 15 + ...rtualNetworkGatewayGenerateVpnProfile.json | 15 + .../examples/VirtualNetworkGatewayGet.json | 88 + ...tualNetworkGatewayGetAdvertisedRoutes.json | 15 + ...VirtualNetworkGatewayGetBGPPeerStatus.json | 14 + ...orkGatewayGetVpnClientIpsecParameters.json | 22 + ...NetworkGatewayGetVpnProfilePackageUrl.json | 14 + ...rkGatewayGetVpnclientConnectionHealth.json | 45 + .../VirtualNetworkGatewayLearnedRoutes.json | 14 + .../examples/VirtualNetworkGatewayList.json | 132 + .../examples/VirtualNetworkGatewayReset.json | 74 + ...NetworkGatewayResetVpnClientSharedKey.json | 12 + ...orkGatewaySetVpnClientIpsecParameters.json | 24 + ...rtualNetworkGatewayStartPacketCapture.json | 14 + ...rkGatewayStartPacketCaptureFilterData.json | 17 + ...irtualNetworkGatewayStopPacketCapture.json | 17 + ...rtualNetworkGatewaySupportedVpnDevice.json | 13 + .../examples/VirtualNetworkGatewayUpdate.json | 220 + .../VirtualNetworkGatewayUpdateTags.json | 83 + ...rkGatewayVpnDeviceConfigurationScript.json | 18 + ...rkGatewaysDisconnectP2sVpnConnections.json | 18 + ...VirtualNetworkGatewaysListConnections.json | 41 + .../examples/VirtualNetworkGet.json | 42 + ...tualNetworkGetResourceNavigationLinks.json | 28 + ...tualNetworkGetServiceAssociationLinks.json | 31 + ...lNetworkGetWithServiceAssociationLink.json | 69 + ...VirtualNetworkGetWithSubnetDelegation.json | 54 + .../examples/VirtualNetworkList.json | 64 + .../examples/VirtualNetworkListAll.json | 63 + .../examples/VirtualNetworkListUsage.json | 36 + .../examples/VirtualNetworkPeeringCreate.json | 66 + .../examples/VirtualNetworkPeeringDelete.json | 14 + .../examples/VirtualNetworkPeeringGet.json | 33 + .../examples/VirtualNetworkPeeringList.json | 56 + .../examples/VirtualNetworkTapCreate.json | 62 + .../examples/VirtualNetworkTapDelete.json | 13 + .../examples/VirtualNetworkTapGet.json | 32 + .../examples/VirtualNetworkTapList.json | 55 + .../examples/VirtualNetworkTapListAll.json | 54 + .../examples/VirtualNetworkTapUpdateTags.json | 40 + .../examples/VirtualNetworkUpdateTags.json | 39 + .../examples/VirtualRouterDelete.json | 13 + .../2020-03-01/examples/VirtualRouterGet.json | 38 + .../VirtualRouterListByResourceGroup.json | 41 + .../VirtualRouterListBySubscription.json | 40 + .../examples/VirtualRouterPeeringDelete.json | 14 + .../examples/VirtualRouterPeeringGet.json | 23 + .../examples/VirtualRouterPeeringList.json | 26 + .../examples/VirtualRouterPeeringPut.json | 41 + .../2020-03-01/examples/VirtualRouterPut.json | 77 + .../2020-03-01/examples/VirtualWANDelete.json | 13 + .../2020-03-01/examples/VirtualWANGet.json | 35 + .../2020-03-01/examples/VirtualWANList.json | 60 + .../VirtualWANListByResourceGroup.json | 61 + .../2020-03-01/examples/VirtualWANPut.json | 70 + .../examples/VirtualWANUpdateTags.json | 42 + .../VirtualWanSupportedSecurityProviders.json | 22 + .../examples/VmssNetworkInterfaceGet.json | 65 + .../VmssNetworkInterfaceIpConfigGet.json | 39 + .../VmssNetworkInterfaceIpConfigList.json | 42 + .../examples/VmssNetworkInterfaceList.json | 118 + .../2020-03-01/examples/VmssPublicIpGet.json | 34 + .../examples/VmssPublicIpListAll.json | 52 + .../examples/VmssVmNetworkInterfaceList.json | 68 + .../examples/VmssVmPublicIpList.json | 37 + .../examples/VpnConnectionDelete.json | 14 + .../2020-03-01/examples/VpnConnectionGet.json | 75 + .../examples/VpnConnectionList.json | 76 + .../2020-03-01/examples/VpnConnectionPut.json | 112 + .../2020-03-01/examples/VpnGatewayDelete.json | 13 + .../2020-03-01/examples/VpnGatewayGet.json | 94 + .../2020-03-01/examples/VpnGatewayList.json | 137 + .../VpnGatewayListByResourceGroup.json | 137 + .../2020-03-01/examples/VpnGatewayPut.json | 170 + .../2020-03-01/examples/VpnGatewayReset.json | 53 + .../examples/VpnGatewayUpdateTags.json | 60 + .../VpnServerConfigurationDelete.json | 13 + .../examples/VpnServerConfigurationGet.json | 73 + .../examples/VpnServerConfigurationList.json | 132 + ...erverConfigurationListByResourceGroup.json | 129 + .../examples/VpnServerConfigurationPut.json | 190 + .../VpnServerConfigurationUpdateTags.json | 73 + .../2020-03-01/examples/VpnSiteDelete.json | 13 + .../2020-03-01/examples/VpnSiteGet.json | 57 + .../examples/VpnSiteLinkConnectionGet.json | 37 + .../examples/VpnSiteLinkConnectionList.json | 38 + .../2020-03-01/examples/VpnSiteLinkGet.json | 30 + .../examples/VpnSiteLinkListByVpnSite.json | 50 + .../2020-03-01/examples/VpnSiteList.json | 88 + .../examples/VpnSiteListByResourceGroup.json | 88 + .../2020-03-01/examples/VpnSitePut.json | 137 + .../examples/VpnSiteUpdateTags.json | 48 + .../VpnSitesConfigurationDownload.json | 22 + .../examples/WafListAllPolicies.json | 102 + .../2020-03-01/examples/WafListPolicies.json | 103 + .../examples/WafPolicyCreateOrUpdate.json | 258 + .../2020-03-01/examples/WafPolicyDelete.json | 13 + .../2020-03-01/examples/WafPolicyGet.json | 140 + .../2020-03-01/expressRouteCircuit.json | 2507 ++ .../expressRouteCrossConnection.json | 1006 + .../stable/2020-03-01/expressRoutePort.json | 869 + .../stable/2020-03-01/firewallPolicy.json | 1075 + .../stable/2020-03-01/ipAllocation.json | 454 + .../stable/2020-03-01/ipGroups.json | 422 + .../stable/2020-03-01/loadBalancer.json | 2058 ++ .../stable/2020-03-01/natGateway.json | 472 + .../stable/2020-03-01/network.json | 335 + .../stable/2020-03-01/networkInterface.json | 1522 + .../stable/2020-03-01/networkProfile.json | 622 + .../2020-03-01/networkSecurityGroup.json | 982 + .../2020-03-01/networkVirtualAppliance.json | 493 + .../stable/2020-03-01/networkWatcher.json | 4446 +++ .../stable/2020-03-01/operation.json | 271 + .../stable/2020-03-01/privateEndpoint.json | 963 + .../stable/2020-03-01/privateLinkService.json | 1068 + .../stable/2020-03-01/publicIpAddress.json | 545 + .../stable/2020-03-01/publicIpPrefix.json | 485 + .../stable/2020-03-01/routeFilter.json | 822 + .../stable/2020-03-01/routeTable.json | 755 + .../2020-03-01/securityPartnerProvider.json | 441 + .../stable/2020-03-01/serviceCommunity.json | 158 + .../2020-03-01/serviceEndpointPolicy.json | 742 + .../stable/2020-03-01/serviceTags.json | 166 + .../stable/2020-03-01/usage.json | 160 + .../stable/2020-03-01/virtualNetwork.json | 1965 ++ .../2020-03-01/virtualNetworkGateway.json | 3713 ++ .../stable/2020-03-01/virtualNetworkTap.json | 426 + .../stable/2020-03-01/virtualRouter.json | 698 + .../stable/2020-03-01/virtualWan.json | 5284 +++ .../2020-03-01/vmssNetworkInterface.json | 374 + .../2020-03-01/vmssPublicIpAddress.json | 241 + .../2020-03-01/webapplicationfirewall.json | 743 + .../stable/2020-04-01/applicationGateway.json | 2847 ++ .../2020-04-01/applicationSecurityGroup.json | 406 + .../2020-04-01/availableDelegations.json | 178 + .../2020-04-01/availableServiceAliases.json | 171 + .../stable/2020-04-01/azureFirewall.json | 1072 + .../2020-04-01/azureFirewallFqdnTag.json | 130 + .../stable/2020-04-01/bastionHost.json | 869 + .../2020-04-01/checkDnsAvailability.json | 96 + .../stable/2020-04-01/ddosCustomPolicy.json | 364 + .../stable/2020-04-01/ddosProtectionPlan.json | 436 + .../stable/2020-04-01/endpointService.json | 119 + ...tionGatewayAvailableRequestHeadersGet.json | 13 + ...ionGatewayAvailableResponseHeadersGet.json | 13 + ...ionGatewayAvailableServerVariablesGet.json | 13 + ...licationGatewayAvailableSslOptionsGet.json | 64 + ...ilableSslOptionsPredefinedPoliciesGet.json | 101 + ...vailableSslOptionsPredefinedPolicyGet.json | 48 + ...icationGatewayAvailableWafRuleSetsGet.json | 36 + .../ApplicationGatewayBackendHealthGet.json | 57 + .../ApplicationGatewayBackendHealthTest.json | 45 + .../examples/ApplicationGatewayCreate.json | 745 + .../examples/ApplicationGatewayDelete.json | 13 + .../examples/ApplicationGatewayGet.json | 259 + .../examples/ApplicationGatewayList.json | 125 + .../examples/ApplicationGatewayListAll.json | 124 + .../examples/ApplicationGatewayStart.json | 12 + .../examples/ApplicationGatewayStop.json | 12 + .../ApplicationGatewayUpdateTags.json | 148 + .../ApplicationSecurityGroupCreate.json | 38 + .../ApplicationSecurityGroupDelete.json | 13 + .../examples/ApplicationSecurityGroupGet.json | 22 + .../ApplicationSecurityGroupList.json | 35 + .../ApplicationSecurityGroupListAll.json | 34 + .../ApplicationSecurityGroupUpdateTags.json | 33 + .../AutoApprovedPrivateLinkServicesGet.json | 24 + ...edPrivateLinkServicesResourceGroupGet.json | 25 + .../AvailableDelegationsResourceGroupGet.json | 25 + .../AvailableDelegationsSubscriptionGet.json | 24 + .../AvailablePrivateEndpointTypesGet.json | 20 + ...ePrivateEndpointTypesResourceGroupGet.json | 21 + .../examples/AvailableServiceAliasesList.json | 27 + ...ableServiceAliasesListByResourceGroup.json | 28 + .../examples/AzureFirewallDelete.json | 13 + ...ureFirewallFqdnTagsListBySubscription.json | 28 + .../2020-04-01/examples/AzureFirewallGet.json | 177 + ...reFirewallGetWithAdditionalProperties.json | 179 + .../AzureFirewallGetWithIpGroups.json | 189 + .../AzureFirewallGetWithMgmtSubnet.json | 190 + .../examples/AzureFirewallGetWithZones.json | 181 + .../AzureFirewallListByResourceGroup.json | 193 + .../AzureFirewallListBySubscription.json | 192 + .../2020-04-01/examples/AzureFirewallPut.json | 497 + .../examples/AzureFirewallPutInHub.json | 103 + ...reFirewallPutWithAdditionalProperties.json | 507 + .../AzureFirewallPutWithIpGroups.json | 505 + .../AzureFirewallPutWithMgmtSubnet.json | 507 + .../examples/AzureFirewallPutWithZones.json | 509 + .../examples/AzureFirewallUpdateTags.json | 33 + .../examples/BastionHostDelete.json | 13 + .../2020-04-01/examples/BastionHostGet.json | 44 + .../BastionHostListByResourceGroup.json | 44 + .../BastionHostListBySubscription.json | 43 + .../2020-04-01/examples/BastionHostPut.json | 89 + .../examples/BastionSessionDelete.json | 36 + .../examples/BastionSessionsList.json | 30 + .../examples/BastionShareableLinkCreate.json | 45 + .../examples/BastionShareableLinkDelete.json | 26 + .../examples/BastionShareableLinkGet.json | 44 + .../examples/CheckDnsNameAvailability.json | 15 + .../CheckPrivateLinkServiceVisibility.json | 17 + ...eLinkServiceVisibilityByResourceGroup.json | 18 + .../examples/DdosCustomPolicyCreate.json | 58 + .../examples/DdosCustomPolicyDelete.json | 16 + .../examples/DdosCustomPolicyGet.json | 27 + .../examples/DdosCustomPolicyUpdateTags.json | 39 + .../examples/DdosProtectionPlanCreate.json | 40 + .../examples/DdosProtectionPlanDelete.json | 13 + .../examples/DdosProtectionPlanGet.json | 27 + .../examples/DdosProtectionPlanList.json | 45 + .../examples/DdosProtectionPlanListAll.json | 47 + .../DdosProtectionPlanUpdateTags.json | 33 + .../examples/DefaultSecurityRuleGet.json | 33 + .../examples/DefaultSecurityRuleList.json | 136 + .../examples/EndpointServicesList.json | 30 + .../ExpressRouteCircuitARPTableList.json | 25 + ...xpressRouteCircuitAuthorizationCreate.json | 36 + ...xpressRouteCircuitAuthorizationDelete.json | 14 + .../ExpressRouteCircuitAuthorizationGet.json | 24 + .../ExpressRouteCircuitAuthorizationList.json | 26 + .../ExpressRouteCircuitConnectionCreate.json | 74 + .../ExpressRouteCircuitConnectionDelete.json | 15 + .../ExpressRouteCircuitConnectionGet.json | 36 + .../ExpressRouteCircuitConnectionList.json | 54 + .../examples/ExpressRouteCircuitCreate.json | 84 + ...sRouteCircuitCreateOnExpressRoutePort.json | 79 + .../examples/ExpressRouteCircuitDelete.json | 13 + .../examples/ExpressRouteCircuitGet.json | 38 + ...xpressRouteCircuitListByResourceGroup.json | 91 + ...ExpressRouteCircuitListBySubscription.json | 90 + .../ExpressRouteCircuitPeeringCreate.json | 75 + .../ExpressRouteCircuitPeeringDelete.json | 14 + .../ExpressRouteCircuitPeeringGet.json | 61 + .../ExpressRouteCircuitPeeringList.json | 88 + .../ExpressRouteCircuitPeeringStats.json | 19 + .../ExpressRouteCircuitRouteTableList.json | 26 + ...ressRouteCircuitRouteTableSummaryList.json | 26 + .../examples/ExpressRouteCircuitStats.json | 18 + .../ExpressRouteCircuitUpdateTags.json | 48 + .../ExpressRouteConnectionCreate.json | 102 + .../ExpressRouteConnectionDelete.json | 14 + .../examples/ExpressRouteConnectionGet.json | 51 + .../examples/ExpressRouteConnectionList.json | 54 + ...sRouteCrossConnectionBgpPeeringCreate.json | 75 + ...sRouteCrossConnectionBgpPeeringDelete.json | 14 + ...ressRouteCrossConnectionBgpPeeringGet.json | 37 + ...essRouteCrossConnectionBgpPeeringList.json | 40 + .../ExpressRouteCrossConnectionGet.json | 32 + .../ExpressRouteCrossConnectionList.json | 33 + ...uteCrossConnectionListByResourceGroup.json | 34 + .../ExpressRouteCrossConnectionUpdate.json | 36 + ...ExpressRouteCrossConnectionUpdateTags.json | 41 + .../ExpressRouteCrossConnectionsArpTable.json | 25 + ...xpressRouteCrossConnectionsRouteTable.json | 33 + ...outeCrossConnectionsRouteTableSummary.json | 31 + .../examples/ExpressRouteGatewayCreate.json | 63 + .../examples/ExpressRouteGatewayDelete.json | 13 + .../examples/ExpressRouteGatewayGet.json | 25 + ...xpressRouteGatewayListByResourceGroup.json | 73 + ...ExpressRouteGatewayListBySubscription.json | 72 + .../examples/ExpressRouteLinkGet.json | 26 + .../examples/ExpressRouteLinkList.json | 42 + .../examples/ExpressRoutePortCreate.json | 112 + .../examples/ExpressRoutePortDelete.json | 13 + .../examples/ExpressRoutePortGet.json | 57 + .../examples/ExpressRoutePortList.json | 59 + .../ExpressRoutePortListByResourceGroup.json | 60 + .../examples/ExpressRoutePortUpdateLink.json | 120 + .../examples/ExpressRoutePortUpdateTags.json | 63 + .../ExpressRoutePortsLocationGet.json | 28 + .../ExpressRoutePortsLocationList.json | 26 + .../examples/ExpressRouteProviderList.json | 60 + .../examples/FirewallPolicyDelete.json | 13 + .../examples/FirewallPolicyGet.json | 40 + .../FirewallPolicyListByResourceGroup.json | 35 + .../FirewallPolicyListBySubscription.json | 34 + .../examples/FirewallPolicyPut.json | 93 + .../FirewallPolicyRuleGroupDelete.json | 14 + .../examples/FirewallPolicyRuleGroupGet.json | 50 + .../examples/FirewallPolicyRuleGroupList.json | 54 + .../examples/FirewallPolicyRuleGroupPut.json | 119 + ...irewallPolicyRuleGroupWithIpGroupsGet.json | 50 + ...rewallPolicyRuleGroupWithIpGroupsList.json | 54 + ...irewallPolicyRuleGroupWithIpGroupsPut.json | 119 + ...alWanVpnServerConfigurationVpnProfile.json | 18 + .../GetVirtualWanVpnServerConfigurations.json | 20 + .../examples/HubRouteTableDelete.json | 14 + .../2020-04-01/examples/HubRouteTableGet.json | 47 + .../examples/HubRouteTableList.json | 81 + .../2020-04-01/examples/HubRouteTablePut.json | 104 + .../HubVirtualNetworkConnectionGet.json | 69 + .../HubVirtualNetworkConnectionList.json | 127 + .../examples/InboundNatRuleCreate.json | 66 + .../examples/InboundNatRuleDelete.json | 14 + .../examples/InboundNatRuleGet.json | 32 + .../examples/InboundNatRuleList.json | 54 + .../examples/IpAllocationCreate.json | 52 + .../examples/IpAllocationDelete.json | 13 + .../2020-04-01/examples/IpAllocationGet.json | 26 + .../2020-04-01/examples/IpAllocationList.json | 42 + .../IpAllocationListByResourceGroup.json | 43 + .../examples/IpAllocationUpdateTags.json | 37 + .../2020-04-01/examples/IpGroupsCreate.json | 67 + .../2020-04-01/examples/IpGroupsDelete.json | 13 + .../2020-04-01/examples/IpGroupsGet.json | 32 + .../examples/IpGroupsListByResourceGroup.json | 55 + .../examples/IpGroupsListBySubscription.json | 54 + .../examples/IpGroupsUpdateTags.json | 42 + ...sPoolListWithBackendAddressesPoolType.json | 50 + ...endAddressPoolWithBackendAddressesGet.json | 47 + ...endAddressPoolWithBackendAddressesPut.json | 107 + ...endAddressesPutWithNICIPConfiguration.json | 91 + .../LoadBalancerBackendAddressPoolDelete.json | 14 + .../LoadBalancerBackendAddressPoolGet.json | 32 + .../LoadBalancerBackendAddressPoolList.json | 35 + .../examples/LoadBalancerCreate.json | 339 + .../LoadBalancerCreateStandardSku.json | 339 + .../LoadBalancerCreateWithInboundNatPool.json | 180 + .../LoadBalancerCreateWithOutboundRules.json | 423 + .../examples/LoadBalancerCreateWithZones.json | 348 + .../examples/LoadBalancerDelete.json | 13 + ...oadBalancerFrontendIPConfigurationGet.json | 38 + ...adBalancerFrontendIPConfigurationList.json | 41 + .../2020-04-01/examples/LoadBalancerGet.json | 139 + .../2020-04-01/examples/LoadBalancerList.json | 161 + .../examples/LoadBalancerListAll.json | 160 + .../LoadBalancerLoadBalancingRuleGet.json | 38 + .../LoadBalancerLoadBalancingRuleList.json | 41 + ...oadBalancerNetworkInterfaceListSimple.json | 59 + .../LoadBalancerNetworkInterfaceListVmss.json | 112 + .../examples/LoadBalancerOutboundRuleGet.json | 34 + .../LoadBalancerOutboundRuleList.json | 37 + .../examples/LoadBalancerProbeGet.json | 32 + .../examples/LoadBalancerProbeList.json | 35 + .../examples/LoadBalancerUpdateTags.json | 132 + .../examples/LocalNetworkGatewayCreate.json | 60 + .../examples/LocalNetworkGatewayDelete.json | 13 + .../examples/LocalNetworkGatewayGet.json | 29 + .../examples/LocalNetworkGatewayList.json | 49 + .../LocalNetworkGatewayUpdateTags.json | 38 + .../examples/NatGatewayCreateOrUpdate.json | 118 + .../2020-04-01/examples/NatGatewayDelete.json | 13 + .../2020-04-01/examples/NatGatewayGet.json | 40 + .../2020-04-01/examples/NatGatewayList.json | 71 + .../examples/NatGatewayListAll.json | 70 + .../examples/NatGatewayUpdateTags.json | 50 + .../examples/NetworkInterfaceCreate.json | 101 + .../examples/NetworkInterfaceDelete.json | 13 + .../NetworkInterfaceEffectiveNSGList.json | 71 + ...tworkInterfaceEffectiveRouteTableList.json | 71 + .../examples/NetworkInterfaceGet.json | 55 + .../NetworkInterfaceIPConfigurationGet.json | 45 + .../NetworkInterfaceIPConfigurationList.json | 31 + .../examples/NetworkInterfaceList.json | 92 + .../examples/NetworkInterfaceListAll.json | 91 + .../NetworkInterfaceLoadBalancerList.json | 139 + ...etworkInterfaceTapConfigurationCreate.json | 46 + ...etworkInterfaceTapConfigurationDelete.json | 14 + .../NetworkInterfaceTapConfigurationGet.json | 25 + .../NetworkInterfaceTapConfigurationList.json | 28 + .../examples/NetworkInterfaceUpdateTags.json | 56 + .../NetworkProfileCreateConfigOnly.json | 110 + .../examples/NetworkProfileDelete.json | 13 + .../examples/NetworkProfileGetConfigOnly.json | 84 + .../NetworkProfileGetWithContainerNic.json | 203 + .../examples/NetworkProfileList.json | 97 + .../examples/NetworkProfileListAll.json | 84 + .../examples/NetworkProfileUpdateTags.json | 58 + .../examples/NetworkSecurityGroupCreate.json | 233 + .../NetworkSecurityGroupCreateWithRule.json | 282 + .../examples/NetworkSecurityGroupDelete.json | 13 + .../examples/NetworkSecurityGroupGet.json | 136 + .../examples/NetworkSecurityGroupList.json | 231 + .../examples/NetworkSecurityGroupListAll.json | 230 + .../NetworkSecurityGroupRuleCreate.json | 57 + .../NetworkSecurityGroupRuleDelete.json | 14 + .../examples/NetworkSecurityGroupRuleGet.json | 28 + .../NetworkSecurityGroupRuleList.json | 31 + .../NetworkSecurityGroupUpdateTags.json | 130 + .../NetworkVirtualApplianceDelete.json | 13 + .../examples/NetworkVirtualApplianceGet.json | 57 + ...rkVirtualApplianceListByResourceGroup.json | 60 + ...orkVirtualApplianceListBySubscription.json | 59 + .../examples/NetworkVirtualAppliancePut.json | 133 + .../NetworkVirtualApplianceUpdateTags.json | 64 + ...tworkWatcherAvailableProvidersListGet.json | 68 + ...workWatcherAzureReachabilityReportGet.json | 82 + ...NetworkWatcherConnectionMonitorCreate.json | 70 + ...NetworkWatcherConnectionMonitorDelete.json | 13 + .../NetworkWatcherConnectionMonitorGet.json | 35 + .../NetworkWatcherConnectionMonitorList.json | 60 + .../NetworkWatcherConnectionMonitorQuery.json | 77 + .../NetworkWatcherConnectionMonitorStart.json | 13 + .../NetworkWatcherConnectionMonitorStop.json | 13 + ...orkWatcherConnectionMonitorUpdateTags.json | 45 + ...tworkWatcherConnectionMonitorV2Create.json | 206 + .../NetworkWatcherConnectivityCheck.json | 80 + .../examples/NetworkWatcherCreate.json | 40 + .../examples/NetworkWatcherDelete.json | 12 + .../NetworkWatcherFlowLogConfigure.json | 35 + .../examples/NetworkWatcherFlowLogCreate.json | 73 + .../examples/NetworkWatcherFlowLogDelete.json | 13 + .../examples/NetworkWatcherFlowLogGet.json | 43 + .../examples/NetworkWatcherFlowLogList.json | 69 + .../NetworkWatcherFlowLogStatusQuery.json | 31 + .../examples/NetworkWatcherGet.json | 23 + .../examples/NetworkWatcherIpFlowVerify.json | 31 + .../examples/NetworkWatcherList.json | 37 + .../examples/NetworkWatcherListAll.json | 36 + ...WatcherNetworkConfigurationDiagnostic.json | 198 + .../examples/NetworkWatcherNextHopGet.json | 30 + .../NetworkWatcherPacketCaptureCreate.json | 56 + .../NetworkWatcherPacketCaptureDelete.json | 13 + .../NetworkWatcherPacketCaptureGet.json | 37 + ...etworkWatcherPacketCaptureQueryStatus.json | 31 + .../NetworkWatcherPacketCaptureStop.json | 13 + .../NetworkWatcherPacketCapturesList.json | 58 + .../NetworkWatcherSecurityGroupViewGet.json | 141 + .../examples/NetworkWatcherTopologyGet.json | 39 + .../NetworkWatcherTroubleshootGet.json | 71 + ...NetworkWatcherTroubleshootResultQuery.json | 67 + .../examples/NetworkWatcherUpdateTags.json | 32 + .../2020-04-01/examples/OperationList.json | 137 + .../examples/P2SVpnGatewayDelete.json | 13 + .../P2SVpnGatewayGenerateVpnProfile.json | 17 + .../2020-04-01/examples/P2SVpnGatewayGet.json | 53 + .../P2SVpnGatewayGetConnectionHealth.json | 54 + ...VpnGatewayGetConnectionHealthDetailed.json | 21 + .../examples/P2SVpnGatewayList.json | 97 + .../P2SVpnGatewayListByResourceGroup.json | 93 + .../2020-04-01/examples/P2SVpnGatewayPut.json | 118 + .../examples/P2SVpnGatewayUpdateTags.json | 61 + ...pnGatewaysDisconnectP2sVpnConnections.json | 18 + .../PeerExpressRouteCircuitConnectionGet.json | 32 + ...PeerExpressRouteCircuitConnectionList.json | 53 + .../examples/PrivateEndpointCreate.json | 126 + ...rivateEndpointCreateForManualApproval.json | 126 + .../examples/PrivateEndpointDelete.json | 13 + .../PrivateEndpointDnsZoneGroupCreate.json | 90 + .../PrivateEndpointDnsZoneGroupDelete.json | 14 + .../PrivateEndpointDnsZoneGroupGet.json | 68 + .../PrivateEndpointDnsZoneGroupList.json | 80 + .../examples/PrivateEndpointGet.json | 60 + .../PrivateEndpointGetForManualApproval.json | 60 + .../examples/PrivateEndpointList.json | 111 + .../examples/PrivateEndpointListAll.json | 156 + .../examples/PrivateLinkServiceCreate.json | 155 + .../examples/PrivateLinkServiceDelete.json | 13 + ...erviceDeletePrivateEndpointConnection.json | 14 + .../examples/PrivateLinkServiceGet.json | 77 + ...nkServiceGetPrivateEndpointConnection.json | 25 + .../examples/PrivateLinkServiceList.json | 141 + .../examples/PrivateLinkServiceListAll.json | 142 + ...kServiceListPrivateEndpointConnection.json | 40 + ...erviceUpdatePrivateEndpointConnection.json | 37 + ...PublicIpAddressCreateCustomizedValues.json | 70 + .../PublicIpAddressCreateDefaults.json | 53 + .../examples/PublicIpAddressCreateDns.json | 60 + .../examples/PublicIpAddressDelete.json | 13 + .../examples/PublicIpAddressGet.json | 37 + .../examples/PublicIpAddressList.json | 60 + .../examples/PublicIpAddressListAll.json | 49 + .../examples/PublicIpAddressUpdateTags.json | 37 + .../PublicIpPrefixCreateCustomizedValues.json | 69 + .../PublicIpPrefixCreateDefaults.json | 59 + .../examples/PublicIpPrefixDelete.json | 13 + .../examples/PublicIpPrefixGet.json | 35 + .../examples/PublicIpPrefixList.json | 56 + .../examples/PublicIpPrefixListAll.json | 76 + .../examples/PublicIpPrefixUpdateTags.json | 40 + .../examples/RouteFilterCreate.json | 95 + .../examples/RouteFilterDelete.json | 13 + .../2020-04-01/examples/RouteFilterGet.json | 42 + .../2020-04-01/examples/RouteFilterList.json | 44 + .../RouteFilterListByResourceGroup.json | 45 + .../examples/RouteFilterRuleCreate.json | 53 + .../examples/RouteFilterRuleDelete.json | 14 + .../examples/RouteFilterRuleGet.json | 27 + .../RouteFilterRuleListByRouteFilter.json | 30 + .../examples/RouteFilterUpdateTags.json | 46 + .../2020-04-01/examples/RouteTableCreate.json | 39 + .../examples/RouteTableCreateWithRoute.json | 70 + .../2020-04-01/examples/RouteTableDelete.json | 13 + .../2020-04-01/examples/RouteTableGet.json | 33 + .../2020-04-01/examples/RouteTableList.json | 47 + .../examples/RouteTableListAll.json | 44 + .../examples/RouteTableRouteCreate.json | 39 + .../examples/RouteTableRouteDelete.json | 14 + .../examples/RouteTableRouteGet.json | 22 + .../examples/RouteTableRouteList.json | 34 + .../examples/RouteTableUpdateTags.json | 32 + .../SecurityPartnerProviderDelete.json | 13 + .../examples/SecurityPartnerProviderGet.json | 30 + ...ityPartnerProviderListByResourceGroup.json | 33 + ...rityPartnerProviderListBySubscription.json | 32 + .../examples/SecurityPartnerProviderPut.json | 60 + .../SecurityPartnerProviderUpdateTags.json | 32 + .../examples/ServiceCommunityList.json | 56 + .../examples/ServiceEndpointPolicyCreate.json | 41 + ...iceEndpointPolicyCreateWithDefinition.json | 83 + ...ServiceEndpointPolicyDefinitionCreate.json | 52 + ...ServiceEndpointPolicyDefinitionDelete.json | 14 + .../ServiceEndpointPolicyDefinitionGet.json | 26 + .../ServiceEndpointPolicyDefinitionList.json | 29 + .../examples/ServiceEndpointPolicyDelete.json | 13 + .../examples/ServiceEndpointPolicyGet.json | 37 + .../examples/ServiceEndpointPolicyList.json | 63 + .../ServiceEndpointPolicyListAll.json | 64 + .../ServiceEndpointPolicyUpdateTags.json | 47 + .../2020-04-01/examples/ServiceTagsList.json | 88 + .../2020-04-01/examples/SubnetCreate.json | 36 + .../examples/SubnetCreateServiceEndpoint.json | 61 + .../examples/SubnetCreateWithDelegation.json | 60 + .../2020-04-01/examples/SubnetDelete.json | 14 + .../stable/2020-04-01/examples/SubnetGet.json | 21 + .../examples/SubnetGetWithDelegation.json | 33 + .../2020-04-01/examples/SubnetList.json | 32 + .../SubnetPrepareNetworkPolicies.json | 16 + .../SubnetUnprepareNetworkPolicies.json | 16 + .../stable/2020-04-01/examples/UsageList.json | 265 + .../examples/UsageListSpacedLocation.json | 335 + .../2020-04-01/examples/VirtualHubDelete.json | 13 + .../2020-04-01/examples/VirtualHubGet.json | 29 + .../2020-04-01/examples/VirtualHubList.json | 220 + .../VirtualHubListByResourceGroup.json | 221 + .../2020-04-01/examples/VirtualHubPut.json | 61 + .../VirtualHubRouteTableV2Delete.json | 14 + .../examples/VirtualHubRouteTableV2Get.json | 47 + .../examples/VirtualHubRouteTableV2List.json | 72 + .../examples/VirtualHubRouteTableV2Put.json | 113 + .../examples/VirtualHubUpdateTags.json | 39 + ...tualNetworkCheckIPAddressAvailability.json | 23 + .../examples/VirtualNetworkCreate.json | 56 + ...ualNetworkCreateServiceEndpointPolicy.json | 126 + .../VirtualNetworkCreateServiceEndpoints.json | 111 + .../examples/VirtualNetworkCreateSubnet.json | 82 + ...etworkCreateSubnetWithAddressPrefixes.json | 91 + ...tualNetworkCreateSubnetWithDelegation.json | 114 + ...irtualNetworkCreateWithBgpCommunities.json | 93 + .../examples/VirtualNetworkDelete.json | 13 + ...VirtualNetworkGatewayConnectionCreate.json | 136 + ...VirtualNetworkGatewayConnectionDelete.json | 13 + .../VirtualNetworkGatewayConnectionGet.json | 44 + ...lNetworkGatewayConnectionGetSharedKey.json | 15 + ...etworkGatewayConnectionResetSharedKey.json | 19 + ...lNetworkGatewayConnectionSetSharedKey.json | 23 + ...rkGatewayConnectionStartPacketCapture.json | 14 + ...onnectionStartPacketCaptureFilterData.json | 17 + ...orkGatewayConnectionStopPacketCapture.json | 17 + ...ualNetworkGatewayConnectionUpdateTags.json | 51 + .../VirtualNetworkGatewayConnectionsList.json | 75 + .../examples/VirtualNetworkGatewayDelete.json | 13 + ...etworkGatewayGenerateVpnClientPackage.json | 15 + ...rtualNetworkGatewayGenerateVpnProfile.json | 15 + .../examples/VirtualNetworkGatewayGet.json | 88 + ...tualNetworkGatewayGetAdvertisedRoutes.json | 15 + ...VirtualNetworkGatewayGetBGPPeerStatus.json | 14 + ...orkGatewayGetVpnClientIpsecParameters.json | 22 + ...NetworkGatewayGetVpnProfilePackageUrl.json | 14 + ...rkGatewayGetVpnclientConnectionHealth.json | 45 + .../VirtualNetworkGatewayLearnedRoutes.json | 14 + .../examples/VirtualNetworkGatewayList.json | 132 + .../examples/VirtualNetworkGatewayReset.json | 74 + ...NetworkGatewayResetVpnClientSharedKey.json | 12 + ...orkGatewaySetVpnClientIpsecParameters.json | 24 + ...rtualNetworkGatewayStartPacketCapture.json | 14 + ...rkGatewayStartPacketCaptureFilterData.json | 17 + ...irtualNetworkGatewayStopPacketCapture.json | 17 + ...rtualNetworkGatewaySupportedVpnDevice.json | 13 + .../examples/VirtualNetworkGatewayUpdate.json | 220 + .../VirtualNetworkGatewayUpdateTags.json | 83 + ...rkGatewayVpnDeviceConfigurationScript.json | 18 + ...rkGatewaysDisconnectP2sVpnConnections.json | 18 + ...VirtualNetworkGatewaysListConnections.json | 41 + .../examples/VirtualNetworkGet.json | 42 + ...tualNetworkGetResourceNavigationLinks.json | 28 + ...tualNetworkGetServiceAssociationLinks.json | 31 + ...lNetworkGetWithServiceAssociationLink.json | 69 + ...VirtualNetworkGetWithSubnetDelegation.json | 54 + .../examples/VirtualNetworkList.json | 64 + .../examples/VirtualNetworkListAll.json | 63 + .../examples/VirtualNetworkListUsage.json | 36 + .../examples/VirtualNetworkPeeringCreate.json | 66 + .../examples/VirtualNetworkPeeringDelete.json | 14 + .../examples/VirtualNetworkPeeringGet.json | 33 + .../examples/VirtualNetworkPeeringList.json | 56 + .../examples/VirtualNetworkTapCreate.json | 62 + .../examples/VirtualNetworkTapDelete.json | 13 + .../examples/VirtualNetworkTapGet.json | 32 + .../examples/VirtualNetworkTapList.json | 55 + .../examples/VirtualNetworkTapListAll.json | 54 + .../examples/VirtualNetworkTapUpdateTags.json | 40 + .../examples/VirtualNetworkUpdateTags.json | 39 + .../examples/VirtualRouterDelete.json | 13 + .../2020-04-01/examples/VirtualRouterGet.json | 38 + .../VirtualRouterListByResourceGroup.json | 41 + .../VirtualRouterListBySubscription.json | 40 + .../examples/VirtualRouterPeeringDelete.json | 14 + .../examples/VirtualRouterPeeringGet.json | 23 + .../examples/VirtualRouterPeeringList.json | 26 + .../examples/VirtualRouterPeeringPut.json | 41 + .../2020-04-01/examples/VirtualRouterPut.json | 77 + .../2020-04-01/examples/VirtualWANDelete.json | 13 + .../2020-04-01/examples/VirtualWANGet.json | 35 + .../2020-04-01/examples/VirtualWANList.json | 60 + .../VirtualWANListByResourceGroup.json | 61 + .../2020-04-01/examples/VirtualWANPut.json | 70 + .../examples/VirtualWANUpdateTags.json | 42 + .../VirtualWanSupportedSecurityProviders.json | 22 + .../examples/VmssNetworkInterfaceGet.json | 65 + .../VmssNetworkInterfaceIpConfigGet.json | 39 + .../VmssNetworkInterfaceIpConfigList.json | 42 + .../examples/VmssNetworkInterfaceList.json | 118 + .../2020-04-01/examples/VmssPublicIpGet.json | 34 + .../examples/VmssPublicIpListAll.json | 52 + .../examples/VmssVmNetworkInterfaceList.json | 68 + .../examples/VmssVmPublicIpList.json | 37 + .../examples/VpnConnectionDelete.json | 14 + .../2020-04-01/examples/VpnConnectionGet.json | 100 + .../examples/VpnConnectionList.json | 101 + .../2020-04-01/examples/VpnConnectionPut.json | 162 + .../2020-04-01/examples/VpnGatewayDelete.json | 13 + .../2020-04-01/examples/VpnGatewayGet.json | 119 + .../2020-04-01/examples/VpnGatewayList.json | 187 + .../VpnGatewayListByResourceGroup.json | 187 + .../2020-04-01/examples/VpnGatewayPut.json | 220 + .../2020-04-01/examples/VpnGatewayReset.json | 78 + .../examples/VpnGatewayUpdateTags.json | 85 + .../VpnServerConfigurationDelete.json | 13 + .../examples/VpnServerConfigurationGet.json | 73 + .../examples/VpnServerConfigurationList.json | 132 + ...erverConfigurationListByResourceGroup.json | 129 + .../examples/VpnServerConfigurationPut.json | 190 + .../VpnServerConfigurationUpdateTags.json | 73 + .../2020-04-01/examples/VpnSiteDelete.json | 13 + .../2020-04-01/examples/VpnSiteGet.json | 57 + .../examples/VpnSiteLinkConnectionGet.json | 37 + .../examples/VpnSiteLinkConnectionList.json | 38 + .../2020-04-01/examples/VpnSiteLinkGet.json | 30 + .../examples/VpnSiteLinkListByVpnSite.json | 50 + .../2020-04-01/examples/VpnSiteList.json | 88 + .../examples/VpnSiteListByResourceGroup.json | 88 + .../2020-04-01/examples/VpnSitePut.json | 137 + .../examples/VpnSiteUpdateTags.json | 48 + .../VpnSitesConfigurationDownload.json | 22 + .../examples/WafListAllPolicies.json | 102 + .../2020-04-01/examples/WafListPolicies.json | 103 + .../examples/WafPolicyCreateOrUpdate.json | 258 + .../2020-04-01/examples/WafPolicyDelete.json | 13 + .../2020-04-01/examples/WafPolicyGet.json | 140 + .../2020-04-01/expressRouteCircuit.json | 2507 ++ .../expressRouteCrossConnection.json | 1006 + .../stable/2020-04-01/expressRoutePort.json | 869 + .../stable/2020-04-01/firewallPolicy.json | 1188 + .../stable/2020-04-01/ipAllocation.json | 454 + .../stable/2020-04-01/ipGroups.json | 422 + .../stable/2020-04-01/loadBalancer.json | 2242 ++ .../stable/2020-04-01/natGateway.json | 472 + .../stable/2020-04-01/network.json | 335 + .../stable/2020-04-01/networkInterface.json | 1522 + .../stable/2020-04-01/networkProfile.json | 622 + .../2020-04-01/networkSecurityGroup.json | 982 + .../2020-04-01/networkVirtualAppliance.json | 493 + .../stable/2020-04-01/networkWatcher.json | 4446 +++ .../stable/2020-04-01/operation.json | 271 + .../stable/2020-04-01/privateEndpoint.json | 963 + .../stable/2020-04-01/privateLinkService.json | 1068 + .../stable/2020-04-01/publicIpAddress.json | 545 + .../stable/2020-04-01/publicIpPrefix.json | 485 + .../stable/2020-04-01/routeFilter.json | 822 + .../stable/2020-04-01/routeTable.json | 755 + .../2020-04-01/securityPartnerProvider.json | 441 + .../stable/2020-04-01/serviceCommunity.json | 158 + .../2020-04-01/serviceEndpointPolicy.json | 742 + .../stable/2020-04-01/serviceTags.json | 166 + .../stable/2020-04-01/usage.json | 160 + .../stable/2020-04-01/virtualNetwork.json | 1965 ++ .../2020-04-01/virtualNetworkGateway.json | 3717 ++ .../stable/2020-04-01/virtualNetworkTap.json | 426 + .../stable/2020-04-01/virtualRouter.json | 698 + .../stable/2020-04-01/virtualWan.json | 5722 ++++ .../2020-04-01/vmssNetworkInterface.json | 374 + .../2020-04-01/vmssPublicIpAddress.json | 241 + .../2020-04-01/webapplicationfirewall.json | 743 + .../network/resource-manager/readme.go.md | 29 + .../network/resource-manager/readme.java.md | 28 + .../network/resource-manager/readme.md | 319 +- .../network/resource-manager/readme.python.md | 197 +- .../2015-11-01-preview/LinkedServices.json | 325 + .../OperationalInsights.json | 671 - .../PrivateEndpointConnectionDelete.json | 14 - .../PrivateEndpointConnectionGet.json | 29 - .../PrivateEndpointConnectionList.json | 48 - .../PrivateEndpointConnectionUpdate.json | 38 - .../WorkspacePrivateLinkResourceGet.json | 26 - .../WorkspacePrivateLinkResourceListGet.json | 30 - .../preview/2019-08-01-preview/Clusters.json | 69 +- .../2019-08-01-preview/LinkedServices.json | 326 + .../OperationalInsights.json | 17 +- .../examples/ClustersCreate.json | 53 +- .../examples/ClustersGet.json | 24 +- .../examples/ClustersListByResourceGroup.json | 12 +- .../examples/ClustersSubscriptionList.json | 12 +- .../examples/ClustersUpdate.json | 22 +- .../examples/LinkedServicesCreate.json | 36 + .../examples/LinkedServicesDelete.json | 13 + .../examples/LinkedServicesGet.json | 21 + .../LinkedServicesListByWorkspace.json | 30 + .../AvailableServiceTiers.json | 138 + .../preview/2020-03-01-preview/Clusters.json | 521 + .../2020-03-01-preview/DataExports.json | 368 + .../2020-03-01-preview/DataSources.json | 344 + .../preview/2020-03-01-preview/Gateways.json | 85 + .../2020-03-01-preview/IntelligencePacks.json | 180 + .../2020-03-01-preview/LinkedServices.json | 294 + .../LinkedStorageAccounts.json | 272 + .../2020-03-01-preview/ManagementGroups.json | 142 + .../2020-03-01-preview/OperationStatuses.json | 116 + .../2020-03-01-preview/Operations.json | 118 + .../2020-03-01-preview/SavedSearches.json | 293 + .../preview/2020-03-01-preview/Schema.json | 274 + .../2020-03-01-preview/SharedKeys.json | 126 + .../StorageInsightConfigs.json | 340 + .../preview/2020-03-01-preview/Usages.json | 137 + .../2020-03-01-preview/WorkspacePurge.json | 216 + .../2020-03-01-preview/Workspaces.json | 529 + .../examples/ClustersCreate.json | 63 + .../examples/ClustersDelete.json | 12 + .../examples/ClustersGet.json | 62 + .../examples/ClustersListByResourceGroup.json | 37 + .../examples/ClustersSubscriptionList.json | 36 + .../examples/ClustersUpdate.json | 47 + .../examples/DataExportCreateOrUpdate.json | 63 + .../examples/DataExportDelete.json | 13 + .../examples/DataExportGet.json | 33 + .../examples/DataExportListByWorkspace.json | 35 + .../examples/DataSourcesCreate.json | 41 + .../examples/DataSourcesDelete.json | 13 + .../examples/DataSourcesGet.json | 23 + .../examples/DataSourcesListByWorkspace.json | 3019 ++ .../examples/LinkedServicesCreate.json | 38 + .../examples/LinkedServicesDelete.json | 23 + .../examples/LinkedServicesGet.json | 22 + .../LinkedServicesListByWorkspace.json | 32 + .../examples/LinkedStorageAccountsCreate.json | 33 + .../examples/LinkedStorageAccountsDelete.json | 12 + .../examples/LinkedStorageAccountsGet.json | 25 + .../LinkedStorageAccountsListByWorkspace.json | 40 + .../examples/OperationStatusesGet.json | 20 + .../examples/OperationsListByTenant.json | 327 + .../examples/SavedSearchesGetSchema.json | 64 + .../SavedSearchesListByWorkspace.json | 30 + .../StorageInsightsCreateOrUpdate.json | 72 + .../examples/StorageInsightsDelete.json | 13 + .../examples/StorageInsightsGet.json | 34 + .../StorageInsightsListByWorkspace.json | 34 + .../WorkspacesAvailableServiceTiers.json | 30 + .../examples/WorkspacesCreate.json | 65 + .../examples/WorkspacesDelete.json | 13 + .../WorkspacesDeleteSavedSearches.json | 13 + .../WorkspacesDisableIntelligencePack.json | 12 + .../WorkspacesEnableIntelligencePack.json | 12 + .../examples/WorkspacesGatewaysDelete.json | 12 + .../examples/WorkspacesGet.json | 46 + .../examples/WorkspacesGetSharedKeys.json | 16 + .../WorkspacesListByResourceGroup.json | 32 + .../WorkspacesListIntelligencePacks.json | 244 + .../WorkspacesListManagementGroups.json | 15 + .../examples/WorkspacesListUsages.json | 27 + .../examples/WorkspacesPurge.json | 28 + .../examples/WorkspacesPurgeOperation.json | 16 + .../WorkspacesRegenerateSharedKeys.json | 16 + ...WorkspacesSavedSearchesCreateOrUpdate.json | 38 + .../examples/WorkspacesSavedSearchesGet.json | 24 + .../examples/WorkspacesSubscriptionList.json | 31 + .../examples/WorkspacesUpdate.json | 34 + .../resource-manager/common/v1/types.json | 22 + .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.md | 67 +- .../examples/CreateDirectPeering.json | 10 +- .../examples/CreateExchangePeering.json | 10 +- .../examples/CreatePeerAsn.json | 4 +- .../examples/CreatePeeringService.json | 10 +- .../examples/CreatePeeringServicePrefix.json | 6 +- .../CreatePeeringWithExchangeRouteServer.json | 10 +- .../examples/CreateRegisteredAsn.json | 4 +- .../examples/CreateRegisteredPrefix.json | 4 +- .../examples/DeletePeeringService.json | 2 +- .../examples/DeletePeeringServicePrefix.json | 2 +- .../examples/GetPeerAsn.json | 2 +- .../examples/GetPeering.json | 4 +- .../examples/GetPeeringService.json | 6 +- .../examples/GetPeeringServicePrefix.json | 4 +- .../examples/GetRegisteredAsn.json | 2 +- .../examples/GetRegisteredPrefix.json | 2 +- .../examples/ListDirectPeeringLocations.json | 4 +- .../ListExchangePeeringLocations.json | 4 +- .../examples/ListLegacyPeerings.json | 2 +- .../examples/ListPeerAsnsBySubscription.json | 2 +- ...PeeringServiceCountriesBySubscription.json | 4 +- ...PeeringServiceLocationsBySubscription.json | 4 +- .../examples/ListPeeringServiceProviders.json | 4 +- .../ListPeeringServicesByResourceGroup.json | 4 +- .../ListPeeringServicesBySubscription.json | 4 +- .../examples/ListPeeringsByResourceGroup.json | 4 +- .../examples/ListPeeringsBySubscription.json | 4 +- .../ListPrefixesByPeeringService.json | 6 +- .../examples/ListRegisteredAsnsByPeering.json | 6 +- .../ListRegisteredPrefixesByPeering.json | 6 +- .../examples/UpdatePeeringServiceTags.json | 6 +- .../examples/UpdatePeeringTags.json | 4 +- .../CheckServiceProviderAvailability.json | 15 + .../examples/CreateDirectPeering.json | 169 + .../examples/CreateExchangePeering.json | 166 + .../2020-04-01/examples/CreatePeerAsn.json | 90 + .../examples/CreatePeeringService.json | 43 + .../examples/CreatePeeringServicePrefix.json | 45 + .../CreatePeeringWithExchangeRouteServer.json | 134 + .../examples/CreateRegisteredAsn.json | 40 + .../examples/CreateRegisteredPrefix.json | 41 + .../2020-04-01/examples/DeletePeerAsn.json | 11 + .../2020-04-01/examples/DeletePeering.json | 12 + .../examples/DeletePeeringService.json | 12 + .../examples/DeletePeeringServicePrefix.json | 13 + .../examples/DeleteRegisteredAsn.json | 13 + .../examples/DeleteRegisteredPrefix.json | 13 + .../2020-04-01/examples/GetPeerAsn.json | 38 + .../2020-04-01/examples/GetPeering.json | 68 + .../examples/GetPeeringReceivedRoutes.json | 29 + .../examples/GetPeeringService.json | 23 + .../examples/GetPeeringServicePrefix.json | 24 + .../2020-04-01/examples/GetRegisteredAsn.json | 23 + .../examples/GetRegisteredPrefix.json | 24 + .../examples/ListDirectPeeringLocations.json | 81 + .../ListExchangePeeringLocations.json | 73 + .../examples/ListLegacyPeerings.json | 72 + .../examples/ListPeerAsnsBySubscription.json | 41 + .../examples/ListPeeringOperations.json | 243 + ...PeeringServiceCountriesBySubscription.json | 24 + ...PeeringServiceLocationsBySubscription.json | 32 + .../examples/ListPeeringServiceProviders.json | 30 + .../ListPeeringServicesByResourceGroup.json | 26 + .../ListPeeringServicesBySubscription.json | 25 + .../examples/ListPeeringsByResourceGroup.json | 71 + .../examples/ListPeeringsBySubscription.json | 70 + .../ListPrefixesByPeeringService.json | 38 + .../examples/ListRegisteredAsnsByPeering.json | 45 + .../ListRegisteredPrefixesByPeering.json | 48 + .../examples/UpdatePeeringServiceTags.json | 33 + .../examples/UpdatePeeringTags.json | 78 + .../stable/2020-04-01/peering.json | 3410 ++ .../peering/resource-manager/readme.cli.md | 64 +- .../peering/resource-manager/readme.go.md | 15 + .../peering/resource-manager/readme.java.md | 19 + .../peering/resource-manager/readme.md | 18 + .../peering/resource-manager/readme.ruby.md | 22 + .../PolicyEvents_FilterAndAggregateOnly.json | 25 + ...yEvents_FilterAndGroupByWithAggregate.json | 39 + ...ents_FilterAndGroupByWithoutAggregate.json | 37 + .../PolicyEvents_FilterAndMultipleGroups.json | 64 + .../examples/PolicyEvents_GetMetadata.json | 14 + ...olicyEvents_QueryManagementGroupScope.json | 80 + ...PolicyEvents_QueryNestedResourceScope.json | 79 + ...sourceGroupLevelPolicyAssignmentScope.json | 82 + .../PolicyEvents_QueryResourceGroupScope.json | 80 + .../PolicyEvents_QueryResourceScope.json | 79 + ...ts_QueryResourceScopeExpandComponents.json | 71 + ...eExpandComponentsGroupByWithAggregate.json | 59 + ...ySubscriptionLevelNestedResourceScope.json | 79 + ...ubscriptionLevelPolicyAssignmentScope.json | 81 + ...ubscriptionLevelPolicyDefinitionScope.json | 81 + ...criptionLevelPolicySetDefinitionScope.json | 81 + ...s_QuerySubscriptionLevelResourceScope.json | 79 + .../PolicyEvents_QuerySubscriptionScope.json | 79 + .../PolicyEvents_TimeRangeSortSelectTop.json | 42 + ...olicyStates_QueryManagementGroupScope.json | 10 +- ...PolicyStates_QueryNestedResourceScope.json | 10 +- ...sourceGroupLevelPolicyAssignmentScope.json | 10 +- .../PolicyStates_QueryResourceGroupScope.json | 10 +- .../PolicyStates_QueryResourceScope.json | 10 +- ...es_QueryResourceScopeExpandComponents.json | 86 + ...eExpandComponentsGroupByWithAggregate.json | 59 + ...rceScopeExpandPolicyEvaluationDetails.json | 6 + ...ySubscriptionLevelNestedResourceScope.json | 10 +- ...ubscriptionLevelPolicyAssignmentScope.json | 10 +- ...ubscriptionLevelPolicyDefinitionScope.json | 10 +- ...criptionLevelPolicySetDefinitionScope.json | 10 +- ...s_QuerySubscriptionLevelResourceScope.json | 10 +- .../PolicyStates_QuerySubscriptionScope.json | 10 +- .../stable/2019-10-01/policyEvents.json | 1024 + .../stable/2019-10-01/policyStates.json | 60 +- .../policyinsights/resource-manager/readme.md | 5 +- .../preview/2015-08-01-preview/portal.json | 8 +- .../preview/2018-10-01-preview/portal.json | 8 +- .../preview/2019-01-01-preview/portal.json | 8 +- .../portal/resource-manager/readme.az.md | 24 + .../portal/resource-manager/readme.cli.md | 9 + .../portal/resource-manager/readme.md | 1 + .../portal/resource-manager/readme.python.md | 8 +- .../examples/ServerAdminCreateUpdate.json | 12 +- .../examples/ServerAdminDelete.json | 12 +- .../2017-12-01-preview/postgresql.json | 184 +- .../examples/ServerAdminCreateUpdate.json | 45 + .../examples/ServerAdminDelete.json | 14 + .../2017-12-01/examples/ServerAdminGet.json | 24 + .../2017-12-01/examples/ServerAdminList.json | 27 + .../2017-12-01/examples/ServerCreate.json | 2 + .../2017-12-01/examples/ServerDelete.json | 2 +- .../stable/2017-12-01/examples/ServerGet.json | 20 +- .../2017-12-01/examples/ServerList.json | 50 +- .../examples/ServerListByResourceGroup.json | 27 +- .../2017-12-01/examples/ServerUpdate.json | 4 +- .../stable/2017-12-01/postgresql.json | 471 +- .../stable/2020-01-01/DataEncryptionKeys.json | 330 + .../examples/ServerKeyCreateOrUpdate.json | 43 + .../2020-01-01/examples/ServerKeyDelete.json | 14 + .../2020-01-01/examples/ServerKeyGet.json | 24 + .../2020-01-01/examples/ServerKeyList.json | 27 + .../postgresql/resource-manager/readme.go.md | 10 + .../postgresql/resource-manager/readme.md | 22 +- .../stable/2016-06-01/examples/GETVault.json | 25 +- .../examples/GetPrivateLinkResources.json | 36 + .../examples/ListPrivateLinkResources.json | 60 + .../stable/2016-06-01/examples/PUTVault.json | 15 +- .../stable/2016-06-01/vaults.json | 333 +- .../stable/2018-12-20/bms.json | 442 +- .../AzureIaasVm/BackupAadProperties_Get.json | 24 +- .../examples/AzureIaasVm/GetCrrJob_Post.json | 45 +- .../GetCrrOperationResults_Get.json | 28 +- .../GetCrrOperationStatus_Get.json | 32 +- .../AzureIaasVm/ListCrrJobs_Post.json | 42 +- .../TriggerCrossRegionRestore_Post.json | 98 +- .../stable/2020-02-02/bms.json | 473 + .../DeletePrivateEndpointConnection.json | 19 + .../GetPrivateEndpointConnection.json | 28 + ...vateEndpointConnectionOperationStatus.json | 21 + .../PutPrivateEndpointConnection.json | 61 + .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.java.md | 18 + .../resource-manager/readme.md | 17 +- .../ReplicationMigrationItems_Create.json | 5 +- .../ReplicationMigrationItems_Resync.json | 2 +- .../stable/2018-01-10/service.json | 14 + .../ReplicationMigrationItems_Create.json | 2 +- ...Sizes_ListByReplicationProtectedItems.json | 6 +- .../stable/2018-07-10/service.json | 155 +- .../OpenShiftClusters_CreateOrUpdate.json | 162 + .../examples/OpenShiftClusters_Delete.json | 12 + .../examples/OpenShiftClusters_Get.json | 64 + .../examples/OpenShiftClusters_List.json | 66 + ...OpenShiftClusters_ListByResourceGroup.json | 67 + .../OpenShiftClusters_ListCredentials.json | 16 + .../examples/OpenShiftClusters_Update.json | 161 + .../2020-04-30/examples/Operations_List.json | 21 + .../stable/2020-04-30/redhatopenshift.json | 778 + .../resource-manager/readme.go.md | 26 + .../resource-manager/readme.md | 89 + .../resource-manager/readme.python.md | 33 + .../common/v1/definitions.json | 127 + .../Namespaces-preview.json | 643 + .../NetworkRuleSets-preview.json | 191 + .../PrivateEndpointConnection-preview.json | 432 + .../PrivateLinkResources-preview.json | 141 + .../RelayNameSpaceCheckNameAvailability.json | 18 + .../NameSpaces/RelayNameSpaceCreate.json | 63 + .../NameSpaces/RelayNameSpaceDelete.json | 13 + .../NameSpaces/RelayNameSpaceGet.json | 33 + .../RelayNameSpaceListByResourceGroup.json | 242 + .../RelayNameSpaceListBySubscription.json | 56 + .../NameSpaces/RelayNameSpaceUpdate.json | 54 + .../RelayNetworkRuleSetCreate.json | 69 + .../RelayNetworkRuleSetGet.json | 42 + .../ListPrivateLinkResources.json | 30 + ...onStatusPrivateEndpointConnectionsGet.json | 19 + .../PrivateEndpointConnectionsCreate.json | 59 + .../PrivateEndpointConnectionsDelete.json | 12 + .../PrivateEndpointConnectionsGet.json | 29 + .../PrivateEndpointConnectionsList.json | 32 + .../examples/RelayOperations_List.json | 109 + .../relay/resource-manager/readme.go.md | 9 + .../relay/resource-manager/readme.md | 17 + .../examples/getAutoQuotaIncreaseStatus.json | 8 +- .../2019-07-19/examples/getBatchAIUsages.json | 45 +- .../examples/patchComputeQuotaRequest.json | 1 - .../examples/putAutoQuotaIncrease.json | 16 +- .../examples/putAutoQuotaIncreaseTurnOff.json | 12 +- .../putComputeOneSkuQuotaRequest.json | 1 - .../preview/2019-07-19/quota.json | 101 +- .../2018-09-01-preview/graphquery.json | 17 + .../stable/2019-04-01/resourcegraph.json | 6 +- .../resourcegraph/resource-manager/readme.md | 30 + .../examples/unregisterFeature.json | 21 + .../stable/2015-12-01/features.json | 44 + .../2019-10-01-preview/deploymentScripts.json | 51 +- .../examples/DeploymentScripts_Create.json | 8 + ...tScripts_Create_Using_Custom_Aci_Name.json | 116 + ..._Create_Using_Existing_StorageAccount.json | 117 + .../examples/DeploymentScripts_Get.json | 8 + ...DeploymentScripts_ListByResourceGroup.json | 8 + .../DeploymentScripts_ListBySubscription.json | 8 + .../DeploymentScripts_Min_Create.json | 8 + .../examples/DeploymentScripts_Update.json | 8 + .../stable/2019-08-01/resources.json | 30 +- .../stable/2019-10-01/resources.json | 110 +- .../2020-01-01/examples/GetLocations.json | 52 + .../2020-01-01/examples/GetSubscription.json | 32 + .../2020-01-01/examples/GetSubscriptions.json | 61 + .../2020-01-01/examples/GetTenants.json | 53 + .../stable/2020-01-01/subscriptions.json | 587 + .../2019-07-01/managedapplications.json | 27 +- .../resources/resource-manager/readme.go.md | 11 + .../resources/resource-manager/readme.java.md | 1 - .../resources/resource-manager/readme.md | 17 + .../resource-manager/readme.python.md | 169 +- .../examples/SearchServiceCreateIndex.json | 10 + .../SearchServiceCreateOrUpdateIndex.json | 6 + .../2019-05-06-preview/searchindex.json | 118 +- .../2019-05-06-preview/searchservice.json | 2275 +- .../SearchIndexSearchDocumentsGet.json | 13 + .../SearchIndexSearchDocumentsPost.json | 16 + .../2019-05-06-preview/searchindex.json | 111 + .../2019-05-06-preview/searchservice.json | 8 +- ...eateOrUpdateSharedPrivateLinkResource.json | 41 + .../DeleteSharedPrivateLinkResource.json | 13 + .../GetSharedPrivateLinkResource.json | 22 + ...stPrivateEndpointConnectionsByService.json | 31 + ...stSharedPrivateLinkResourcesByService.json | 25 + .../ListSupportedPrivateLinkResources.json | 88 + .../examples/SearchCreateOrUpdateService.json | 6 +- ...archCreateOrUpdateServiceWithIdentity.json | 6 +- .../examples/SearchGetService.json | 3 +- .../SearchListServicesByResourceGroup.json | 6 +- .../SearchListServicesBySubscription.json | 6 +- .../examples/SearchUpdateService.json | 3 +- ...dateServiceToAllowAccessFromCustomIPs.json | 3 +- ...viceToAllowAccessFromPrivateEndpoints.json | 3 +- .../SearchUpdateServiceToRemoveIdentity.json | 4 +- .../preview/2019-10-01-preview/search.json | 527 +- ...eateOrUpdateSharedPrivateLinkResource.json | 41 + .../DeletePrivateEndpointConnection.json | 29 + .../DeleteSharedPrivateLinkResource.json | 13 + .../GetPrivateEndpointConnection.json | 28 + .../GetSharedPrivateLinkResource.json | 22 + ...stPrivateEndpointConnectionsByService.json | 31 + ...stSharedPrivateLinkResourcesByService.json | 25 + .../ListSupportedPrivateLinkResources.json | 72 + .../examples/SearchCheckNameAvailability.json | 19 + .../examples/SearchCreateOrUpdateService.json | 80 + ...viceToAllowAccessFromPrivateEndpoints.json | 81 + ...rviceToAllowAccessFromPublicCustomIPs.json | 104 + ...archCreateOrUpdateServiceWithIdentity.json | 93 + .../examples/SearchCreateQueryKey.json | 17 + .../examples/SearchDeleteQueryKey.json | 14 + .../examples/SearchDeleteService.json | 13 + .../examples/SearchGetAdminKeys.json | 16 + .../2020-03-13/examples/SearchGetService.json | 38 + .../SearchListQueryKeysBySearchService.json | 24 + .../SearchListServicesByResourceGroup.json | 67 + .../SearchListServicesBySubscription.json | 66 + .../examples/SearchRegenerateAdminKey.json | 17 + .../examples/SearchUpdateService.json | 48 + ...viceToAllowAccessFromPrivateEndpoints.json | 46 + ...rviceToAllowAccessFromPublicCustomIPs.json | 60 + .../SearchUpdateServiceToRemoveIdentity.json | 47 + .../UpdatePrivateEndpointConnection.json | 37 + .../stable/2020-03-13/search.json | 1980 ++ .../search/resource-manager/readme.md | 21 + .../search/resource-manager/readme.ruby.md | 11 + ...teInformationProtectionPolicy_example.json | 5 +- .../informationProtectionPolicies.json | 51 +- .../examples/Settings/GetSetting_example.json | 2 +- .../Settings/GetSettings_example.json | 4 +- .../Settings/UpdateSetting_example.json | 7 +- .../stable/2019-01-01/settings.json | 14 +- .../2019-08-01/deviceSecurityGroups.json | 310 +- .../2020-01-01/adaptiveNetworkHardenings.json | 412 + .../stable/2020-01-01/allowedConnections.json | 297 + .../2020-01-01/applicationWhitelistings.json | 589 + .../discoveredSecuritySolutions.json | 263 + ...AdaptiveNetworkHardeningRules_example.json | 50 + .../GetAdaptiveNetworkHardening_example.json | 62 + ...urceAdaptiveNetworkHardenings_example.json | 65 + ...nnectionsSubscriptionLocation_example.json | 65 + ...llowedConnectionsSubscription_example.json | 64 + .../GetAllowedConnections_example.json | 63 + ...eleteApplicationWhitelistings_example.json | 13 + ...ApplicationWhitelistingsGroup_example.json | 132 + ...tionWhitelistingsSubscription_example.json | 1028 + .../PutApplicationWhitelistings_example.json | 229 + ...SolutionResourceGroupLocation_example.json | 25 + ...SolutionsSubscriptionLocation_example.json | 39 + ...SecuritySolutionsSubscription_example.json | 38 + .../GetExternalSecuritySolution_example.json | 28 + ...SolutionsSubscriptionLocation_example.json | 123 + ...SecuritySolutionsSubscription_example.json | 122 + .../CreateJitNetworkAccessPolicy_example.json | 111 + .../DeleteJitNetworkAccessPolicy_example.json | 13 + ...PoliciesResourceGroupLocation_example.json | 66 + ...rkAccessPoliciesResourceGroup_example.json | 65 + ...sPoliciesSubscriptionLocation_example.json | 65 + ...orkAccessPoliciesSubscription_example.json | 64 + .../GetJitNetworkAccessPolicy_example.json | 63 + ...nitiateJitNetworkAccessPolicy_example.json | 48 + ...tTopologySubscriptionLocation_example.json | 63 + .../GetTopologySubscription_example.json | 62 + .../Topology/GetTopology_example.json | 37 + .../2020-01-01/externalSecuritySolutions.json | 388 + .../2020-01-01/jitNetworkAccessPolicies.json | 770 + .../stable/2020-01-01/topologies.json | 301 + .../security/resource-manager/readme.md | 686 +- .../2019-01-01-preview/SecurityInsights.json | 322 +- .../actions/CreateActionOfAlertRule.json | 3 - .../alertRules/CreateFusionAlertRule.json | 2 +- .../examples/bookmarks/CreateBookmark.json | 11 +- .../relations/CreateBookmarkRelation.json | 29 +- .../relations/GetAllBookmarkRelations.json | 9 +- .../relations/GetBookmarkRelationByName.json | 9 +- .../cases/relations/CreateCaseRelation.json | 6 +- .../CreateOfficeDataConnetor.json | 3 - .../examples/incidents/CreateIncident.json | 10 + .../examples/incidents/GetIncidentById.json | 6 + .../examples/incidents/GetIncidents.json | 7 + .../examples/settings/UpdateUebaSettings.json | 7 +- .../resource-manager/readme.az.md | 24 + .../resource-manager/readme.cli.md | 9 + .../resource-manager/readme.go.md | 12 +- .../resource-manager/readme.md | 1 + .../resource-manager/readme.cli.md | 15 + .../servicebus/resource-manager/readme.cli.md | 41 +- .../7.1/examples/BackupPartition-1.json | 12 + .../7.1/examples/BackupPartition-2.json | 18 + .../7.1/examples/BackupPartition-3.json | 19 + .../7.1/examples/CreateApplication-1.json | 15 + .../7.1/examples/CreateBackupPolicy-1.json | 34 + .../7.1/examples/CreateBackupPolicy-2.json | 31 + .../stable/7.1/examples/CreateName-1.json | 13 + .../stable/7.1/examples/CreateService-1.json | 21 + .../stable/7.1/examples/CreateService-2.json | 23 + .../stable/7.1/examples/CreateService-3.json | 47 + .../stable/7.1/examples/CreateService-4.json | 46 + .../7.1/examples/DeleteBackupPolicy.json | 11 + .../examples/DisableApplicationBackup.json | 14 + .../7.1/examples/DisablePartitionBackup.json | 14 + .../7.1/examples/DisableServiceBackup.json | 14 + .../7.1/examples/EnableApplicationBackup.json | 14 + .../7.1/examples/EnablePartitionBackup.json | 14 + .../7.1/examples/EnableServiceBackup.json | 14 + .../GetAllEntitiesBackedUpByPolicy-1.json | 27 + .../GetAllEntitiesBackedUpByPolicy-2.json | 24 + ...tApplicationBackupConfigurationInfo-1.json | 39 + ...tApplicationBackupConfigurationInfo-2.json | 31 + .../examples/GetApplicationBackupList-1.json | 108 + .../examples/GetApplicationBackupList-2.json | 63 + .../examples/GetApplicationBackupList-3.json | 63 + .../examples/GetApplicationBackupList-4.json | 64 + .../7.1/examples/GetApplicationEventList.json | 27 + .../examples/GetApplicationInfoByName-1.json | 24 + .../examples/GetApplicationInfoList-1.json | 38 + .../examples/GetApplicationInfoList-2.json | 29 + .../GetApplicationTypeInfoList-1.json | 85 + .../GetApplicationTypeInfoList-2.json | 49 + .../GetApplicationTypeInfoList-3.json | 60 + .../examples/GetApplicationsEventList.json | 36 + .../7.1/examples/GetBackupPolicyByName.json | 36 + .../7.1/examples/GetBackupPolicyList-1.json | 63 + .../7.1/examples/GetBackupPolicyList-2.json | 42 + .../GetBackupsFromBackupLocation-1.json | 73 + .../GetBackupsFromBackupLocation-2.json | 74 + .../stable/7.1/examples/GetChaosEvents.json | 62 + .../7.1/examples/GetClusterEventList.json | 55 + .../7.1/examples/GetClusterVersion-1.json | 15 + .../GetContainerLogsDeployedOnNode-1.json | 19 + .../GetContainerLogsDeployedOnNode-2.json | 20 + .../GetContainerLogsDeployedOnNode-3.json | 20 + .../7.1/examples/GetCorrelatedEventList.json | 31 + .../examples/GetDataLossProgress-Running.json | 18 + .../7.1/examples/GetDataLossProgress.json | 25 + .../GetDeployedApplicationInfoByName-1.json | 26 + .../GetDeployedApplicationInfoList-1.json | 39 + .../GetDeployedApplicationInfoList-2.json | 29 + .../GetDeployedApplicationInfoList-3.json | 49 + .../7.1/examples/GetFaultOperationList.json | 51 + .../7.1/examples/GetImageStoreContent.json | 91 + .../7.1/examples/GetImageStoreInfo.json | 36 + .../stable/7.1/examples/GetNodeEventList.json | 32 + .../stable/7.1/examples/GetNodeInfo-1.json | 41 + .../7.1/examples/GetNodeInfoList-1.json | 72 + .../7.1/examples/GetNodeInfoList-2.json | 99 + .../stable/7.1/examples/GetNodeInfoList.json | 152 + .../GetNodeTransitionProgress-Running.json | 17 + .../examples/GetNodeTransitionProgress.json | 24 + .../7.1/examples/GetNodesEventList.json | 46 + .../GetPartitionBackupConfigurationInfo.json | 24 + .../examples/GetPartitionBackupList-1.json | 64 + .../examples/GetPartitionBackupList-2.json | 41 + .../examples/GetPartitionBackupList-3.json | 63 + .../examples/GetPartitionBackupList-4.json | 42 + .../examples/GetPartitionBackupProgress.json | 25 + .../7.1/examples/GetPartitionEventList.json | 37 + .../examples/GetPartitionRestartProgress.json | 25 + .../examples/GetPartitionRestoreProgress.json | 23 + .../7.1/examples/GetPartitionsEventList.json | 56 + .../7.1/examples/GetPropertyInfo-1.json | 29 + .../7.1/examples/GetPropertyInfoList-1.json | 41 + .../7.1/examples/GetPropertyInfoList-2.json | 56 + .../7.1/examples/GetPropertyInfoList-3.json | 36 + .../GetQuorumLossProgress-Running.json | 18 + .../7.1/examples/GetQuorumLossProgress.json | 25 + .../7.1/examples/GetReplicaEventList.json | 35 + .../7.1/examples/GetReplicasEventList.json | 51 + .../GetServiceBackupConfigurationInfo-1.json | 40 + .../GetServiceBackupConfigurationInfo-2.json | 31 + .../7.1/examples/GetServiceBackupList-1.json | 108 + .../7.1/examples/GetServiceBackupList-2.json | 63 + .../7.1/examples/GetServiceBackupList-3.json | 63 + .../7.1/examples/GetServiceBackupList-4.json | 64 + .../7.1/examples/GetServiceEventList.json | 34 + .../examples/GetServiceTypeInfoByName-1.json | 36 + .../examples/GetServiceTypeInfoList-1.json | 36 + .../7.1/examples/GetServicesEventList.json | 50 + .../7.1/examples/GetSubNameInfoList-1.json | 21 + .../7.1/examples/GetSubNameInfoList-2.json | 27 + .../7.1/examples/GetSubNameInfoList-3.json | 23 + .../7.1/examples/GetUploadSessionById.json | 33 + .../7.1/examples/GetUploadSessionByPath.json | 49 + .../7.1/examples/InvokeContainerApi.json | 27 + .../7.1/examples/InvokeContainerApi_Post.json | 29 + .../stable/7.1/examples/PutProperty-1.json | 25 + .../stable/7.1/examples/PutProperty-2.json | 19 + .../Replicas/CodePackages/get_logs.json | 18 + .../Applications/Services/Replicas/get.json | 57 + .../Applications/Services/Replicas/list.json | 105 + .../Resources/Applications/Services/get.json | 51 + .../Resources/Applications/Services/list.json | 56 + .../Applications/create_update.autoscale.json | 102 + .../Resources/Applications/create_update.json | 139 + .../Resources/Applications/delete.json | 13 + .../examples/Resources/Applications/get.json | 39 + .../Resources/Applications/get_upgrade.json | 30 + .../examples/Resources/Applications/list.json | 44 + .../Resources/Gateways/create_update.json | 193 + .../examples/Resources/Gateways/delete.json | 13 + .../7.1/examples/Resources/Gateways/get.json | 72 + .../7.1/examples/Resources/Gateways/list.json | 77 + .../Resources/Networks/create_update.json | 41 + .../examples/Resources/Networks/delete.json | 13 + .../7.1/examples/Resources/Networks/get.json | 21 + .../7.1/examples/Resources/Networks/list.json | 26 + .../Resources/Secrets/create_update.json | 41 + .../examples/Resources/Secrets/delete.json | 13 + .../7.1/examples/Resources/Secrets/get.json | 21 + .../7.1/examples/Resources/Secrets/list.json | 35 + .../Resources/Secrets/values/create.json | 34 + .../Resources/Secrets/values/delete.json | 14 + .../Resources/Secrets/values/get.json | 19 + .../Resources/Secrets/values/list.json | 29 + .../Resources/Secrets/values/list_value.json | 16 + .../Resources/Volumes/create_update.json | 53 + .../examples/Resources/Volumes/delete.json | 13 + .../7.1/examples/Resources/Volumes/get.json | 25 + .../7.1/examples/Resources/Volumes/list.json | 30 + .../stable/7.1/examples/RestorePartition.json | 20 + .../7.1/examples/ResumeApplicationBackup.json | 11 + .../7.1/examples/ResumePartitionBackup.json | 11 + .../7.1/examples/ResumeServiceBackup.json | 11 + .../StartClusterConfigurationUpgrade-1.json | 40 + .../7.1/examples/SubmitPropertyBatch-1.json | 71 + .../examples/SuspendApplicationBackup.json | 11 + .../7.1/examples/SuspendPartitionBackup.json | 11 + .../7.1/examples/SuspendServiceBackup.json | 11 + .../7.1/examples/UpdateBackupPolicy.json | 35 + .../stable/7.1/examples/UpdateService-1.json | 34 + .../stable/7.1/examples/UpdateService-2.json | 17 + .../stable/7.1/servicefabric.json | 28452 ++++++++++++++++ .../servicefabric/data-plane/readme.md | 13 +- .../preview/2019-06-01-preview/cluster.json | 2 +- .../ClusterPutOperation_example_max.json | 3 - .../ClusterPutOperation_example_min.json | 3 - .../2019-11-01-preview/application.json | 2351 ++ .../preview/2019-11-01-preview/cluster.json | 1558 + .../ApplicationDeleteOperation_example.json | 18 + .../ApplicationGetOperation_example.json | 63 + .../ApplicationListOperation_example.json | 40 + .../ApplicationPatchOperation_example.json | 53 + .../ApplicationPutOperation_example_max.json | 108 + .../ApplicationPutOperation_example_min.json | 38 + ...cationTypeNameDeleteOperation_example.json | 18 + ...plicationTypeNameGetOperation_example.json | 25 + ...licationTypeNameListOperation_example.json | 29 + ...plicationTypeNamePutOperation_example.json | 26 + ...ionTypeVersionDeleteOperation_example.json | 19 + ...cationTypeVersionGetOperation_example.json | 28 + ...ationTypeVersionListOperation_example.json | 32 + ...cationTypeVersionPutOperation_example.json | 36 + .../ClusterDeleteOperation_example.json | 14 + .../examples/ClusterGetOperation_example.json | 159 + ...rListByResourceGroupOperation_example.json | 248 + .../ClusterListOperation_example.json | 247 + .../ClusterPatchOperation_example.json | 284 + .../ClusterPutOperation_example_max.json | 456 + .../ClusterPutOperation_example_min.json | 222 + ...usterVersionsGetByEnvironment_example.json | 28 + .../examples/ClusterVersionsGet_example.json | 27 + .../ClusterVersionsListByEnvironment.json | 27 + .../examples/ClusterVersionsList_example.json | 36 + .../ServiceDeleteOperation_example.json | 19 + .../examples/ServiceGetOperation_example.json | 42 + .../ServiceListOperation_example.json | 43 + .../ServicePatchOperation_example.json | 53 + .../ServicePutOperation_example_max.json | 75 + .../ServicePutOperation_example_min.json | 45 + .../stable/2020-03-01/application.json | 2351 ++ .../stable/2020-03-01/cluster.json | 1558 + .../ApplicationDeleteOperation_example.json | 18 + .../ApplicationGetOperation_example.json | 63 + .../ApplicationListOperation_example.json | 40 + .../ApplicationPatchOperation_example.json | 53 + .../ApplicationPutOperation_example_max.json | 108 + .../ApplicationPutOperation_example_min.json | 38 + ...cationTypeNameDeleteOperation_example.json | 18 + ...plicationTypeNameGetOperation_example.json | 25 + ...licationTypeNameListOperation_example.json | 29 + ...plicationTypeNamePutOperation_example.json | 26 + ...ionTypeVersionDeleteOperation_example.json | 19 + ...cationTypeVersionGetOperation_example.json | 28 + ...ationTypeVersionListOperation_example.json | 32 + ...cationTypeVersionPutOperation_example.json | 36 + .../ClusterDeleteOperation_example.json | 14 + .../examples/ClusterGetOperation_example.json | 159 + ...rListByResourceGroupOperation_example.json | 248 + .../ClusterListOperation_example.json | 247 + .../ClusterPatchOperation_example.json | 284 + .../ClusterPutOperation_example_max.json | 457 + .../ClusterPutOperation_example_min.json | 223 + ...usterVersionsGetByEnvironment_example.json | 28 + .../examples/ClusterVersionsGet_example.json | 27 + .../ClusterVersionsListByEnvironment.json | 27 + .../examples/ClusterVersionsList_example.json | 36 + .../ServiceDeleteOperation_example.json | 19 + .../examples/ServiceGetOperation_example.json | 42 + .../ServiceListOperation_example.json | 43 + .../ServicePatchOperation_example.json | 53 + .../ServicePutOperation_example_max.json | 73 + .../ServicePutOperation_example_min.json | 45 + .../servicefabric/resource-manager/readme.md | 27 +- .../examples/CreateOrUpdate.json | 26 + .../preview/2018-03-01-preview/signalr.json | 6 + .../signalr/resource-manager/readme.md | 2 +- .../2015-05-01-preview/blobAuditing.json | 4 +- .../examples/ManagedInstanceCreateMax.json | 9 +- .../examples/ManagedInstanceGet.json | 3 +- .../examples/ManagedInstanceList.json | 3 +- .../ManagedInstanceListByResourceGroup.json | 6 +- .../examples/ManagedInstanceUpdateMax.json | 6 +- .../examples/ManagedInstanceUpdateMin.json | 3 +- .../2015-05-01-preview/managedInstances.json | 4 + .../2017-03-01-preview/blobAuditing.json | 141 +- .../DatabaseExtendedAuditingSettingsList.json | 32 + .../ServerExtendedAuditingSettingsList.json | 31 + .../preview/2017-10-01-preview/databases.json | 2 +- .../examples/ManagedInstanceCreateMax.json | 9 +- .../examples/ManagedInstanceGet.json | 3 +- .../examples/ManagedInstanceList.json | 6 +- .../ManagedInstanceListByInstancePool.json | 6 +- .../ManagedInstanceListByResourceGroup.json | 6 +- .../examples/ManagedInstanceUpdateMax.json | 6 +- .../examples/ManagedInstanceUpdateMin.json | 3 +- .../2018-06-01-preview/managedInstances.json | 4 + .../preview/2019-06-01-preview/databases.json | 2 +- .../examples/ReplicationLinkGet.json | 2 +- .../examples/ReplicationLinkList.json | 2 +- .../examples/ReplicationLinkUnlink.json | 17 + .../stable/2014-04-01/replicationLinks.json | 69 + specification/sql/resource-manager/readme.md | 2 + .../stable/2019-06-01/blob.json | 55 + ...obContainersPutDefaultEncryptionScope.json | 40 + .../examples/DeletedBlobContainersList.json | 50 + .../examples/DeletedFileSharesList.json | 42 + .../examples/FileSharesGet_Stats.json | 26 + .../examples/FileSharesPut_AccessTier.json | 37 + .../examples/FileSharesPut_NFS.json | 37 + .../examples/FileSharesRestore.json | 17 + .../examples/QueueOperationDelete.json | 13 + .../examples/QueueOperationGet.json | 25 + .../examples/QueueOperationList.json | 40 + .../examples/QueueOperationPatch.json | 20 + .../examples/QueueOperationPut.json | 20 + .../QueueOperationPutWithMetadata.json | 33 + .../2019-06-01/examples/QueueServicesGet.json | 82 + .../examples/QueueServicesList.json | 85 + .../2019-06-01/examples/QueueServicesPut.json | 147 + ...eObjectReplicationPolicyOnDestination.json | 55 + ...CreateObjectReplicationPolicyOnSource.json | 59 + ...eAccountDeleteObjectReplicationPolicy.json | 14 + .../examples/StorageAccountEnableCMK.json | 94 + ...rageAccountGetObjectReplicationPolicy.json | 47 + ...StorageAccountGetPropertiesCMKEnabled.json | 103 + .../examples/StorageAccountList.json | 90 + ...eAccountListObjectReplicationPolicies.json | 35 + ...AccountListPrivateEndpointConnections.json | 49 + .../StorageAccountSetManagementPolicy.json | 88 +- ...eObjectReplicationPolicyOnDestination.json | 65 + ...UpdateObjectReplicationPolicyOnSource.json | 67 + .../examples/TableOperationDelete.json | 13 + .../examples/TableOperationGet.json | 22 + .../examples/TableOperationList.json | 34 + .../examples/TableOperationPatch.json | 22 + .../examples/TableOperationPut.json | 22 + .../2019-06-01/examples/TableServicesGet.json | 82 + .../examples/TableServicesList.json | 85 + .../2019-06-01/examples/TableServicesPut.json | 147 + .../stable/2019-06-01/file.json | 188 + .../stable/2019-06-01/queue.json | 594 + .../stable/2019-06-01/storage.json | 567 +- .../stable/2019-06-01/table.json | 529 + .../storage/resource-manager/readme.md | 4 + .../storage/resource-manager/readme.python.md | 80 +- .../examples/Caches_CreateOrUpdate.json | 97 + .../2020-03-01/examples/Caches_Delete.json | 19 + .../2020-03-01/examples/Caches_Flush.json | 19 + .../2020-03-01/examples/Caches_Get.json | 47 + .../2020-03-01/examples/Caches_List.json | 84 + .../examples/Caches_ListByResourceGroup.json | 85 + .../2020-03-01/examples/Caches_Start.json | 19 + .../2020-03-01/examples/Caches_Stop.json | 19 + .../2020-03-01/examples/Caches_Update.json | 60 + .../examples/Caches_UpgradeFirmware.json | 19 + .../2020-03-01/examples/Operations_List.json | 35 + .../stable/2020-03-01/examples/Skus_List.json | 86 + .../StorageTargets_CreateOrUpdate.json | 84 + .../examples/StorageTargets_Delete.json | 20 + .../examples/StorageTargets_Get.json | 37 + .../examples/StorageTargets_ListByCache.json | 78 + .../2020-03-01/examples/UsageModels_List.json | 35 + .../stable/2020-03-01/storagecache.json | 1777 + .../resource-manager/readme.az.md | 24 + .../resource-manager/readme.cli.md | 9 + .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.java.md | 15 + .../storagecache/resource-manager/readme.md | 11 +- .../resource-manager/readme.ruby.md | 11 + .../stable/2016-11-01/examples/CreateJob.json | 20 +- .../stable/2016-11-01/examples/DeleteJob.json | 12 +- .../stable/2016-11-01/examples/GetJob.json | 12 +- .../examples/ListBitLockerKeys.json | 6 +- .../examples/ListJobsInResourceGroup.json | 8 +- .../examples/ListJobsInSubscription.json | 10 +- .../stable/2016-11-01/examples/UpdateJob.json | 12 +- .../resource-manager/readme.az.md | 18 + .../resource-manager/readme.cli.md | 20 + .../resource-manager/readme.md | 1 + .../resource-manager/readme.python.md | 27 + .../storagesync/resource-manager/readme.az.md | 25 + .../storagesync/resource-manager/readme.md | 1 + .../resource-manager/readme.python.md | 25 + .../examples/createLegacySubscription.json | 8 +- .../examples/createSubscription.json | 6 + .../examples/renameSubscription.json | 2 +- .../2019-10-01-preview/subscriptions.json | 14 + .../2016-06-01/examples/getSubscription.json | 22 + .../2016-06-01/examples/listLocations.json | 28 + .../examples/listSubscriptions.json | 26 + .../2016-06-01/examples/listTenants.json | 22 + .../stable/2016-06-01/subscriptions.json | 20 + .../resource-manager/readme.az.md | 12 + .../resource-manager/readme.go.md | 10 + .../subscription/resource-manager/readme.md | 20 +- ...labilityForSupportTicketCommunication.json | 20 + ...CheckNameAvailabilityWithSubscription.json | 19 + ...tForSpecificBatchAccountForActiveJobs.json | 92 + ...SpecificBatchAccountForDedicatedCores.json | 92 + ...ecificBatchAccountForLowPriorityCores.json | 92 + ...TicketForSpecificBatchAccountForPools.json | 92 + ...CreateBatchQuotaTicketForSubscription.json | 92 + ...teBillingSupportTicketForSubscription.json | 72 + ...CreateCoresQuotaTicketForSubscription.json | 90 + .../examples/CreateGenericQuotaTicket.json | 72 + ...eLearningQuotaTicketForDedicatedCores.json | 92 + ...earningQuotaTicketForLowPriorityCores.json | 92 + .../CreateSqlDatabaseQuotaTicketForDTUs.json | 92 + ...reateSqlDatabaseQuotaTicketForServers.json | 92 + ...ateSqlDatawarehouseQuotaTicketForDTUs.json | 92 + ...SqlDatawarehouseQuotaTicketForServers.json | 92 + ...teSubMgmtSupportTicketForSubscription.json | 72 + .../CreateSupportTicketCommunication.json | 38 + ...TechnicalSupportTicketForSubscription.json | 78 + ...onDetailsForSubscriptionSupportTicket.json | 25 + .../examples/GetProblemClassification.json | 19 + .../2020-04-01/examples/GetService.json | 22 + .../GetSubscriptionSupportTicketDetails.json | 48 + ...nicationsForSubscriptionSupportTicket.json | 41 + .../2020-04-01/examples/ListOperations.json | 94 + .../examples/ListProblemClassifications.json | 46 + .../2020-04-01/examples/ListServices.json | 88 + .../ListSupportTicketsBySubscription.json | 91 + ...OnOrAfterAndInOpenStateBySubscription.json | 92 + ...pportTicketsInOpenStateBySubscription.json | 92 + ...nicationsForSubscriptionSupportTicket.json | 42 + ...criptionSupportTicketCreatedOnOrAfter.json | 42 + ...DetailsOfSupportTicketForSubscription.json | 69 + ...everityOfSupportTicketForSubscription.json | 55 + ...eStatusOfSupportTicketForSubscription.json | 55 + .../stable/2020-04-01/support.json | 1537 + .../support/resource-manager/readme.go.md | 10 + .../support/resource-manager/readme.java.md | 28 +- .../support/resource-manager/readme.md | 12 +- .../support/resource-manager/readme.ruby.md | 11 + .../resource-manager/readme.typescript.md | 4 +- .../2019-11-01-preview/adf/datafactory.json | 4332 +++ .../adf/entityTypes/DataFlow.json | 137 + .../adf/entityTypes/Dataset.json | 2793 ++ .../adf/entityTypes/LinkedService.json | 5689 +++ .../adf/entityTypes/NoteBook.json | 251 + .../adf/entityTypes/Pipeline.json | 5836 ++++ .../adf/entityTypes/SparkJobDefinition.json | 123 + .../adf/entityTypes/SqlScript.json | 108 + .../adf/entityTypes/Trigger.json | 638 + .../ActivityRuns_QueryByPipelineRun.json | 110 + .../DataFlowDebugSession_AddDataFlow.json | 109 + .../examples/DataFlowDebugSession_Create.json | 43 + .../examples/DataFlowDebugSession_Delete.json | 21 + .../DataFlowDebugSession_ExecuteCommand.json | 34 + ...DataFlowDebugSession_QueryByWorkspace.json | 32 + .../adf/examples/DataFlows_Create.json | 106 + .../adf/examples/DataFlows_Delete.json | 12 + .../adf/examples/DataFlows_Get.json | 65 + .../examples/DataFlows_ListByWorkspace.json | 67 + .../adf/examples/DataFlows_Update.json | 106 + .../adf/examples/Datasets_Create.json | 96 + .../adf/examples/Datasets_Delete.json | 12 + .../adf/examples/Datasets_Get.json | 56 + .../examples/Datasets_ListByWorkspace.json | 57 + .../adf/examples/Datasets_Update.json | 86 + .../adf/examples/LinkedServices_Create.json | 47 + .../adf/examples/LinkedServices_Delete.json | 12 + .../adf/examples/LinkedServices_Get.json | 38 + .../LinkedServices_ListByWorkspace.json | 39 + .../adf/examples/LinkedServices_Update.json | 49 + .../adf/examples/NoteBooks_Create.json | 124 + .../adf/examples/NoteBooks_Delete.json | 12 + .../adf/examples/NoteBooks_Get.json | 75 + .../examples/NoteBooks_ListByWorkspace.json | 76 + .../NoteBooks_ListSummaryByWorkSpace.json | 76 + .../adf/examples/NoteBooks_Update.json | 124 + .../adf/examples/PipelineRuns_Cancel.json | 11 + .../adf/examples/PipelineRuns_Get.json | 37 + .../PipelineRuns_QueryByWorkspace.json | 77 + .../adf/examples/Pipelines_Create.json | 172 + .../adf/examples/Pipelines_CreateRun.json | 28 + .../adf/examples/Pipelines_Delete.json | 12 + .../adf/examples/Pipelines_Get.json | 91 + .../examples/Pipelines_ListByWorkspace.json | 87 + .../adf/examples/Pipelines_Update.json | 146 + .../examples/SparkJobDefinitions_Create.json | 80 + .../examples/SparkJobDefinitions_Debug.json | 167 + .../examples/SparkJobDefinitions_Delete.json | 12 + .../examples/SparkJobDefinitions_Execute.json | 147 + .../adf/examples/SparkJobDefinitions_Get.json | 53 + .../SparkJobDefinitions_ListByWorkspace.json | 54 + .../examples/SparkJobDefinitions_Update.json | 80 + .../adf/examples/SqlScripts_Create.json | 56 + .../adf/examples/SqlScripts_Delete.json | 12 + .../adf/examples/SqlScripts_Get.json | 41 + .../examples/SqlScripts_ListByWorkspace.json | 42 + .../adf/examples/SqlScripts_Update.json | 56 + .../TriggerRuns_QueryByWorkspace.json | 50 + .../adf/examples/TriggerRuns_Rerun.json | 20 + .../adf/examples/Triggers_Create.json | 79 + .../adf/examples/Triggers_Delete.json | 12 + .../adf/examples/Triggers_Get.json | 53 + .../Triggers_GetEventSubscriptionStatus.json | 16 + .../examples/Triggers_ListByWorkspace.json | 55 + .../adf/examples/Triggers_Start.json | 11 + .../adf/examples/Triggers_Stop.json | 11 + .../examples/Triggers_SubscribeToEvents.json | 21 + .../Triggers_UnsubscribeFromEvents.json | 21 + .../adf/examples/Triggers_Update.json | 81 + .../RoleAssignments_CreateRoleAssignment.json | 28 + ...eAssignments_DeleteRoleAssignmentById.json | 20 + ...RoleAssignments_GetRoleAssignmentById.json | 25 + ...Assignments_ListCallerRoleAssignments.json | 23 + .../RoleAssignments_ListRoleAssignments.json | 36 + .../examples/Roles_GetRoleById.json | 25 + .../examples/Roles_ListRoles.json | 33 + .../WorkspaceAcl_GetAccessControlInfo.json | 26 - ...rkspaceAcl_SetWorkspaceAdministrators.json | 30 - .../2019-11-01-preview/roleAssignments.json | 394 + .../preview/2019-11-01-preview/roles.json | 173 + .../2019-11-01-preview/workspaceAcl.json | 247 - specification/synapse/data-plane/readme.md | 8 +- .../ApprovePrivateEndpointConnection.json | 63 + .../examples/CreateOrUpdateWorkspace.json | 25 +- .../DeletePrivateEndpointConnection.json | 25 + .../examples/GetIpFirewallRule.json | 31 + .../GetPrivateEndpointConnection.json | 37 + .../examples/GetPrivateLinkResource.json | 27 + .../examples/GetWorkspace.json | 20 +- .../IntegrationRuntimeNodes_Delete.json | 14 + .../examples/IntegrationRuntimeNodes_Get.json | 42 + .../IntegrationRuntimeNodes_GetIpAddress.json | 24 + .../IntegrationRuntimeNodes_Update.json | 46 + .../IntegrationRuntimeObjectMetadata_Get.json | 432 + ...egrationRuntimeObjectMetadata_Refresh.json | 27 + .../examples/IntegrationRuntimes_Create.json | 37 + .../examples/IntegrationRuntimes_Delete.json | 21 + .../examples/IntegrationRuntimes_Get.json | 40 + ...IntegrationRuntimes_GetConnectionInfo.json | 28 + ...IntegrationRuntimes_GetMonitoringData.json | 34 + .../IntegrationRuntimes_GetStatus.json | 71 + .../IntegrationRuntimes_ListAuthKeys.json | 24 + .../IntegrationRuntimes_ListByWorkspace.json | 34 + ...IntegrationRuntimes_RegenerateAuthKey.json | 26 + .../examples/IntegrationRuntimes_Start.json | 34 + .../examples/IntegrationRuntimes_Stop.json | 21 + .../IntegrationRuntimes_SyncCredentials.json | 12 + .../examples/IntegrationRuntimes_Update.json | 34 + .../examples/IntegrationRuntimes_Upgrade.json | 12 + .../ListPrivateEndpointConnections.json | 40 + .../examples/ListPrivateLinkResources.json | 30 + .../examples/UpdateSqlPool.json | 3 +- .../2019-06-01-preview/firewallRule.json | 46 + .../integrationRuntime.json | 2837 ++ .../privateEndpointConnections.json | 337 + .../privateLinkResources.json | 187 + .../preview/2019-06-01-preview/sqlPool.json | 3 + .../preview/2019-06-01-preview/workspace.json | 11 + .../synapse/resource-manager/readme.java.md | 13 + .../synapse/resource-manager/readme.md | 7 + ...pacity.json => EnvironmentsPatchTags.json} | 11 +- .../timeseriesinsights.json | 35 +- .../examples/Clusters_CreateOrUpdate.json | 48 + .../examples/Clusters_Delete.json | 14 + .../examples/Clusters_Get.json | 28 + .../examples/Clusters_List.json | 30 + .../examples/Clusters_Update.json | 50 + .../Locations_CheckQuotaAvailability.json | 18 + .../examples/Operations_List.json | 22 + .../PrivateClouds_CreateOrUpdate.json | 112 + .../examples/PrivateClouds_Delete.json | 13 + .../examples/PrivateClouds_Get.json | 57 + .../examples/PrivateClouds_List.json | 60 + .../PrivateClouds_ListAdminCredentials.json | 18 + .../PrivateClouds_ListInSubscription.json | 57 + .../examples/PrivateClouds_Update.json | 113 + .../preview/2019-08-09-preview/vmware.json | 1277 + .../vmware/resource-manager/readme.csharp.md | 15 + .../vmware/resource-manager/readme.md | 96 + .../vmware/resource-manager/readme.python.md | 27 + .../resource-manager/readme.typescript.md | 14 + .../examples/CheckQuotaAvailability.json | 18 + .../2019-08-09-preview/vmwarevirtustream.json | 77 + .../stable/2019-08-01/CommonDefinitions.json | 23 + .../stable/2019-08-01/StaticSites.json | 1916 ++ .../stable/2019-08-01/WebApps.json | 392 +- ...veRejectSitePrivateEndpointConnection.json | 54 + .../examples/CreateOrUpdateStaticSite.json | 67 + ...ateStaticSiteBuildFunctionAppSettings.json | 37 + .../CreateOrUpdateStaticSiteCustomDomain.json | 30 + ...OrUpdateStaticSiteFunctionAppSettings.json | 36 + .../CreateUserRolesInvitationLink.json | 28 + .../DeleteSitePrivateEndpointConnection.json | 23 + .../2019-08-01/examples/DeleteStaticSite.json | 16 + .../examples/DeleteStaticSiteBuild.json | 17 + .../DeleteStaticSiteCustomDomain.json | 17 + .../examples/DeleteStaticSiteUser.json | 13 + .../2019-08-01/examples/DetachStaticSite.json | 16 + .../examples/GetAllStaticSites.json | 32 + .../GetSitePrivateEndpointConnection.json | 27 + .../examples/GetSitePrivateLinkResources.json | 31 + .../2019-08-01/examples/GetStaticSite.json | 29 + .../examples/GetStaticSiteBuild.json | 25 + .../examples/GetStaticSiteBuilds.json | 40 + .../examples/GetStaticSiteCustomDomains.json | 24 + .../2019-08-01/examples/GetStaticSites.json | 33 + ...istStaticSiteBuildFunctionAppSettings.json | 29 + .../ListStaticSiteBuildFunctions.json | 25 + .../ListStaticSiteFunctionAppSettings.json | 28 + .../examples/ListStaticSiteFunctions.json | 24 + .../examples/ListStaticSiteSecrets.json | 18 + .../examples/ListStaticSiteUsers.json | 27 + .../2019-08-01/examples/PatchStaticSite.json | 53 + .../examples/ResetStaticSiteApiKey.json | 17 + .../examples/UpdateStaticSiteUser.json | 28 + .../ValidateStaticSiteCustomDomain.json | 17 + .../web/resource-manager/readme.cli.md | 247 +- specification/web/resource-manager/readme.md | 2 + .../examples/UpdateMultipleActivationKey.json | 2 +- .../2019-09-16-preview/windowsesu.json | 97 +- .../resource-manager/readme.python.md | 6 +- .../windowsiot/resource-manager/readme.az.md | 24 + .../windowsiot/resource-manager/readme.cli.md | 9 + .../windowsiot/resource-manager/readme.md | 15 + .../resource-manager/readme.python.md | 1 + specificationRepositoryConfiguration.json | 10 + 4717 files changed, 587034 insertions(+), 18254 deletions(-) create mode 100644 .github/assignment.yml create mode 100644 documentation/FAQ.md create mode 100644 specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettings.json create mode 100644 specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettingsUpdate.json create mode 100644 specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json create mode 100644 specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json rename specification/applicationinsights/resource-manager/Microsoft.Insights/preview/{2018-05-01 => 2018-05-01-preview}/componentProactiveDetection_API.json (88%) create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/components_API.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsCreate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsDelete.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsGet.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsList.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsListByResourceGroup.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurge.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurgeStatus.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdateTagsOnly.json rename specification/applicationinsights/resource-manager/Microsoft.Insights/preview/{2018-05-01 => 2018-05-01-preview}/examples/ProactiveDetectionConfigurationGet.json (100%) rename specification/applicationinsights/resource-manager/Microsoft.Insights/preview/{2018-05-01 => 2018-05-01-preview}/examples/ProactiveDetectionConfigurationUpdate.json (98%) rename specification/applicationinsights/resource-manager/Microsoft.Insights/preview/{2018-05-01 => 2018-05-01-preview}/examples/ProactiveDetectionConfigurationsList.json (100%) create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/Operations_List.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/WebTestResultsTestResultFile.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json create mode 100644 specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json create mode 100644 specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json create mode 100644 specification/automation/resource-manager/readme.cli.md delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json delete mode 100644 specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json create mode 100644 specification/azsadmin/resource-manager/commerce/readme.azsautogen.md create mode 100644 specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md create mode 100644 specification/azsadmin/resource-manager/keyvault/readme.azsautogen.md create mode 100644 specification/azsadmin/resource-manager/storage/readme.azsautogen.md create mode 100644 specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md create mode 100644 specification/azsadmin/resource-manager/update/readme.azsautogen.md create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json create mode 100644 specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json create mode 100644 specification/azure-kusto/resource-manager/readme.az.md create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyCreate.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyDelete.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyGet.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyList.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyListBySubscription.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyMinCreate.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkPolicyUpdate.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkResourceGet.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/examples/AzureADPrivateLinkResourceListGet.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkForAzureAD.json create mode 100644 specification/azureactivedirectory/resource-manager/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkResources.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdatePostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateSqlInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateSqlServerRegistration.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateSqlServerWithRegistrationGroup.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeleteHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeletePostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeleteSqlInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeleteSqlServer.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeleteSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/DeleteSqlServerRegistration.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetPostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetSqlInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetSqlServer.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/GetSqlServerRegistration.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupPostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupSqlInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupSqlServer.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListByResourceGroupSqlServerRegistration.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListOperation.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListSubscriptionHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListSubscriptionPostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListSubscriptionSqlIInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListSubscriptionSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/ListSubscriptionSqlServerRegistration.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/UpdateHybridDataManager.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/UpdatePostgresInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/UpdateSqlInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/UpdateSqlServerInstance.json create mode 100644 specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/UpdateSqlServerRegistration.json rename specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/{BatchAccountCreate_Private.json => PrivateBatchAccountCreate.json} (100%) create mode 100644 specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json create mode 100644 specification/blockchain/resource-manager/readme.az.md create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_Get.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_List.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Delete.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Get.json create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_List.json rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => managementGroupBPAssignment}/WhoIsBlueprint_Action.json (77%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignmentOperation_Get.json (95%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignmentOperation_List.json (95%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignment_Create_SystemAssignedMSI.json (95%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignment_Create_UserAssignedMSI.json (96%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignment_Delete.json (92%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignment_Get.json (92%) rename specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/{ => subscriptionBPAssignment}/BlueprintAssignment_List.json (93%) create mode 100644 specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/WhoIsBlueprint_Action.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_DisableCustomHttps.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/EdgeNodes_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_LoadContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Start.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Stop.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Operations_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_GenerateSsoUri.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListByResourceGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListSupportedOptimizationTypes.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ResourceUsage_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ValidateProbe.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListManagedRuleSets.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListPolicies.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPatchPolicy.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyDelete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyGet.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreate.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreateWithIdentity.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileDelete.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileGet.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdate.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdateWithIdentity.json create mode 100644 specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/OperationsList.json create mode 100644 specification/changeanalysis/resource-manager/readme.csharp.md create mode 100644 specification/changeanalysis/resource-manager/readme.go.md create mode 100644 specification/changeanalysis/resource-manager/readme.md create mode 100644 specification/changeanalysis/resource-manager/readme.python.md create mode 100644 specification/changeanalysis/resource-manager/readme.ruby.md create mode 100644 specification/changeanalysis/resource-manager/readme.typescript.md create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModel.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModelAuthorization.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResult.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResultWithErrors.json create mode 100644 specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulAddUserToAccessListRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulGetApplicationUserAccessListRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulRemoveUserFromAccessListRequest.json delete mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulReplacesUsersFromAccessListRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json create mode 100644 specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json create mode 100644 specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json create mode 100644 specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json create mode 100644 specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeletePrivateEndpointConnection.json create mode 100644 specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetPrivateEndpointConnection.json create mode 100644 specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListPrivateLinkResources.json create mode 100644 specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/PutPrivateEndpointConnection.json create mode 100644 specification/cognitiveservices/resource-manager/readme.cli.md create mode 100644 specification/common-types/resource-management/v1/privatelinks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVmssVM.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingAccount.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingProfile.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsBySubscription.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Export.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Import.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunList.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsCreate_Spot.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsCreate_Update.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsDelete.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsGet.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsGetAgentPoolAvailableVersions.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsGetUpgradeProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/AgentPoolsList.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersCreate_Update.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersDelete.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersGet.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersGetAccessProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersGetUpgradeProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersList.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersListByResourceGroup.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersListClusterCredentialResult.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersResetAADProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersResetServicePrincipalProfile.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersRotateClusterCertificates.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/examples/ManagedClustersUpdateTags.json create mode 100644 specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2020-03-01/managedClusters.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableCreate.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDelete.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDeleteEntity.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableGet.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableInsertEntity.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableMergeEntity.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntities.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntitiesWithPartitionAndRowKey.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableUpdateEntity.json create mode 100644 specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/table.json create mode 100644 specification/cosmos-db/data-plane/readme.go.md create mode 100644 specification/cosmos-db/data-plane/readme.md create mode 100644 specification/cosmos-db/data-plane/readme.nodejs.md create mode 100644 specification/cosmos-db/data-plane/readme.typescript.md create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json create mode 100644 specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/CheckEligibilityPost.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsDimensions.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsDimensions.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsQuery.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateView.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewCreateOrUpdate.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewDelete.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewList.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionAlerts.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionForecast.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewCreateOrUpdateByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewDeleteByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewListByResourceGroup.json create mode 100644 specification/cost-management/resource-manager/readme.az.md create mode 100644 specification/cost-management/resource-manager/readme.cli.md create mode 100644 specification/cost-management/resource-manager/readme.python.md create mode 100644 specification/customproviders/resource-manager/readme.az.md create mode 100644 specification/customproviders/resource-manager/readme.cli.md create mode 100644 specification/customproviders/resource-manager/readme.trenton.md create mode 100644 specification/datashare/resource-manager/readme.az.md create mode 100644 specification/datashare/resource-manager/readme.cli.md create mode 100644 specification/datashare/resource-manager/readme.python.md create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ActiveApplication_ListBySessionHost.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/OperationDescription_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/StartMenuItem_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Disconnect_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_ListByHostPool.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_SendMessage_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ActiveApplication_ListBySessionHost.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/OperationDescription_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/StartMenuItem_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Disconnect_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_ListByHostPool.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_SendMessage_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ActiveApplication_ListBySessionHost.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/OperationDescription_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/StartMenuItem_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Disconnect_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_List.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_ListByHostPool.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_SendMessage_Post.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Create.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Delete.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Get.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListByResourceGroup.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListBySubscription.json create mode 100644 specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Update.json create mode 100644 specification/desktopvirtualization/resource-manager/readme.az.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.cli.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.csharp.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.go.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.java.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.node.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.python.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.ruby.md create mode 100644 specification/desktopvirtualization/resource-manager/readme.typescript.md create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json create mode 100644 specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json create mode 100644 specification/devops/resource-manager/readme.az.md create mode 100644 specification/devops/resource-manager/readme.cli.md create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/common/v1/definitions.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json delete mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/operations-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json delete mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/consumergroups.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/eventhubs.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/namespaces.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/operations.json create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/sku.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/assets/frontdoor.svg create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailability.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorCreate.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDelete.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDisableHttps.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorEnableHttps.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointGet.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointList.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorGet.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorList.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorListAll.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorPurgeContent.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineCreate.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineDelete.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineGet.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineList.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorValidateCustomDomain.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.json create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.specs.md create mode 100644 specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/network.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/HanaOperations_List.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json create mode 100644 specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json create mode 100644 specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_OperationsList.json create mode 100644 specification/hardwaresecuritymodules/resource-manager/readme.az.md create mode 100644 specification/hardwaresecuritymodules/resource-manager/readme.cli.md create mode 100644 specification/hardwaresecuritymodules/resource-manager/readme.python.md create mode 100644 specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetClusterVirtualMachines.json create mode 100644 specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/RestartVirtualMachinesOperation.json create mode 100644 specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json create mode 100644 specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/readme.csharp.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.go.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.java.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.nodejs.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.python.md create mode 100644 specification/hybridkubernetes/resource-manager/readme.ruby.md create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json create mode 100644 specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json rename specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/{devices_attestations_set.json => devices_attestations_set_x509.json} (85%) create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json create mode 100644 specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json create mode 100644 specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json create mode 100644 specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.csharp.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.go.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.java.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.python.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.ruby.md create mode 100644 specification/kubernetesconfiguration/resource-manager/readme.typescript.md create mode 100644 specification/logic/resource-manager/readme.az.md create mode 100644 specification/logic/resource-manager/readme.cli.md create mode 100644 specification/logic/resource-manager/readme.python.md create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListSkus.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListUsages.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListVMSizesResult.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceFeatures.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceQuotasByVMFamily.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/amlComputeListNodes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicDataFactoryCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getComputes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesByResourceGroup.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesBySubscription.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listKeysAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/patchAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/resyncWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateQuota.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceDeletePrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceGetPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceListPrivateLinkResources.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspacePutPrivateEndpointConnection.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json create mode 100644 specification/machinelearningservices/resource-manager/readme.az.md create mode 100644 specification/machinelearningservices/resource-manager/readme.cli.md create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json create mode 100644 specification/mariadb/resource-manager/readme.cli.md create mode 100644 specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json delete mode 100644 specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreByName.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/common.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/ExposingAvailableOperations.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Delete.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Get.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetByResourceGroup.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetBySubscription.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/ListKeys.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Patch.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Put.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/RegenerateKey.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/common.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/ExposingAvailableOperations.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Delete.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Get.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetByResourceGroup.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetBySubscription.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/ListKeys.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Patch.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Put.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/RegenerateKey.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/proxy.json create mode 100644 specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableDelegations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewall.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/bastionHost.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/endpointService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableServerVariablesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthTest.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsSubscriptionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallFqdnTagsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutInHub.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithAdditionalProperties.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithIpGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithMgmtSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckDnsNameAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibility.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/EndpointServicesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitARPTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableSummaryList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitStats.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsArpTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteProviderList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GetVirtualWanVpnServerConfigurations.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTablePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPutWithNICIPConfiguration.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateStandardSku.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithInboundNatPool.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithZones.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListSimple.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListVmss.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveNSGList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveRouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceLoadBalancerList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileCreateConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetConfigOnly.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetWithContainerNic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreateWithRule.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualAppliancePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAvailableProvidersListGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAzureReachabilityReportGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStart.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorV2Create.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectivityCheck.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogConfigure.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogStatusQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherIpFlowVerify.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNextHopGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureQueryStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureStop.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCapturesList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherSecurityGroupViewGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTopologyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootResultQuery.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/OperationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreateForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGetForManualApproval.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDns.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateCustomizedValues.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateDefaults.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleListByRouteFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreateWithRoute.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceCommunityList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreateWithDefinition.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceTagsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateServiceEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetPrepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetUnprepareNetworkPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageListSpacedLocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Delete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Get.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2List.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Put.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCheckIPAddressAvailability.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpoints.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateWithBgpCommunities.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionsList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayLearnedRoutes.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStopPacketCapture.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysListConnections.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetResourceNavigationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetServiceAssociationLinks.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithServiceAssociationLink.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithSubnetDelegation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListUsage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapCreate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWanSupportedSecurityProviders.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpListAll.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmNetworkInterfaceList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmPublicIpList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayReset.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationPut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkListByVpnSite.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteList.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitesConfigurationDownload.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListAllPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListPolicies.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRoutePort.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/firewallPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipAllocation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipGroups.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/loadBalancer.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/natGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/network.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkProfile.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkWatcher.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/operation.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateEndpoint.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateLinkService.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeFilter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeTable.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceCommunity.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/usage.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetwork.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualRouter.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualWan.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json delete mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json create mode 100644 specification/operationalinsights/resource-manager/common/v1/types.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CheckServiceProviderAvailability.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateDirectPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateExchangePeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringWithExchangeRouteServer.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredPrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredPrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringReceivedRoutes.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredPrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListDirectPeeringLocations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListExchangePeeringLocations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListLegacyPeerings.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeerAsnsBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringOperations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceCountriesBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceLocationsBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceProviders.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesByResourceGroup.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsByResourceGroup.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPrefixesByPeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredAsnsByPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredPrefixesByPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringServiceTags.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringTags.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/peering.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json create mode 100644 specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json create mode 100644 specification/portal/resource-manager/readme.az.md create mode 100644 specification/portal/resource-manager/readme.cli.md create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json create mode 100644 specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json create mode 100644 specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json create mode 100644 specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json create mode 100644 specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json create mode 100644 specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json create mode 100644 specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json create mode 100644 specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json create mode 100644 specification/redhatopenshift/resource-manager/readme.go.md create mode 100644 specification/redhatopenshift/resource-manager/readme.md create mode 100644 specification/redhatopenshift/resource-manager/readme.python.md create mode 100644 specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json create mode 100644 specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json create mode 100644 specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPublicCustomIPs.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json create mode 100644 specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json create mode 100644 specification/securityinsights/resource-manager/readme.az.md create mode 100644 specification/securityinsights/resource-manager/readme.cli.md create mode 100644 specification/serialconsole/resource-manager/readme.cli.md create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateApplication-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateName-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-4.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DeleteBackupPolicy.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableApplicationBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisablePartitionBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableServiceBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableApplicationBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnablePartitionBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableServiceBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-4.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoByName-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationsEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyByName.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetChaosEvents.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterVersion-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetCorrelatedEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress-Running.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoByName-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetFaultOperationList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreContent.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreInfo.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfo-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress-Running.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodesEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupConfigurationInfo.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-4.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestartProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestoreProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionsEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfo-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress-Running.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicaEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicasEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-4.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoByName-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServicesEventList.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-3.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionById.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionByPath.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi_Post.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.autoscale.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get_upgrade.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/create_update.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/create_update.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/create_update.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/create.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list_value.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/create_update.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/delete.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/get.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/list.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/RestorePartition.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeApplicationBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumePartitionBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeServiceBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/StartClusterConfigurationUpgrade-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SubmitPropertyBatch-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendApplicationBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendPartitionBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendServiceBackup.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateBackupPolicy.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-1.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-2.json create mode 100644 specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/servicefabric.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json create mode 100644 specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseExtendedAuditingSettingsList.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ServerExtendedAuditingSettingsList.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedBlobContainersList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedFileSharesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet_Stats.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_AccessTier.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_NFS.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesRestore.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationDelete.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPatch.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPutWithMetadata.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateEndpointConnections.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationDelete.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPatch.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesGet.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesList.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesPut.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/queue.json create mode 100644 specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/table.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_CreateOrUpdate.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Flush.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_ListByResourceGroup.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Start.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Stop.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Update.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_UpgradeFirmware.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Operations_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Skus_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_CreateOrUpdate.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_ListByCache.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/UsageModels_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/storagecache.json create mode 100644 specification/storagecache/resource-manager/readme.az.md create mode 100644 specification/storagecache/resource-manager/readme.cli.md create mode 100644 specification/storageimportexport/resource-manager/readme.az.md create mode 100644 specification/storageimportexport/resource-manager/readme.cli.md create mode 100644 specification/storageimportexport/resource-manager/readme.python.md create mode 100644 specification/storagesync/resource-manager/readme.az.md create mode 100644 specification/storagesync/resource-manager/readme.python.md create mode 100644 specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/getSubscription.json create mode 100644 specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listLocations.json create mode 100644 specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listSubscriptions.json create mode 100644 specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listTenants.json create mode 100644 specification/subscription/resource-manager/readme.az.md create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json create mode 100644 specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/datafactory.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json delete mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_GetAccessControlInfo.json delete mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_SetWorkspaceAdministrators.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json create mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json delete mode 100644 specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json create mode 100644 specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json rename specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/{EnvironmentsPatchSkuCapacity.json => EnvironmentsPatchTags.json} (83%) create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Delete.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Get.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_List.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Update.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Locations_CheckQuotaAvailability.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Operations_List.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Get.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_List.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Update.json create mode 100644 specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/vmware.json create mode 100644 specification/vmware/resource-manager/readme.csharp.md create mode 100644 specification/vmware/resource-manager/readme.md create mode 100644 specification/vmware/resource-manager/readme.python.md create mode 100644 specification/vmware/resource-manager/readme.typescript.md create mode 100644 specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/CheckQuotaAvailability.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json create mode 100644 specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json create mode 100644 specification/windowsiot/resource-manager/readme.az.md create mode 100644 specification/windowsiot/resource-manager/readme.cli.md diff --git a/.azure-pipelines-preproduction/package-lock.json b/.azure-pipelines-preproduction/package-lock.json index 4c785b01a33d..a061928d9a9d 100644 --- a/.azure-pipelines-preproduction/package-lock.json +++ b/.azure-pipelines-preproduction/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@azure/avocado": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.2.tgz", - "integrity": "sha512-DU4TD/+U0aXLjz4bGW+vxst4tXm3/HPiOrNh1BcY00rHRnRbR+ZY7AL/nA4+1P6LVPu8msLUXp6HTqqe4QrbHg==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.3.tgz", + "integrity": "sha512-OOCdgdwwt/PEYVesm1z1WVCX7YMNySdZX4RFN/+JI6u0nRsi+n3JHfwkytNyhSrwGKBY/OqUEyQcNFQkTw4OFg==", "dev": true, "requires": { "@azure/openapi-markdown": "^0.9.1", @@ -24,14 +24,14 @@ } }, "@azure/oad": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.7.0.tgz", - "integrity": "sha512-voz6Q71GmJpRAThFG5aDWqHiQCc6eL1ajAR0JqbqCsqStQdBauGkGZhOeawkNJIgHnFY3GG9GO/fWhfp36uBWg==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.7.1.tgz", + "integrity": "sha512-KTlb+aQRFyKbd4ezie9wA5bthI+9Cia+j59PfYRyt8AD0L1RjW7DNvTXbpK7hOxRYPJdd/+1alczXRnWr99Pbw==", "dev": true, "requires": { "@ts-common/fs": "^0.2.0", "@ts-common/json-parser": "^0.7.0", - "autorest": "^2.0.0", + "autorest": "^2.0.4407", "glob": "^7.1.3", "js-yaml": "^3.13.1", "json-pointer": "^0.6.0", @@ -88,9 +88,9 @@ } }, "@azure/rest-api-specs-scripts": { - "version": "0.6.7", - "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.6.7.tgz", - "integrity": "sha512-OZ10yfmntb3xJwXjzQHU0VsxinthL2QiV8sPX6F5Pd2PDE7+GOc89nxqjtdntZWW4tlEkhN9AOmQiP4d5Fe3xA==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.9.0.tgz", + "integrity": "sha512-RqIxuqDzLswM+F/3AQyMDEmEVGnL9rY448AMxpCqj14kRSl8saAmC2gvS8N2uGS/d9OD5SjCYfgt6Umx9LvF9Q==", "dev": true, "requires": { "@azure/avocado": "^0.4.1", @@ -101,7 +101,7 @@ "fs-extra": "^7.0.1", "glob": "^7.1.3", "js-yaml": "^3.13.1", - "oav": "0.20.9", + "oav": "0.21.5", "request": "^2.88.0" }, "dependencies": { @@ -187,12 +187,12 @@ } }, "@octokit/endpoint": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.5.3.tgz", - "integrity": "sha512-EzKwkwcxeegYYah5ukEeAI/gYRLv2Y9U5PpIsseGSFDk+G3RbipQGBs8GuYS1TLCtQaqoO66+aQGtITPalxsNQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.1.tgz", + "integrity": "sha512-pOPHaSz57SFT/m3R5P8MUu4wLPszokn5pXcB/pzavLTQf2jbU+6iayTvzaY6/BiotuRS0qyEUkx3QglT4U958A==", "dev": true, "requires": { - "@octokit/types": "^2.0.0", + "@octokit/types": "^2.11.1", "is-plain-object": "^3.0.0", "universal-user-agent": "^5.0.0" }, @@ -234,14 +234,14 @@ } }, "@octokit/request": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.2.tgz", - "integrity": "sha512-7NPJpg19wVQy1cs2xqXjjRq/RmtSomja/VSWnptfYwuBxLdbYh2UjhGi0Wx7B1v5Iw5GKhfFDQL7jM7SSp7K2g==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.2.tgz", + "integrity": "sha512-zKdnGuQ2TQ2vFk9VU8awFT4+EYf92Z/v3OlzRaSh4RIP0H6cvW1BFPXq4XYvNez+TPQjqN+0uSkCYnMFFhcFrw==", "dev": true, "requires": { - "@octokit/endpoint": "^5.5.0", - "@octokit/request-error": "^1.0.1", - "@octokit/types": "^2.0.0", + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^2.11.1", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", @@ -249,6 +249,17 @@ "universal-user-agent": "^5.0.0" }, "dependencies": { + "@octokit/request-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz", + "integrity": "sha512-rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, "universal-user-agent": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", @@ -296,9 +307,9 @@ } }, "@octokit/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.3.1.tgz", - "integrity": "sha512-rvJP1Y9A/+Cky2C3var1vsw3Lf5Rjn/0sojNl2AjCX+WbpIHYccaJ46abrZoIxMYnOToul6S9tPytUVkFI7CXQ==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.15.0.tgz", + "integrity": "sha512-0mnpenB8rLhBVu8VUklp38gWi+EatjvcEcLWcdProMKauSaQWWepOAybZ714sOGsEyhXPlIcHICggn8HUsCXVw==", "dev": true, "requires": { "@types/node": ">= 8" @@ -527,9 +538,9 @@ "dev": true }, "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, "acorn-globals": { @@ -543,9 +554,9 @@ }, "dependencies": { "acorn": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", - "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -557,9 +568,9 @@ "dev": true }, "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -2639,17 +2650,24 @@ "dev": true }, "handlebars": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.3.tgz", - "integrity": "sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -3096,12 +3114,6 @@ "requires": { "amdefine": ">=0.0.4" } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true } } }, @@ -3222,13 +3234,13 @@ "dev": true }, "json-schema-faker": { - "version": "0.5.0-rc23", - "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc23.tgz", - "integrity": "sha512-lRzFEnp55TihRzMvUBrtvTlM/aHGhCwfes0/T9bN9OiB2n36/SUFxtMn7anYoES+f95eU3viJ/foXKosCwsiJw==", + "version": "0.5.0-rcv.24", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rcv.24.tgz", + "integrity": "sha512-qwuRwv7dnUdqdwuifb6kJAVUKm0mzi4h/mzvMwDKxyWUzjxFCdVH/g9IfKxvc4M7rvAavr8pcx9uO1PNIIWE0g==", "dev": true, "requires": { "json-schema-ref-parser": "^6.1.0", - "jsonpath-plus": "^1.0.0", + "jsonpath-plus": "^2.0.0", "randexp": "^0.5.3" } }, @@ -3284,9 +3296,9 @@ } }, "jsonpath-plus": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-1.1.0.tgz", - "integrity": "sha512-ydqTBOuLcFCUr9e7AxJlKCFgxzEQ03HjnIim0hJSdk2NxD8MOsaMOrRgP6XWEm5q3VuDY5+cRT1DM9vLlGo/qA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-2.0.0.tgz", + "integrity": "sha512-ksXaz9+3SIZ5BMxgr7MQueYcR515VRZPuoDhIymUd1JcF6BnVaYJS7k4NJni4EHhvJaOIGGiPqT8+ifsGp6mBw==", "dev": true }, "jsonschema": { @@ -3354,9 +3366,9 @@ } }, "linq": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.1.tgz", - "integrity": "sha512-BEhjQpbvrKPWlg5m/+PXTHsQoXzzR0UWCvgI8Hm+WtUMtTwPvw9Tay5CWfqsWSVk81wqbHNDFpFXyqBmm4/dqA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.2.tgz", + "integrity": "sha512-AtVkCFwg7dizILt88ent7Bng1OLAnKMWBOLo9Kh7ZPFK8OcfYGi2FEzmr66QJtV7uBYZVf19AbVs0B14rIUi+w==", "dev": true }, "load-json-file": { @@ -3552,18 +3564,18 @@ "dev": true }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", "dev": true }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "dev": true, "requires": { - "mime-db": "1.43.0" + "mime-db": "1.44.0" } }, "minimatch": { @@ -3703,9 +3715,9 @@ } }, "moment": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", - "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", + "version": "2.25.3", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.25.3.tgz", + "integrity": "sha512-PuYv0PHxZvzc15Sp8ybUCoQ+xpyPWvjOuK72a5ovzp2LI32rJXOiIfyoFoYvG3s6EwwrdkMyWuRiEHSZRLJNdg==", "dev": true }, "ms": { @@ -3715,9 +3727,9 @@ "dev": true }, "ms-rest": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", - "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", + "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", "dev": true, "requires": { "duplexer": "^0.1.1", @@ -3838,21 +3850,21 @@ "dev": true }, "oav": { - "version": "0.20.9", - "resolved": "https://registry.npmjs.org/oav/-/oav-0.20.9.tgz", - "integrity": "sha512-ObCpH+R1hBL60cqicybo/XgH89J7+Vi1PS215UZRzcDKvf0Km0EyycVfdfRtvdrrUVdC8AugH3RlXYn5esqKfA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.21.5.tgz", + "integrity": "sha512-UgF51hAZArAI9r4tSUCgJE8IYeh5Q3SLcCukwZ6jrWyG3Y8vXKl12Cs2ycGrbQg16Ygf2v2+Dkhx4RHh7uOyfw==", "dev": true, "requires": { - "@azure/openapi-markdown": "^0.9.0", + "@azure/openapi-markdown": "^0.9.2", "@microsoft.azure/autorest-extension-base": "1.0.13", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/iterator": "^0.3.6", "@ts-common/json": "^0.3.1", - "@ts-common/json-parser": "^0.8.0", + "@ts-common/json-parser": "^0.9.0", "@ts-common/property-set": "^0.1.0", "@ts-common/source-map": "^0.5.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/virtual-fs": "^0.2.0", + "@ts-common/virtual-fs": "^0.3.0", "@types/jsonpath": "^0.2.0", "commonmark": "^0.29.0", "glob": "^5.0.15", @@ -3867,17 +3879,84 @@ "lodash": "^4.17.15", "md5-file": "^4.0.0", "moment": "^2.24.0", - "ms-rest": "^2.5.0", + "ms-rest": "^2.5.4", "swagger-parser": "^6.0.5", "uuid": "^3.3.2", "vscode-jsonrpc": "^3.6.2", "winston": "^3.2.1", "yargs": "^6.6.0", - "yasway": "^1.8.11", + "yasway": "^1.9.3", "yuml2svg": "^4.2.1", "z-schema": "^4.2.2" }, "dependencies": { + "@azure/openapi-markdown": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.2.tgz", + "integrity": "sha512-EhjABbBzHAPK8K88Ya7yHdIKjcU2WSiclIuXSDqs/mYAUym4Z9o7lvIi0Li+mUhFaLAh2V4+OzdIVUdTzJa0Fg==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.3.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/json-parser": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.9.0.tgz", + "integrity": "sha512-how0z/Ak7Bay+feIYfJFVV8UMw8Ky2Czoo5XwN7QigCOlN4HyW6wSNup4zrZ7t6NUB0002tW/+IOKCH2lAVJOg==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/virtual-fs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.3.0.tgz", + "integrity": "sha512-ryoXw52FTLhiexoNBA/hcAlW8gxPhrKEuZODgpCiF0wswNJdg/j+rCb9k1VppJdeIJ30b0Wg+2vPsrOrdnYTIw==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.4.1", + "@types/node-fetch": "^2.5.5", + "async-retry": "^1.3.1", + "node-fetch": "^2.6.0" + } + }, + "@types/node-fetch": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz", + "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==", + "dev": true, + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -3893,6 +3972,15 @@ "lodash": "^4.17.14" } }, + "async-retry": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz", + "integrity": "sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -3910,6 +3998,17 @@ "wrap-ansi": "^2.0.0" } }, + "form-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", + "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -4186,24 +4285,6 @@ "swagger-schema-official": "2.0.0-bab6bed" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } - } - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -4426,9 +4507,9 @@ "dev": true }, "psl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", - "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "pump": { @@ -4448,9 +4529,9 @@ "dev": true }, "qs": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz", - "integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==", + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz", + "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==", "dev": true }, "randexp": { @@ -4649,9 +4730,9 @@ "dev": true }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -4985,9 +5066,9 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { @@ -5390,14 +5471,13 @@ "dev": true }, "uglify-js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.0.tgz", - "integrity": "sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==", + "version": "3.9.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.2.tgz", + "integrity": "sha512-zGVwKslUAD/EeqOrD1nQaBmXIHl1Vw371we8cvS8I6mYK9rmgX5tv8AAeJdfsQ3Kk5mGax2SVV/AizxdNGhl7Q==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "commander": "~2.20.3" }, "dependencies": { "commander": { @@ -5406,13 +5486,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true } } }, @@ -5675,9 +5748,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -5714,9 +5787,9 @@ "dev": true }, "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, "wrap-ansi": { @@ -5815,9 +5888,9 @@ } }, "yasway": { - "version": "1.8.11", - "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.11.tgz", - "integrity": "sha512-LhMkY455qHEV7rKMjfvwgXkoB26JJkuK4hqQnbjNXjpuT/lfEpbYJiPMjFOvZTf2VmJqCoM7sej6P+7LJyxM1Q==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.9.3.tgz", + "integrity": "sha512-yXyP2XFcUljK1/mbQ0lOS815+CtCQr/yjKc9NGNjAbz9sabMACwQtYV66nC4T93P6K83uGxP5QKcmXWC15eVPA==", "dev": true, "requires": { "@ts-common/json": "^0.3.0", @@ -5867,15 +5940,15 @@ } }, "z-schema": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.2.tgz", - "integrity": "sha512-7bGR7LohxSdlK1EOdvA/OHksvKGE4jTLSjd8dBj9YKT0S43N9pdMZ0Z7GZt9mHrBFhbNTRh3Ky6Eu2MHsPJe8g==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.3.tgz", + "integrity": "sha512-zkvK/9TC6p38IwcrbnT3ul9in1UX4cm1y/VZSs4GHKIiDCrlafc+YQBgQBUdDXLAoZHf2qvQ7gJJOo6yT1LH6A==", "dev": true, "requires": { "commander": "^2.7.1", "lodash.get": "^4.4.2", "lodash.isequal": "^4.5.0", - "validator": "^11.0.0" + "validator": "^12.0.0" }, "dependencies": { "commander": { @@ -5886,9 +5959,9 @@ "optional": true }, "validator": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", - "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-12.2.0.tgz", + "integrity": "sha512-jJfE/DW6tIK1Ek8nCfNFqt8Wb3nzMoAbocBF6/Icgg1ZFSBpObdnwVY2jQj6qUqzhx5jc71fpvBWyLGO7Xl+nQ==", "dev": true } } diff --git a/.azure-pipelines-preproduction/package.json b/.azure-pipelines-preproduction/package.json index 11cec93d9c8a..fb99f8c689a5 100644 --- a/.azure-pipelines-preproduction/package.json +++ b/.azure-pipelines-preproduction/package.json @@ -10,8 +10,8 @@ "description": "Tests for Azure REST API Specifications", "license": "MIT", "devDependencies": { - "@azure/avocado": "^0.6.2", - "@azure/rest-api-specs-scripts": "^0.6.7", + "@azure/avocado": "^0.6.3", + "@azure/rest-api-specs-scripts": "^0.9.0", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", "@ts-common/iterator": "^0.3.6", diff --git a/.azure-pipelines/Avocado.yml b/.azure-pipelines/Avocado.yml index f94462d86452..fbf717fd5160 100644 --- a/.azure-pipelines/Avocado.yml +++ b/.azure-pipelines/Avocado.yml @@ -9,3 +9,4 @@ jobs: verbose: false - script: './node_modules/.bin/avocado' displayName: 'Avocado' + condition: ne(variables['Build.SourceBranch'], 'refs/heads/master') diff --git a/.azure-pipelines/SDKAutomation.yml b/.azure-pipelines/SDKAutomation.yml index bc1d551b0d9c..6e481cdb9139 100644 --- a/.azure-pipelines/SDKAutomation.yml +++ b/.azure-pipelines/SDKAutomation.yml @@ -7,14 +7,15 @@ trigger: pr: autoCancel: false +variables: + IMAGE: azopenapi.azurecr.io/openapi/sdk-automation:prod + REGISTRY_ENDPOINT: azopenapi-registry + jobs: - job: "SDKAutomation" displayName: SDK pool: vmImage: 'Ubuntu 18.04' - container: - image: azopenapi.azurecr.io/openapi/sdk-automation:prod - endpoint: azopenapi-registry timeoutInMinutes: 180 variables: @@ -32,14 +33,14 @@ jobs: SDK_REPO_NAME: azure-sdk-for-js Python: SDK_REPO_NAME: azure-sdk-for-python + Cliextension: + SDK_REPO_NAME: azure-cli-extensions Go: SDK_REPO_NAME: azure-sdk-for-go + Trenton: + SDK_REPO_NAME: azure-sdk-for-trenton steps: - checkout: none - - script: printenv - displayName: Display ENV - - script: git config --global user.email "sdkautomation@microsoft.com" && git config --global user.name "SDK Automation" - displayName: Configure Git - script: | curl \ -s https://api.github.com/repos/$(Build.Repository.Name)/commits/$(Build.SourceVersion)/pulls \ @@ -47,7 +48,28 @@ jobs: | python3 -c "import sys,json; a=json.load(sys.stdin); print(f'##vso[task.setvariable variable=PR_NUMBER]{a[0][\"number\"]}' if len(a)>0 and a[0][\"base\"][\"ref\"]=='master' else '##vso[task.logissue type=error]Last commit $(Build.SourceVersion) doesnot have a related PR')" displayName: Get PR_NUMBER condition: in(variables['Build.Reason'], 'IndividualCI', 'Manual') - - script: sudo chown `id -ng`:`id -ng` . && npm start + - task: Docker@2 + displayName: Login into ACR + inputs: + command: login + containerRegistry: $(REGISTRY_ENDPOINT) + - script: | + docker pull $IMAGE + docker tag $IMAGE sdk-automation:latest + displayName: Pull SDK Automation Image + - script: | + docker run \ + -e BLOB_STORAGE_NAME \ + -e BLOB_STORAGE_KEY \ + -e GITHUB_COMMENT_AUTHOR_NAME \ + -e GITHUBAPP_ID \ + -e GITHUBAPP_PRIVATE_KEY \ + -e NODE_OPTIONS \ + -e BLOB_STORAGE_PREFIX \ + -e SPEC_REPO \ + -e PR_NUMBER \ + -e SDK_REPO_NAME \ + sdk-automation:latest npm start env: BLOB_STORAGE_NAME: $(blob-storage-name) BLOB_STORAGE_KEY: $(blob-storage-key) @@ -55,4 +77,3 @@ jobs: GITHUBAPP_ID: $(githubapp-id) GITHUBAPP_PRIVATE_KEY: $(githubapp-private-key) displayName: SDK Automation - workingDirectory: /z diff --git a/.azure-pipelines/SwaggerToSDK.yml b/.azure-pipelines/SwaggerToSDK.yml index 10c37492cf05..050b16bd3709 100644 --- a/.azure-pipelines/SwaggerToSDK.yml +++ b/.azure-pipelines/SwaggerToSDK.yml @@ -12,6 +12,12 @@ jobs: python: AZURE_SDK_REPO: azure-sdk-for-python AZURE_SDK_PARAMS: '' + cliextension: + AZURE_SDK_REPO: azure-cli-extensions + AZURE_SDK_PARAMS: '' + trenton: + AZURE_SDK_REPO: azure-sdk-for-trenton + AZURE_SDK_PARAMS: '' go: AZURE_SDK_REPO: azure-sdk-for-go AZURE_SDK_PARAMS: '-o latest' diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 345d8c92354c..408cffef6ef6 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,17 +1,20 @@ -### Latest improvements: MSFT employees can try out our new experience at [OpenAPI Hub](https://aka.ms/openapiportal) - one location for using our validation tools and finding your workflow. -
+ + ### Contribution checklist: -- [ ] I have reviewed the [documentation](https://github.com/Azure/adx-documentation-pr/wiki/Overall-basic-flow) for the workflow. -- [ ] [Validation tools](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-checklist.md#validation-tools-for-swagger-checklist) were run on swagger spec(s) and have all been fixed in this PR. -- [ ] The [OpenAPI Hub](https://aka.ms/openapiportal) was used for checking validation status and next steps. +- [ ] I have reviewed the [documentation](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/202/Overall-Process-of-AME-Onboarding) for the workflow. +- [ ] [Validation tools](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/84/Swagger-Validation-tools) were run on swagger spec(s) and have all been fixed in this PR. [How to fix?](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/ci-fix.md) + +If any further question about AME onboarding or validation tools, please view the [FAQ](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/FAQ.md). + ### ARM API Review Checklist -- [ ] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories. -- adding/removing APIs. -- adding/removing properties. -- adding/removing API-version. -- adding a new service in Azure. +- [ ] Service team MUST add the "**WaitForARMFeedback**" label if the management plane API changes fall into one of the below categories. + - adding/removing APIs. + - adding/removing properties. + - adding/removing API-version. + - adding a new service in Azure. + +Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs. -Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs. - [ ] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them. -Please follow the link to find more details on [API review process](https://armwiki.azurewebsites.net/rp_onboarding/ResourceProviderOnboardingAPIRevieworkflow.html). +Please follow the link to find more details on [API review process]( https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/212/Swagger-PR-Review). diff --git a/.github/assignment.yml b/.github/assignment.yml new file mode 100644 index 000000000000..e32d1ce22ba2 --- /dev/null +++ b/.github/assignment.yml @@ -0,0 +1,154 @@ +--- +- rule: + # data-plane PR + paths: + - "specification/**/data-plane/**" + reviewers: + - anuchandy + - jhendrixMSFT + - lmazuel + - tjprescott + +- rule: + paths: + - "specification/network/**" + reviewers: + - lirenhe + - MyronFanQiu + +- rule: + paths: + - "specification/@(applicationinsights|operationalinsights)/**" + reviewers: + - MyronFanQiu + +- rule: + paths: "specification/compute/**" + reviewers: + - ArcturusZhang + - fengzhou-msft + - yungezz + +- rule: + paths: "specification/resources/**" + reviewers: + - raych1 + +- rule: + paths: + - "specification/machinelearningservices/**" + reviewers: + - ArcturusZhang + +- rule: + paths: + - "specification/@(azureactivedirectory|appplatform)/**" + reviewers: + - njuCZ + +- rule: + paths: + - "specification/authorization/**" + reviewers: + - qianwens + - yungezz + +- rule: + paths: + - "specification/datafactory/**" + reviewers: + - qianwens + +- rule: + paths: + - "specification/monitor/**" + reviewers: + - weidongxu-microsoft + - MyronFanQiu + +- rule: + paths: + - "specification/storage/**" + reviewers: + - qianwens + - Juliehzl + +- rule: + paths: "specification/mediaservices/**" + reviewers: + - allenjzhang + +- rule: + paths: + - "specification/@(keyvault|notificationhubs)/**" + - "specification/@(databricks|containerregistry)/**" + reviewers: + - fengzhou-msft + +- rule: + paths: + - "specification/@(containerservice|containerinstance)/**" + reviewers: + - NullMDR + - fengzhou-msft + - yungezz + +- rule: + paths: + - "specification/mixedreality/**" + reviewers: + - leni-msft + +- rule: + paths: + - "specification/portal/**" + reviewers: + - NullMDR + +- rule: + paths: + - "specification/web/**" + reviewers: + - weidongxu-microsoft + +- rule: + paths: + - "documentation/**" + reviewers: + - josefree + - akning-ms + +- rule: + paths: + - "**/package.json" + - ".github/**" + - "**/azure-pipelines.yml" + - ".azure-pipelines/**" + - ".azure-pipelines-preproduction/**" + reviewers: + - akning-ms + - NullMDR + - raych1 + +- rule: + # manager-plane PR + paths: + - "**" + reviewers: + - yungezz + - zikalino + - erich-wang + - NullMDR + - raych1 + - lirenhe + - weidongxu-microsoft + - ArcturusZhang + - xccc-msft + - ChenTanyi + - fengzhou-msft + - njuCZ + - akning-ms + - markcowl + - leni-msft + - qianwens + - ruowan diff --git a/.github/sla.yml b/.github/sla.yml index c0caffeca7cb..efba90d3224e 100644 --- a/.github/sla.yml +++ b/.github/sla.yml @@ -1,48 +1,84 @@ --- - scheduleTask: - action: sendEmailToAssignee - repoWhitelist: - - Azure/azure-rest-api-specs + action: sendEmail scope: pull_request + name: "send email to swagger reviewer" + trigger: + - label args: - booleanFilterExpression: "!(WaitForARMFeedback||(DoNotMerge&&(ARMSignedOff||Approved)))" - limit: 48h - message: '

Dear Swagger reviewer,

Please response to the PR ${URL} . The PR isn''t updated in 48 hours.



Quick info.
  • If no response from ARM review board, please send email to armapireview@microsoft.com.
  • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
  • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
  • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
  • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
  • Pls refer to Swagger review process (onenote) for more about Swagger review process.
Best regards,
Azure Management Experience

' - subject: "Action Required: Please respond to PR ${URL}" - description: "None initial response in 48 hours. For public repo." - name: "[PUBLIC] initial response notification" + booleanFilterExpression: "WaitForReviewRevisit&&!NotReadyForReview" + message: '

Dear Swagger reviewer,

The PR ${URL} requires your attention. You receive the email either because PR author put on the label "WaitForReviewVisit", or because the PR has not been updated for over 48 hours.

The PR labeled with ${LABELS}

Quick info.

DO NOT REPLY: This is an automated email. If you have any questions, please send an email to the Swagger and Tools Team (vscswagger@microsoft.com).

Best regards,

Swagger and Tools Team, Azure Management Experience

' + subject: "Action Required: Please respond to the PR ${URL}" + to: ${ASSIGNEE} + cc: + - ${AUTHOR} - scheduleTask: - action: sendEmailToAssignee - repoWhitelist: - - Azure/azure-rest-api-specs-pr + action: sendEmail scope: pull_request + name: "send email to swagger reviewer" + trigger: + - time args: - booleanFilterExpression: "!(WaitForARMFeedback||Approved-OkToMerge||(DoNotMerge&&(ARMSignedOff||Approved)))" + booleanFilterExpression: "!(NotReadyForReview||WaitForARMFeedback||WaitForARMRevisit||Approved-OkToMerge||(DoNotMerge&&(ARMSignedOff||Approved)))" limit: 48h - message: '

Dear Swagger reviewer,

Please response to the PR ${URL} . The PR isn''t updated in 48 hours.



Quick info.
  • If no response from ARM review board, please send email to armapireview@microsoft.com.
  • If need immediate ARM review, please get ARM review oncall contact point from ICM https://icm.ad.msft.net/imp/v3/oncall/current under Service "Azure Resource Manager" and Team "RP Manifest Approvers"
  • If no response from Azure API review board, please send email to azureapirbcore@microsoft.com.
  • If you have problem to fix CI task errors, please send email to Visual Studio China Swagger and Tool team vscswagger@microsoft.com.
  • If you want to opt out from Swagger reviewing for out of office period, please set vacation date at https://inframonitorweb1.azurewebsites.net/Home/MyView.
  • Pls refer to Swagger review process (onenote) for more about Swagger review process.
Best regards,
Azure Management Experience

' - subject: "Action Required: Please respond to PR ${URL}" - description: "None initial response in 48 hours. For private repo." - name: "[PRIVATE] initial response notification" + message: '

Dear Swagger reviewer,

The PR ${URL} requires your attention. You receive the email either because PR author put on the label "WaitForReviewVisit", or because the PR has not been updated for over 48 hours.

The PR labeled with ${LABELS}

Quick info.

DO NOT REPLY: This is an automated email. If you have any questions, please send an email to the Swagger and Tools Team (vscswagger@microsoft.com).

Best regards,

Swagger and Tools Team, Azure Management Experience

' + subject: "Action Required: Please respond to the PR ${URL}" + to: ${ASSIGNEE} + cc: + - ${AUTHOR} - scheduleTask: action: sendEmail scope: pull_request + name: "send email to ARM review board" + trigger: + - label args: - booleanFilterExpression: "(WaitForARMFeedback&&!ARMSignedOff&&!ARMChangesRequested&&!ARMReviewInProgress)" - limit: 3d - subject: "Action Required: Please help to review PR ${URL}" - message: "

Dear ARM review board,

Please review PR ${URL} , the PR is waiting for ARM review over 3 days. Thanks.



Quick info
  • If you have feedback about the notification email, please contact us at vscswagger@microsoft.com.
  • After reviewing, please remove “WaitForARMFeedback” label from PR to avoid receiving notification on the same PR.
  • Please do not reply to this email, this is an automatic generated email.
Best regards,
Azure Management Experience

" + booleanFilterExpression: "(WaitForARMFeedback||WaitForARMRevisit)&&!NotReadyForReview&&!ARMSignedOff&&!ARMChangesRequested" + message: '

Dear ARM review board,

Please review the PR ${URL} . You receive the email because the PR is labeled with either "WaitForARMFeedback" or "WaitForARMRevisit".

Quick info.

  • After review, please remove the label “WaitForARMFeedback” or "WaitForARMRevisit" from the PR, so that there will not be further notification email.

DO NOT REPLY: This is an automated email. If you have any questions, please send an email to the Swagger and Tools Team (vscswagger@microsoft.com).

Best regards,

Swagger and Tools Team, Azure Management Experience

' + subject: "Action Required: Please respond to the PR ${URL}" to: armapireview@microsoft.com - description: "send email to ARM team for over 5 days PRs labelled with WaitForARMFeedback" - name: "send email to ARM team" + cc: + - ${AUTHOR} + - ${ASSIGNEE} + +- scheduleTask: + action: sendEmail + scope: pull_request + name: "send email to swagger and tools team" + trigger: + - label + args: + booleanFilterExpression: (LintRuleCandidate||ValidationToolBug) + message: '

Dear Swagger and Tools Team,

Please check the PR ${URL} . You receive the email because the PR is labeled "LintRuleCandidate" or "ValidationToolBug"

Quick info.

  • After review, please ensure to replace the label “LintRuleCandidate” or "ValidationToolBug" with "LintRuleCandidateCollected" or "ValidationToolBugCollected", so that there will not be further notification email.

DO NOT REPLY: This is an automated email. If you have any questions, please send an email to the Swagger and Tools Team (vscswagger@microsoft.com).

Best regards,

Swagger and Tools Team, Azure Management Experience

' + subject: "Action Required: Please review the PR ${URL}" + to: vscswagger@microsoft.com + cc: + - ${AUTHOR} + - ${ASSIGNEE} - scheduleTask: - action: sendEmailToAssignee + action: sendEmail + scope: pull_request + name: "send email to PR author" + trigger: + - label + args: + booleanFilterExpression: (Reviewed-ChangesRequired||ARMChangeRequest) + message: '

Dear PR author,

The PR Reviewer has commented on your PR ${URL} , putting on the label "Reviewed-ChangesRequired" or "ARMChangeRequest". Please check out the comment by clicking the PR link attached previously, and update your commits accordingly.

Please ensure to remove "Reviewed-ChangesRequired" or "ARMChangeRequest" label, after you complete updates and comment back. If you need ARM board or swagger reviewer revisit your PR, please label the PR with "WaitForARMRevisit" and "WaitForReviewRevisit" respectively.

Quick info.

DO NOT REPLY: This is an automated email. If you have any questions, please send an email to the Swagger and Tools Team (vscswagger@microsoft.com).

Best regards,

Swagger and Tools Team, Azure Management Experience

' + subject: "Action Required: Please update your PR ${URL}" + to: ${AUTHOR} + cc: + - ${ASSIGNEE} + +- scheduleTask: + action: sendEmail scope: issue args: - booleanFilterExpression: "triage" + booleanFilterExpression: "needs-triage" limit: 48h message: "

Dear Swagger reviewer,

Please response to the issue ${URL} . The issue isn't updated in 48 hours.



Quick info.
  • If you have any question, please send email to Visual Studio Swagger and Tool team vscswagger@microsoft.com.
Best regards,
Azure Management Experience

" subject: "Action Required: Please respond to issue ${URL}" - cc: Ankun.Ning@microsoft.com + to: ${ASSIGNEE} + cc: vscswagger@microsoft.com diff --git a/CODEOWNERS b/CODEOWNERS index b88af5dc9848..dee3983a317b 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -26,7 +26,7 @@ /specification/dns/ @owolabi2 /specification/documentdb/ @dmakwana /specification/domainservices/ @jihochang -/specification/eventgrid/ @kalyanaj +/specification/eventgrid/ @Kishp01 @ahamad-MS /specification/eventhub/ @v-ajnava /specification/features/ @stankovski /specification/graphrbac/ @lmazuel @yugangw-msft @amarzavery @@ -34,7 +34,7 @@ /specification/insights/ @gucalder /specification/intune/ @vrmurthy01 /specification/iothub/ @rkmanda -/specification/keyvault/ @schaabs @heaths +/specification/keyvault/ @heaths @randallilama @jlichwa /specification/logic/ @pankajsn @tonytang-microsoft-com /specification/machinelearning/ @nonstatic2014 /specification/machinelearningcompute/ @shutchings @@ -66,7 +66,7 @@ /specification/servicebus/ @sazeesha @v-ajnava /specification/servicefabric/ @juhacket @samedder /specification/sql/ @dnayantara @jaredmoo @nathannfan -/specification/storage/ @jasonyang-msft @xiaonlimsft +/specification/storage/ @blueww @jasonyang-msft @xiaonlimsft /specification/storageimportexport/ @leoz-ms /specification/storagesync/ @ankushbindlish2 /specification/storsimple8000series/ @manaas-microsoft diff --git a/cSpell.json b/cSpell.json index 5944ae4a28fb..8cf7fe1c77ee 100644 --- a/cSpell.json +++ b/cSpell.json @@ -188,6 +188,12 @@ "Exprired" ] }, + { + "filename": "**/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json", + "words": [ + "Exprired" + ] + }, { "filename": "**/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json", "words": [ @@ -226,6 +232,12 @@ "Regenerte" ] }, + { + "filename": "**/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json", + "words": [ + "Regenerte" + ] + }, { "filename": "**/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json", "words": [ diff --git a/custom-words.txt b/custom-words.txt index e450749639c0..3a5c2da39997 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -116,6 +116,8 @@ australiasoutheast authenticatable Authenticode authorizationrules +authprovider +authproviders authsettings authsid autobackup @@ -176,6 +178,7 @@ bacpac badpassword Baidu bangla +Bahasa baremetal BATCHAI batchmanaged @@ -214,6 +217,7 @@ BMCI BMCIP BMSPO BMSRP +Bokmål Bokmaal Bootstrappers bot's @@ -286,6 +290,7 @@ cntk CODEGEN codegeneration codemirror +codepackage cognitiveservices colls colocation @@ -408,6 +413,7 @@ deletedsecrets deletedstorage deletefailed deleteissuers +deleteprivateendpointconnection deletesas demorun denylist @@ -480,6 +486,7 @@ endswith endtime Enein engagementfabric +endzone enquoted entitydocument entitysearch @@ -487,6 +494,7 @@ entrypoint environmentsettings errordetail errored +ErrorMesssage ErrorSchema Español estaba @@ -514,6 +522,7 @@ exportstatus externaldatasources externalDNSIPAddress01 externalDNSIPAddress02 +extranet EYWQ faceapi facelists @@ -553,8 +562,10 @@ Français frontdoor fsaction Fulfilment +fullmetadata Fulltext fullyqualified +functionappsettings galician galleryimages Garda @@ -580,9 +591,12 @@ GETFILESTATUS getissuers getjob getkey +getprivateendpointconnection +getprivatelinkresources getsas getskus getssotoken +gettestresultfile getvpnclientipsecparameters getvpnprofilepackageurl gibibytes @@ -643,6 +657,7 @@ hybridconnection hybriddata hybriddatamanager Hyperdrive +Hypernet Hyperscale hyperv Iaas @@ -689,6 +704,7 @@ iothub iothubprovisioningservices iotspaces iotspacesservice +ipam ipconfig ipconfiguration ipconfigurations @@ -696,6 +712,7 @@ ipfilterrules Ipsec ipssl ipgroups +IPAM iscloneable Iscsi iscsiservers @@ -746,9 +763,11 @@ Kiswahili Knowledgebase knowledgebases koelner +Kölner koreacentral koreasouth Kpis +Kraaij Ksettings kstem kube @@ -790,6 +809,8 @@ listissuers listjobs listkeys listprebuilts +listprivateendpointconnections +listprivatelinkresources listsas listsecrets LISTSTATUS @@ -960,6 +981,7 @@ nodeconfiguration nodecounts Nodeploy nodrm +nometadata nonadmin NONCLUSTERED nonincreasing @@ -1065,6 +1087,7 @@ pixelated pkcs playready Plex +Pohlmann policyassignments policydefinitions policyinsights @@ -1105,6 +1128,7 @@ pricesheets pricings primarybytes privatedns +privatelinks privatepreview projectable Protectable @@ -1147,6 +1171,7 @@ RAGRS RAGZRS randint Rankable +ratelimit ravbhatnagar rawxml rbac @@ -1218,6 +1243,7 @@ reprovisions Reregister Rescan reservationorders +resetapikey resetvpnclientsharedkey Resolvability resourcegraph @@ -1230,6 +1256,7 @@ resourcetype Responsys restoreheartbeat Restproxy +restype resumable resync resynchronization @@ -1254,6 +1281,8 @@ rosettanetprocessconfigurations rotatediskencryptionkey routable routingendpointhealth +rpki +RPKI rpns RSAES RSASSA @@ -1400,6 +1429,7 @@ starttask starttaskfailed starttime stateful +staticsite statusdir stderror stopresize @@ -1492,7 +1522,9 @@ testall testallroutes testnew testnewroute +testresultfile textanalytics +TFIDF Tful Tfvc timeframe @@ -1580,6 +1612,7 @@ unvalidated unwrapkey updatecertificate updatehostname +updateprivateendpointconnection updateproperties upgradeos uploadbatchservicelogs @@ -1676,6 +1709,7 @@ websearch webservices Webspace webtest +webtestresult webtests westcentralus westeurope @@ -1725,4 +1759,14 @@ disconnectactivesessions bsls sessionids Dsms -cloudManifestFiles \ No newline at end of file +cloudManifestFiles +highestcriticalimpact +apiserver +kubeadmin +AzureAD +PrivateLink +privateLinkForAzureAd +userprincipalname +sessionstate +sessionhosts +hostpool diff --git a/documentation/FAQ.md b/documentation/FAQ.md new file mode 100644 index 000000000000..82cd2276edec --- /dev/null +++ b/documentation/FAQ.md @@ -0,0 +1,41 @@ +# FAQ in Swagger PR Review + +This page is intended to answer questions frequently asked during Azure Swagger PR review. + +1. [I am new to Swagger/OpenAPI, How should I start?](#Onboard) +2. [How to fix validation failure?](#validation) +3. [How to generate SDK from Swagger?](#SDK) +4. [How to generate document](#doc) +5. [If need further help, who can we contact?](#contact) + +## How to onboard PR review Process? +If you are new to Swagger/OpenAPI, you can refer to this [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/80/Getting-started-with-OpenAPI-specifications) + +If you are new to Swagger PR review process, you can refer to this [flowchart](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/212/Swagger-PR-Review) + +You can refer to this [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/49/Request-Access-to-Azure-SDK-repos) to get read permission to submit PR. + +## How to fix validation failure? +| Validation | Description | How to fix | +| --- | --- | --- | +| [Model Validation](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) | Model validation enforces correctness between example and swagger. It checks whether definitions for request parameters and responses, match an expected input/output payload of the service. | [Here](https://aka.ms/ci-fix#model-validation) | +| [Lint diff](https://github.com/Azure/azure-openapi-validator) | A tool to check whether changes in PR are satisfied with certain kind of rules outlined in the [automated rules checklist](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md) | [Here](https://aka.ms/ci-fix#linter-validation) | +| [Breaking Change](https://github.com/Azure/openapi-diff) | A tool to check what a swagger PR has changed and whether these changes violate [breaking changes rules](https://github.com/Azure/openapi-diff/blob/master/docs/README.md).| [Here](https://aka.ms/ci-fix#breaking-change-check)| +| [Avocado](https://github.com/Azure/avocado/blob/master/README.md) | Avocado validates folder structure and configuration. | [Here](https://aka.ms/ci-fix#avocado) | +| [Semantic](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) | Semantic validation enforces correctness on the swagger specific elements. Such as paths and operations. Ensure the element definition meet the OpenApi 2.0 specification. | [Here](https://aka.ms/ci-fix#semantic-validation) | +| Prettier | Code formatter for Swagger | [Here](https://aka.ms/ci-fix#prettier-check) | +| BranchProtectionForPrivateRepo | BranchProtectionForPrivateRepo is designed to always fail to prevent from merging PR into master which is not allow in private swagger repo as it will cause issue to sync up from public repo. | You can ignore this failure | + +Refer to [Document](https://aka.ms/ci-fix) for how to run these tools locally + +## How to generate SDK from Swagger? +If you are working in the public repository,SDK generation is triggered as soon as your OpenAPI specification (a.k.a swagger) PR is created/committed/merged in to the azure-rest-api-specs repository. + +If you are working in the private repository, please refer to this [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/81/Management-Plane-SDK-generation) to manually generate SDKs of different languages, including Python, Java, Go, C#, Js etc. + + +## How to generate Document from Swagger? +Refer to [document](https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/79/Generation-of-docs-on-docs.microsoft.com) + +## If need further help, who can we contact? +If any other help need, Please send a mail to vscswagger@microsoft.com \ No newline at end of file diff --git a/documentation/ci-fix.md b/documentation/ci-fix.md index caa88d0ad563..c566c7a67908 100644 --- a/documentation/ci-fix.md +++ b/documentation/ci-fix.md @@ -4,20 +4,90 @@ Here are guides to fix some of the CI failure. ## Spell check -Please add your words to `./custom-words.txt` if you think you have the correct spell +Please add your words to `./custom-words.txt` if you think you have the correct spell. + +If your problem is some existing error name that is not a word and need to supress the error in that file (and don't want to add to custom-words.txt), you can add it to `./cSpell.txt`. ## Prettier check Please run the following command (from an administrator Node.js command prompt if running on Windows): ``` -npm install; npm run prettier-fix +npm install +npm run prettier-fix ``` Or if you want to fix specified service: ``` -npm install; npm run prettier -- --write "specification//**/*.json" +npm install +npm run prettier -- --write "specification//**/*.json" ``` Then please commit and push changes made by prettier. + +## Model Validation + +Run Model Validation locally: +``` +npm install -g oav +oav validate-example +``` +Please see [readme](https://github.com/Azure/oav/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default) +Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance. + +## Semantic Validation +Run Semantic Validation locally: +``` +npm install -g oav +oav validate-spec +``` +Please see [readme](https://github.com/Azure/oav/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default) +Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance. + +## Breaking Change Check + +run oad locally (the breaking change is reported by oad tool): +``` +npm install -g oad +oad compare +``` +Please see [readme](https://github.com/Azure/openapi-diff/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/diff). +Refer to [Oad Docs](https://github.com/Azure/openapi-diff/tree/master/docs) for detailed description of all oad rules and how-to-fix guidance. + +## Linter Validation + +Run linter locally: +``` +npm install -g autorest +autorest --validation --azure-validator --input-file= +or +autorest --validation --azure-validator + +``` +Please see [readme](https://github.com/Azure/azure-openapi-validator/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/linter). +Refer to [openapi-authoring-automated-guidelines](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md) for detailed description of all lint rules and how-to-fix guidance. + +## Avocado + +Run avocado locally: + +``` +npm install -g @azure/avocado + +avocado +``` + +When type avocado in command line, avocado will validate in the current directory. + +Note: When running in Swagger PR pipeline, Avocado only report errors with file updates in the PR, but ignore the errors existing in base. However when running Avocado against local directory, it reports all errors existing in the files. + +- Run all specs: Clone the repo `azure/azure-rest-api-specs` and run "avocado" in folder `azure/azure-rest-api-specs`. +- Run single service specs: create a folder `specification`. and move your service specs folder in `specification`. run "avocado" + +Refer to [Avocado Readme](https://github.com/Azure/avocado/blob/master/README.md) for detailed description of validations and how-to-fix guidance. + diff --git a/documentation/openapi-authoring-automated-guidelines.md b/documentation/openapi-authoring-automated-guidelines.md index 0a357da13333..881a07c81624 100644 --- a/documentation/openapi-authoring-automated-guidelines.md +++ b/documentation/openapi-authoring-automated-guidelines.md @@ -43,13 +43,17 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R3007](#r3007) | [PutGetPatchResponseSchema](#r3007) | ARM and Data plane OpenAPI(swagger) specs | | [R3025](#r3025) | [TrackedResourceGetOperation](#r3025) | ARM OpenAPI(swagger) specs | | [R3026](#r3026) | [TrackedResourcePatchOperation](#r3026) | ARM OpenAPI(swagger) specs | -| [R2059](#r2059) | [UniqueResourcePaths](#r2059) | ARM OpenAPI(swagger) specs | +| [R3030](#R3030) | [PathResourceProviderMatchNamespace](#R3030) | ARM OpenAPI(swagger) specs | | [R2016](#r2016) | [PatchBodyParametersSchema](#r2016) | ARM and Data plane OpenAPI(swagger) specs | | [R2062](#r2062) | [XmsResourceInPutResponse](#r2062) | ARM OpenAPI(swagger) specs | | [R3027](#r3027) | [TrackedResourceListByResourceGroup](#r3027) | ARM OpenAPI(swagger) specs | | [R3028](#r3028) | [TrackedResourceListBySubscription](#r3028) | ARM OpenAPI(swagger) specs | | [R3011](#r3011) | [DescriptionMustNotBeNodeName](#r3011) | ARM and Data plane OpenAPI(swagger) specs | | [R2020](#r2020) | [RequiredPropertiesMissingInResourceModel](#r2020) | ARM OpenAPI(swagger) specs | +| [R3020](#r3020) | [PathResourceProviderNamePascalCase](#r3020) | ARM OpenAPI(swagger) specs | +| [R3021](#r3021) | [PathResourceTypeNameCamelCase](#r3021) | ARM OpenAPI(swagger) specs | +| [R4004](#r4004) | [OperationIdRequired](#r4004) | ARM OpenAPI(swagger) specs | +| [R4007](#r4007) | [DefaultErrorResponseSchema](#r4007) | ARM OpenAPI(swagger) specs | #### ARM Warnings @@ -60,12 +64,6 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R2057](#r2057) | [InvalidSkuModel](#r2057) | ARM OpenAPI(swagger) specs | | [R3010](#r3010) | [TrackedResourceListByImmediateParent](#r3010) | ARM OpenAPI(swagger) specs | | [R2004](#r2004) | [NonApplicationJsonType](#r2004) | ARM OpenAPI(swagger) specs | -| [R4004](#r4004) | [OperationIdRequired](#r4004) | ARM OpenAPI(swagger) specs | -| [R3020](#r3020) | [PathResourceProviderNamePascalCase](#r3020) | ARM OpenAPI(swagger) specs | -| [R3021](#r3021) | [PathResouceTypeNameCamelCase](#r3021) | ARM OpenAPI(swagger) specs | -| [R3015](#r3015) | [EnumMustHaveType](#r3015) | ARM OpenAPI(swagger) specs | -| [R3024](#r3024) | [EnumUniqueValue](#r3024) | ARM OpenAPI(swagger) specs | -| [R3029](#r3029) | [EnumMustNotHaveEmptyValue](#r3024) | ARM OpenAPI(swagger) specs | ### SDK Violations @@ -96,6 +94,11 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R2009](#r2009) | [ArraySchemaMustHaveItems](#r2009) | ARM and Data plane OpenAPI(swagger) specs | | [R3013](#r3013) | [DeleteMustNotHaveRequestBody](#r3013) | ARM and Data plane OpenAPI(swagger) specs | | [R4001](#r4001) | [XmsParameterLocation](#r4001) | ARM and Data plan OpenAPI(swagger) specs | +| [R3015](#r3015) | [EnumMustHaveType](#r3015) | ARM and Data plan OpenAPI(swagger) specs | +| [R3024](#r3024) | [EnumUniqueValue](#r3024) | ARM and Data plan OpenAPI(swagger) specs | +| [R3029](#r3029) | [EnumMustNotHaveEmptyValue](#r3024) | ARM and Data plan OpenAPI(swagger) specs | +| [R4005](#r4005) | [UniqueXmsEnumName](#r4005) | ARM and Data plane OpenAPI(swagger) specs | +| [R4008](#r4008) | [AvoidEmptyResponseSchema](#r4008) | ARM OpenAPI(swagger) specs | #### SDK Warnings @@ -126,6 +129,7 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R2010](#r2010) | [LongRunningOperationsOptionsValidator](#r2010) | ARM and Data plane OpenAPI(swagger) specs | | [R2007](#r2007) | [LongRunningOperationsWithLongRunningExtension](#r2007) | ARM OpenAPI(swagger) specs | | [R2029](#r2029) | [PageableOperation](#r2029) | ARM and Data plane OpenAPI(swagger) specs | +| [R4006](#r4006) | [DeprecatedXmsCodeGenerationSetting](#r4006) | ARM and Data plane OpenAPI(swagger) specs | ### Documentation @@ -711,14 +715,14 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2059 UniqueResourcePaths +### R3030 PathResourceProviderMatchNamespace **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs **Output Message**: The last resource provider '{0}' doesn't match the namespace. -**Description**: Verifies whether the last resource provider matches namespace or not. E.g the path /providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.Insights/extResource/{extType}’ is allowed only if Microsoft.Insights matches the namespace (Microsoft.Insights). +**Description**: Verifies whether the last resource provider matches namespace or not. E.g the path /providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.Insights/extResource/{extType}' is allowed only if Microsoft.Insights matches the namespace (Microsoft.Insights). **Why the rule is important**: Per the [ARM guidelines](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md), each OpenAPI(swagger) specification must contain one resource provider. So the last resource provider must match with the resource provider namespace. @@ -1898,13 +1902,13 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ### R4004 OperationIdRequired -**Category** : ARM Warning +**Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs **Output Message** : Missing operationId. path:'${operation path}' operation:'${operation}'. -**Description** : Each operation must has a unique operationId. +**Description** : Each operation must haave a unique operationId. **CreatedAt** : February 18, 2020 @@ -1914,6 +1918,8 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Add the right operationId for each operation +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + ### R3020 PathResourceProviderNamePascalCase **Category** : ARM Warning @@ -1970,7 +1976,7 @@ paths : { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/pr Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3021 PathResouceTypeNameCamelCase +### R3021 PathResourceTypeNameCamelCase **Category** : ARM Warning @@ -1978,9 +1984,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Output Message** : Resource type naming SHOULD follow camel case. Path: {your path} -**Description** : - -Resource type or other identifiers (include: namespace, entityTypes) SHOULD follow camel case. (e.g. Microsoft.Insights/components/proactiveDetectionConfigs, not ProactiveDetectionConfig) +**Description** : Resource type or other identifiers (include: namespace, entityTypes) SHOULD follow camel case. (e.g. Microsoft.Insights/components/proactiveDetectionConfigs, not ProactiveDetectionConfig) For more detail, pls refer to https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#172-casing @@ -2028,13 +2032,13 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ### R3024 EnumUniqueValue -**Category** : ARM Warning +**Category** : SDK Error **Applies to** : ARM and Data Plane OpenAPI(swagger) specs -**Output Message** : Enum must not contain case-insensitive duplicated value and make sure every value in enum unique. +**Output Message** : Enum must not contain duplicated value (case insentive). -**Description** : Case-insensitive value in enum mean the same value. +**Description** : Enum must not contain duplicated value (case insentive). **CreatedAt**: February 18, 2020 @@ -2071,17 +2075,17 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ### R3015 EnumMustHaveType -**Category** : ARM Warning +**Category** : SDK Error **Applies to** : ARM and Data Plane OpenAPI(swagger) specs **Output Message** : Enum must define its type. All values in an enum must adhere to the specified type. -**Description** : Enum must define its type object or string. If not it will block SDK generation. +**Description** : Enum must define type, and type must not be object. Or it will fail SDK auto-generation. **CreatedAt**: February 18, 2020 -**LastModifiedAt**: February 18, 2020 +**LastModifiedAt**: February 20, 2020 **How to fix the violation**: @@ -2128,13 +2132,13 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ### R3029 EnumMustNotHaveEmptyValue -**Category** : ARM Warning +**Category** : SDK Error **Applies to** : ARM and Data Plane OpenAPI(swagger) specs **Output Message** : Enum value must not contain empty value. -**Description** : Empty value is not allowed in enum value and meanless. +**Description** : Emum must not be empty, or contain special character, like space, tab, etc. It will lead to code generation failure in downstream pipeline. **CreatedAt**: February 18, 2020 @@ -2234,3 +2238,159 @@ Eg: ``` Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4005 UniqueXmsEnumName + +**Category** : SDK Error + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : Must not have duplicate name in x-ms-enum extension , make sure every x-ms-enum name unique. + +**Description** : Must not have duplicate name in x-ms-enum extension. + +**CreatedAt**: March 18, 2020 + +**LastModifiedAt**: March 18, 2020 + +**How to fix the violation**: Update the duplicate x-ms-enum name : + +The following would be invalid: +```json + "State": { + "description": "The state of the configuration store.", + "enum": [ + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DuplicateName", + "modelAsString": true + } + }, + "status": { + "description": "The state code.", + "enum": [ + "Success", + "FAILED" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "DuplicateName", + "modelAsString": true + } + } +} +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4006 DeprecatedXmsCodeGenerationSetting + +**Category** : SDK Warning + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : The x-ms-code-generation-setting extension is being deprecated. Please remove it and move settings to readme file for code generation. + +**Description** : The x-ms-code-generation-settings is being deprecated. AutoRest (v3) is using settings in readme file for code generation and will stop supporting it inside the swagger file. Please ensure to remove the parameter from swagger spec and move settings to readme. + +**CreatedAt**: March 18, 2020 + +**LastModifiedAt**: March 18, 2020 + +**How to fix the violation**: Since the only value of this extension today is to override the client name, which could be done with a 'title' line in the readme file,you could remove the extension from swagger spec and move settings to readme. + +The following would be invalid: + +```json + "info": { + "version": "2016-05-16", + "x-ms-code-generation-settings": { + "name": "AnalysisServicesManagementClient" + } + } +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4007 DefaultErrorResponseSchema + +**Category** : ARM Error + +**Applies to** : ARM OpenAPI(swagger) specs + +**Output Message** : The default error response schema SHOULD correspond to the schema documented at https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-details.md#error-response-content. + +**Description** : The default error response schema SHOULD correspond to the schema documented at [common-api-details](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-details.md#error-response-content). + +**CreatedAt**: April 2, 2020 + +**LastModifiedAt**: April 2, 2020 + +**How to fix the violation**: Following the ARM specification to modify the schema in the swagger file. + +The following would be invalid: + +```json + "responese":{ + "default": { + "schema":{ + "error":"error msg", + "code": 404, + "message":"some details" + } + } + } + +``` + +the correct schema: + +```json + "responese":{ + "default": { + "error": + { + "code": 404, + "message":"some details" + ... + } + } + } + +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4008 AvoidEmptyResponseSchema + +**Category** : SDK Error + +**Applies to** : ARM OpenAPI(swagger) specs + +**Output Message** : Response schema must not be empty. + +**Description** : Response schema must not be empty, or it will block code genaration. + +**CreatedAt**: April 2, 2020 + +**LastModifiedAt**: April 2, 2020 + +**How to fix the violation**: Add the correct definition of the schema in the response or remove it if don't need. + +The following would be invalid: + +```json +... + "responese":{ + "default": { + "schema":{ + } + } + } +... +``` diff --git a/package-lock.json b/package-lock.json index 8e980689a258..fc609748244c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@azure/avocado": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.2.tgz", - "integrity": "sha512-DU4TD/+U0aXLjz4bGW+vxst4tXm3/HPiOrNh1BcY00rHRnRbR+ZY7AL/nA4+1P6LVPu8msLUXp6HTqqe4QrbHg==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.3.tgz", + "integrity": "sha512-OOCdgdwwt/PEYVesm1z1WVCX7YMNySdZX4RFN/+JI6u0nRsi+n3JHfwkytNyhSrwGKBY/OqUEyQcNFQkTw4OFg==", "dev": true, "requires": { "@azure/openapi-markdown": "^0.9.1", @@ -24,14 +24,14 @@ } }, "@azure/oad": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.7.0.tgz", - "integrity": "sha512-voz6Q71GmJpRAThFG5aDWqHiQCc6eL1ajAR0JqbqCsqStQdBauGkGZhOeawkNJIgHnFY3GG9GO/fWhfp36uBWg==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.7.1.tgz", + "integrity": "sha512-KTlb+aQRFyKbd4ezie9wA5bthI+9Cia+j59PfYRyt8AD0L1RjW7DNvTXbpK7hOxRYPJdd/+1alczXRnWr99Pbw==", "dev": true, "requires": { "@ts-common/fs": "^0.2.0", "@ts-common/json-parser": "^0.7.0", - "autorest": "^2.0.0", + "autorest": "^2.0.4407", "glob": "^7.1.3", "js-yaml": "^3.13.1", "json-pointer": "^0.6.0", @@ -88,19 +88,20 @@ } }, "@azure/rest-api-specs-scripts": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.6.1.tgz", - "integrity": "sha512-o5QyJUAqkHzlkht5vYqNu2SXwAMD4vyxFrwk7acsZovIXsE012fwsg32WoUTMypR3uZpgfAtGBNYvyz6DW9rCg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.8.0.tgz", + "integrity": "sha512-vJxboVIH6D9Z6oFHNvMthkPtCGz3wMsxSgnkkZtS8fEvXHP3r8uNQgDbTdejp0zuH0XnRG3OrO504CwBkoM1Rw==", "dev": true, "requires": { "@azure/avocado": "^0.4.1", "@azure/oad": "^0.7.0", "@octokit/rest": "^16.42.0", "@ts-common/string-map": "^0.3.0", + "commonmark": "0.27.0", "fs-extra": "^7.0.1", "glob": "^7.1.3", "js-yaml": "^3.13.1", - "oav": "0.20.9", + "oav": "0.21.5", "request": "^2.88.0" }, "dependencies": { @@ -121,6 +122,32 @@ "commonmark": "^0.29.0", "js-yaml": "^3.13.1", "node-object-hash": "^1.4.2" + }, + "dependencies": { + "commonmark": { + "version": "0.29.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.29.1.tgz", + "integrity": "sha512-DafPdNYFXoEhsSiR4O+dJ45UJBfDL4cBTks4B+agKiaWt7qjG0bIhg5xuCE0RqU71ikJcBIf4/sRHh9vYQVF8Q==", + "dev": true, + "requires": { + "entities": "~1.1.1", + "mdurl": "~1.0.1", + "minimist": "~1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "commonmark": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.27.0.tgz", + "integrity": "sha1-2GwmK5YoIelIPGnFR7xYhAwEezQ=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" } } } @@ -160,12 +187,12 @@ } }, "@octokit/endpoint": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.5.3.tgz", - "integrity": "sha512-EzKwkwcxeegYYah5ukEeAI/gYRLv2Y9U5PpIsseGSFDk+G3RbipQGBs8GuYS1TLCtQaqoO66+aQGtITPalxsNQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.1.tgz", + "integrity": "sha512-pOPHaSz57SFT/m3R5P8MUu4wLPszokn5pXcB/pzavLTQf2jbU+6iayTvzaY6/BiotuRS0qyEUkx3QglT4U958A==", "dev": true, "requires": { - "@octokit/types": "^2.0.0", + "@octokit/types": "^2.11.1", "is-plain-object": "^3.0.0", "universal-user-agent": "^5.0.0" }, @@ -207,14 +234,14 @@ } }, "@octokit/request": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.2.tgz", - "integrity": "sha512-7NPJpg19wVQy1cs2xqXjjRq/RmtSomja/VSWnptfYwuBxLdbYh2UjhGi0Wx7B1v5Iw5GKhfFDQL7jM7SSp7K2g==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.2.tgz", + "integrity": "sha512-zKdnGuQ2TQ2vFk9VU8awFT4+EYf92Z/v3OlzRaSh4RIP0H6cvW1BFPXq4XYvNez+TPQjqN+0uSkCYnMFFhcFrw==", "dev": true, "requires": { - "@octokit/endpoint": "^5.5.0", - "@octokit/request-error": "^1.0.1", - "@octokit/types": "^2.0.0", + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^2.11.1", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", @@ -222,6 +249,17 @@ "universal-user-agent": "^5.0.0" }, "dependencies": { + "@octokit/request-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz", + "integrity": "sha512-rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, "universal-user-agent": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", @@ -269,9 +307,9 @@ } }, "@octokit/types": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.3.1.tgz", - "integrity": "sha512-rvJP1Y9A/+Cky2C3var1vsw3Lf5Rjn/0sojNl2AjCX+WbpIHYccaJ46abrZoIxMYnOToul6S9tPytUVkFI7CXQ==", + "version": "2.16.2", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.16.2.tgz", + "integrity": "sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q==", "dev": true, "requires": { "@types/node": ">= 8" @@ -500,9 +538,9 @@ "dev": true }, "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, "acorn-globals": { @@ -516,9 +554,9 @@ }, "dependencies": { "acorn": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", - "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -530,9 +568,9 @@ "dev": true }, "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -835,9 +873,9 @@ } }, "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, "browser-stdout": { @@ -2334,15 +2372,16 @@ "dev": true }, "handlebars": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.3.tgz", - "integrity": "sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { "source-map": { @@ -2791,12 +2830,6 @@ "requires": { "amdefine": ">=0.0.4" } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true } } }, @@ -2917,13 +2950,13 @@ "dev": true }, "json-schema-faker": { - "version": "0.5.0-rc23", - "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc23.tgz", - "integrity": "sha512-lRzFEnp55TihRzMvUBrtvTlM/aHGhCwfes0/T9bN9OiB2n36/SUFxtMn7anYoES+f95eU3viJ/foXKosCwsiJw==", + "version": "0.5.0-rcv.24", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rcv.24.tgz", + "integrity": "sha512-qwuRwv7dnUdqdwuifb6kJAVUKm0mzi4h/mzvMwDKxyWUzjxFCdVH/g9IfKxvc4M7rvAavr8pcx9uO1PNIIWE0g==", "dev": true, "requires": { "json-schema-ref-parser": "^6.1.0", - "jsonpath-plus": "^1.0.0", + "jsonpath-plus": "^2.0.0", "randexp": "^0.5.3" } }, @@ -2979,9 +3012,9 @@ } }, "jsonpath-plus": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-1.1.0.tgz", - "integrity": "sha512-ydqTBOuLcFCUr9e7AxJlKCFgxzEQ03HjnIim0hJSdk2NxD8MOsaMOrRgP6XWEm5q3VuDY5+cRT1DM9vLlGo/qA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-2.0.0.tgz", + "integrity": "sha512-ksXaz9+3SIZ5BMxgr7MQueYcR515VRZPuoDhIymUd1JcF6BnVaYJS7k4NJni4EHhvJaOIGGiPqT8+ifsGp6mBw==", "dev": true }, "jsonschema": { @@ -3049,9 +3082,9 @@ } }, "linq": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.1.tgz", - "integrity": "sha512-BEhjQpbvrKPWlg5m/+PXTHsQoXzzR0UWCvgI8Hm+WtUMtTwPvw9Tay5CWfqsWSVk81wqbHNDFpFXyqBmm4/dqA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.2.tgz", + "integrity": "sha512-AtVkCFwg7dizILt88ent7Bng1OLAnKMWBOLo9Kh7ZPFK8OcfYGi2FEzmr66QJtV7uBYZVf19AbVs0B14rIUi+w==", "dev": true }, "load-json-file": { @@ -3267,18 +3300,18 @@ "dev": true }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", "dev": true }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "dev": true, "requires": { - "mime-db": "1.43.0" + "mime-db": "1.44.0" } }, "mimic-fn": { @@ -3297,9 +3330,9 @@ } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "mixin-deep": { @@ -3564,9 +3597,9 @@ } }, "moment": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", - "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", + "version": "2.25.3", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.25.3.tgz", + "integrity": "sha512-PuYv0PHxZvzc15Sp8ybUCoQ+xpyPWvjOuK72a5ovzp2LI32rJXOiIfyoFoYvG3s6EwwrdkMyWuRiEHSZRLJNdg==", "dev": true }, "ms": { @@ -3576,9 +3609,9 @@ "dev": true }, "ms-rest": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", - "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", + "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", "dev": true, "requires": { "duplexer": "^0.1.1", @@ -3699,21 +3732,21 @@ "dev": true }, "oav": { - "version": "0.20.9", - "resolved": "https://registry.npmjs.org/oav/-/oav-0.20.9.tgz", - "integrity": "sha512-ObCpH+R1hBL60cqicybo/XgH89J7+Vi1PS215UZRzcDKvf0Km0EyycVfdfRtvdrrUVdC8AugH3RlXYn5esqKfA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.21.5.tgz", + "integrity": "sha512-UgF51hAZArAI9r4tSUCgJE8IYeh5Q3SLcCukwZ6jrWyG3Y8vXKl12Cs2ycGrbQg16Ygf2v2+Dkhx4RHh7uOyfw==", "dev": true, "requires": { - "@azure/openapi-markdown": "^0.9.0", + "@azure/openapi-markdown": "^0.9.2", "@microsoft.azure/autorest-extension-base": "1.0.13", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/iterator": "^0.3.6", "@ts-common/json": "^0.3.1", - "@ts-common/json-parser": "^0.8.0", + "@ts-common/json-parser": "^0.9.0", "@ts-common/property-set": "^0.1.0", "@ts-common/source-map": "^0.5.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/virtual-fs": "^0.2.0", + "@ts-common/virtual-fs": "^0.3.0", "@types/jsonpath": "^0.2.0", "commonmark": "^0.29.0", "glob": "^5.0.15", @@ -3728,17 +3761,84 @@ "lodash": "^4.17.15", "md5-file": "^4.0.0", "moment": "^2.24.0", - "ms-rest": "^2.5.0", + "ms-rest": "^2.5.4", "swagger-parser": "^6.0.5", "uuid": "^3.3.2", "vscode-jsonrpc": "^3.6.2", "winston": "^3.2.1", "yargs": "^6.6.0", - "yasway": "^1.8.11", + "yasway": "^1.9.3", "yuml2svg": "^4.2.1", "z-schema": "^4.2.2" }, "dependencies": { + "@azure/openapi-markdown": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.2.tgz", + "integrity": "sha512-EhjABbBzHAPK8K88Ya7yHdIKjcU2WSiclIuXSDqs/mYAUym4Z9o7lvIi0Li+mUhFaLAh2V4+OzdIVUdTzJa0Fg==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.3.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/json-parser": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.9.0.tgz", + "integrity": "sha512-how0z/Ak7Bay+feIYfJFVV8UMw8Ky2Czoo5XwN7QigCOlN4HyW6wSNup4zrZ7t6NUB0002tW/+IOKCH2lAVJOg==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/virtual-fs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.3.0.tgz", + "integrity": "sha512-ryoXw52FTLhiexoNBA/hcAlW8gxPhrKEuZODgpCiF0wswNJdg/j+rCb9k1VppJdeIJ30b0Wg+2vPsrOrdnYTIw==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.4.1", + "@types/node-fetch": "^2.5.5", + "async-retry": "^1.3.1", + "node-fetch": "^2.6.0" + } + }, + "@types/node-fetch": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz", + "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==", + "dev": true, + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -3754,6 +3854,15 @@ "lodash": "^4.17.14" } }, + "async-retry": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz", + "integrity": "sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -3771,6 +3880,17 @@ "wrap-ansi": "^2.0.0" } }, + "form-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", + "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -4041,24 +4161,6 @@ "swagger-schema-official": "2.0.0-bab6bed" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } - } - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -4293,9 +4395,9 @@ "dev": true }, "psl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", - "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "pump": { @@ -4315,9 +4417,9 @@ "dev": true }, "qs": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz", - "integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==", + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz", + "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==", "dev": true }, "randexp": { @@ -4516,9 +4618,9 @@ "dev": true }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -4852,15 +4954,15 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -5237,14 +5339,13 @@ "dev": true }, "uglify-js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.0.tgz", - "integrity": "sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==", + "version": "3.9.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.3.tgz", + "integrity": "sha512-r5ImcL6QyzQGVimQoov3aL2ZScywrOgBXGndbWrdehKoSvGe/RmiE5Jpw/v+GvxODt6l2tpBXwA7n+qZVlHBMA==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "commander": "~2.20.3" }, "dependencies": { "commander": { @@ -5253,13 +5354,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true } } }, @@ -5430,12 +5524,12 @@ "dev": true }, "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", "dev": true, "requires": { - "browser-process-hrtime": "^0.1.2" + "browser-process-hrtime": "^1.0.0" } }, "webidl-conversions": { @@ -5522,9 +5616,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -5561,9 +5655,9 @@ "dev": true }, "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, "wrap-ansi": { @@ -5623,9 +5717,9 @@ "dev": true }, "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "dev": true, "requires": { "cliui": "^5.0.0", @@ -5637,13 +5731,13 @@ "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" + "yargs-parser": "^13.1.2" } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -5815,9 +5909,9 @@ } }, "yasway": { - "version": "1.8.11", - "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.11.tgz", - "integrity": "sha512-LhMkY455qHEV7rKMjfvwgXkoB26JJkuK4hqQnbjNXjpuT/lfEpbYJiPMjFOvZTf2VmJqCoM7sej6P+7LJyxM1Q==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.9.3.tgz", + "integrity": "sha512-yXyP2XFcUljK1/mbQ0lOS815+CtCQr/yjKc9NGNjAbz9sabMACwQtYV66nC4T93P6K83uGxP5QKcmXWC15eVPA==", "dev": true, "requires": { "@ts-common/json": "^0.3.0", @@ -5867,15 +5961,15 @@ } }, "z-schema": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.2.tgz", - "integrity": "sha512-7bGR7LohxSdlK1EOdvA/OHksvKGE4jTLSjd8dBj9YKT0S43N9pdMZ0Z7GZt9mHrBFhbNTRh3Ky6Eu2MHsPJe8g==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.3.tgz", + "integrity": "sha512-zkvK/9TC6p38IwcrbnT3ul9in1UX4cm1y/VZSs4GHKIiDCrlafc+YQBgQBUdDXLAoZHf2qvQ7gJJOo6yT1LH6A==", "dev": true, "requires": { "commander": "^2.7.1", "lodash.get": "^4.4.2", "lodash.isequal": "^4.5.0", - "validator": "^11.0.0" + "validator": "^12.0.0" }, "dependencies": { "commander": { @@ -5886,9 +5980,9 @@ "optional": true }, "validator": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", - "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-12.2.0.tgz", + "integrity": "sha512-jJfE/DW6tIK1Ek8nCfNFqt8Wb3nzMoAbocBF6/Icgg1ZFSBpObdnwVY2jQj6qUqzhx5jc71fpvBWyLGO7Xl+nQ==", "dev": true } } diff --git a/package.json b/package.json index 4b56361de1f4..1089ced9b10a 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,8 @@ "description": "Tests for Azure REST API Specifications", "license": "MIT", "devDependencies": { - "@azure/avocado": "^0.6.2", - "@azure/rest-api-specs-scripts": "0.6.1", + "@azure/avocado": "^0.6.3", + "@azure/rest-api-specs-scripts": "^0.8.0", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", "@ts-common/iterator": "^0.3.6", diff --git a/preproduction-azure-pipelines.yml b/preproduction-azure-pipelines.yml index 032bcad9782a..0b307b098e70 100644 --- a/preproduction-azure-pipelines.yml +++ b/preproduction-azure-pipelines.yml @@ -6,16 +6,16 @@ pr: autoCancel: false variables: - TRAVIS: 'true' + TRAVIS: "true" TRAVIS_BRANCH: $(System.PullRequest.TargetBranch) TRAVIS_PULL_REQUEST: $(System.PullRequest.PullRequestNumber) TRAVIS_REPO_SLUG: $(Build.Repository.Name) TRAVIS_PULL_REQUEST_SLUG: $(Build.Repository.Name) TRAVIS_PULL_REQUEST_SHA: $(Build.SourceVersion) - PR_ONLY: 'true' - PREPRODUCTION_PIPELINE: 'true' + PR_ONLY: "true" + PREPRODUCTION_PIPELINE: "true" jobs: -- template: .azure-pipelines/BreakingChange.yml -- template: .azure-pipelines/ModelValidation.yml -- template: .azure-pipelines/LintDiff.yml + - template: .azure-pipelines/BreakingChange.yml + - template: .azure-pipelines/ModelValidation.yml + - template: .azure-pipelines/LintDiff.yml diff --git a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json index f53959973fee..2fc8cf0b5874 100644 --- a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json +++ b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json @@ -3535,6 +3535,125 @@ } } } + }, + "/providers/Microsoft.ADHybridHealthService/services/{serviceName}/ipAddressAggregates": { + "get": { + "tags": [ + "Reports" + ], + "description": "Gets the IP address aggregates for a given service.", + "x-ms-examples": { + "list_IPAddressAggregatesByService": { + "$ref": "./examples/IpAddressAggregates.json" + } + }, + "operationId": "list_IPAddressAggregatesByService", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "The name of the service.", + "required": true, + "type": "string" + }, + { + "name": "skiptoken", + "in": "query", + "description": "A continuationtoken value returned in paginated result to load different pages.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of IP addresses.", + "schema": { + "$ref": "#/definitions/IPAddressAggregates" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.ADHybridHealthService/services/{serviceName}/ipAddressAggregateSettings": { + "get": { + "tags": [ + "Reports" + ], + "description": "Gets the IP address aggregate settings.", + "x-ms-examples": { + "list_IPAddressAggregateSettings": { + "$ref": "./examples/IpAddressAggregateSettings.json" + } + }, + "operationId": "list_IPAddressAggregateSettings", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "The name of the service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "IP address aggregate settings.", + "schema": { + "$ref": "#/definitions/IPAddressAggregateSetting" + } + } + } + }, + "patch": { + "tags": [ + "Configuration" + ], + "description": "Updates the IP address aggregate settings alert thresholds.", + "x-ms-examples": { + "update_IPAddressAggregateSettings": { + "$ref": "./examples/IpAddressAggregateSettingsUpdate.json" + } + }, + "operationId": "update_IPAddressAggregateSettings", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "The name of the service.", + "required": true, + "type": "string" + }, + { + "name": "IPAddressAggregateSetting", + "in": "body", + "description": "The IP address aggregate setting object.", + "required": true, + "schema": { + "$ref": "#/definitions/IPAddressAggregateSetting" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "IP AddressAggregate Settings.", + "schema": { + "$ref": "#/definitions/IPAddressAggregateSetting" + } + } + } + } } }, "definitions": { @@ -4939,7 +5058,7 @@ "type": "string" }, "ipAddress": { - "description": "The Ip address corresponding to the last error event.", + "description": "The IP address corresponding to the last error event.", "type": "string" }, "lastUpdated": { @@ -5331,6 +5450,135 @@ } } }, + "IPAddressAggregate": { + "description": "The key value pair for properties.", + "type": "object", + "properties": { + "id": { + "description": "Unique ID for the entree", + "type": "string" + }, + "tenantId": { + "description": "The tenant ID", + "type": "string" + }, + "serviceId": { + "description": "The service ID", + "type": "string" + }, + "ipAddress": { + "description": "The IP address from where the attempted login originated from.", + "type": "string" + }, + "timestamp": { + "description": "When the event occurred", + "type": "string" + }, + "firstAuditTimestamp": { + "description": "The first audit timestamp", + "type": "string" + }, + "lastAuditTimestamp": { + "description": "The last audit timestamp", + "type": "string" + }, + "extranetLockoutErrorCount": { + "description": "The extranet lockout error count", + "type": "integer" + }, + "badPasswordErrorCount": { + "description": "The bad password error count", + "type": "integer" + }, + "uniqueUsernamesAttemptedCount": { + "description": "The unique usernames attempted", + "type": "integer" + }, + "attemptCountThresholdIsExceeded": { + "description": "A value indicating whether the attempt count threshold been exceeded", + "type": "boolean" + }, + "timeSpan": { + "description": "The duration of the event", + "type": "string" + }, + "isWhitelistedIpAddress": { + "description": "A value indicating whether the IP address has been whitelisted.", + "type": "boolean" + }, + "networkLocation": { + "description": "The network location", + "type": "string" + }, + "attemptCountThresholdOnTrigger": { + "description": "The attempted count threshold on trigger.", + "type": "integer" + }, + "attemptThresholdTypeOnTrigger": { + "description": "The attempted threshold type on trigger.", + "type": "string" + }, + "geographicLocation": { + "description": "The geographic location.", + "type": "string" + } + } + }, + "IPAddressAggregates": { + "description": "IP address aggregates.", + "type": "object", + "properties": { + "value": { + "description": "The value returned by the operation.", + "type": "array", + "items": { + "$ref": "#/definitions/IPAddressAggregate" + } + }, + "nextLink": { + "description": "URL to get the next set of IP Aggregate list results if there are any.", + "type": "string" + }, + "totalCount": { + "description": "The number of results.", + "type": "integer" + }, + "continuationToken": { + "description": "The continuation token for paginated calls.", + "type": "string" + } + } + }, + "IPAddressAggregateSetting": { + "description": "The key value pair for IP aggregate thresholds.", + "type": "object", + "properties": { + "id": { + "description": "Unique ID for the entree", + "type": "string" + }, + "badPasswordAndExtranetLockoutCombinedDailyThreshold": { + "description": "This threshold setting defines the per day trigger for a new event to be generated in the report.", + "type": "integer" + }, + "badPasswordAndExtranetLockoutCombinedHourlyThreshold": { + "description": "This threshold setting defines the per hour trigger for a new event to be generated in the report.", + "type": "integer" + }, + "extranetLockoutDailyThreshold": { + "description": "This threshold setting defines the per hour trigger for a new event to be generated in the report.", + "type": "integer" + }, + "extranetLockoutHourlyThreshold": { + "description": "This threshold setting defines the per hour trigger for a new event to be generated in the report.", + "type": "integer" + }, + "emailNotificationEnabled": { + "description": "A value indicating whether email notification has been enabled.", + "type": "boolean" + } + } + }, "Item": { "description": "The key value pair for properties.", "type": "object", diff --git a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettings.json b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettings.json new file mode 100644 index 000000000000..3b3117a2864b --- /dev/null +++ b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "sampleServiceName", + "api-version": "2014-01-01" + }, + "responses": { + "200": { + "body": { + "id": "ipAddressAggregateSettings", + "badPasswordAndExtranetLockoutCombinedDailyThreshold": 11, + "badPasswordAndExtranetLockoutCombinedHourlyThreshold": 7, + "extranetLockoutDailyThreshold": 7, + "extranetLockoutHourlyThreshold": 8, + "emailNotificationEnabled": true + } + } + } +} diff --git a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettingsUpdate.json b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettingsUpdate.json new file mode 100644 index 000000000000..f2b065bed92b --- /dev/null +++ b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregateSettingsUpdate.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "sampleServiceName", + "IPAddressAggregateSetting": { + "id": "ipAddressAggregateSettings", + "badPasswordAndExtranetLockoutCombinedDailyThreshold": 11, + "badPasswordAndExtranetLockoutCombinedHourlyThreshold": 7, + "extranetLockoutDailyThreshold": 7, + "extranetLockoutHourlyThreshold": 8, + "emailNotificationEnabled": true + }, + "api-version": "2014-01-01" + }, + "responses": { + "200": { + "body": { + "id": "ipAddressAggregateSettings", + "badPasswordAndExtranetLockoutCombinedDailyThreshold": 11, + "badPasswordAndExtranetLockoutCombinedHourlyThreshold": 7, + "extranetLockoutDailyThreshold": 7, + "extranetLockoutHourlyThreshold": 8, + "emailNotificationEnabled": true + } + } + } +} diff --git a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregates.json b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregates.json new file mode 100644 index 000000000000..a571904f0028 --- /dev/null +++ b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/examples/IpAddressAggregates.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "sampleServiceName", + "skiptoken": "someSkipToken", + "api-version": "2014-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "MjE1MjI4L2hvdXIvRXh0cmFuZXQvLS8wL1RydWU=", + "tenantId": "22fbe147-e69f-40a3-b5ee-578e52b73640", + "serviceId": "1b322937-1795-43d7-988c-cdb238ff906f", + "ipAddress": "-", + "timestamp": "2020-02-20T23:00:00Z", + "firstAuditTimestamp": "2020-02-27T23:01:12.015Z", + "lastAuditTimestamp": "2020-02-26T23:44:45Z", + "extranetLockoutErrorCount": 4, + "badPasswordErrorCount": 24, + "uniqueUsernamesAttemptedCount": 19, + "attemptCountThresholdIsExceeded": true, + "timeSpan": "hour", + "isWhitelistedIpAddress": true, + "networkLocation": "Extranet", + "attemptCountThresholdOnTrigger": 0, + "attemptThresholdTypeOnTrigger": "NotSet", + "geographicLocation": null + } + ], + "nextLink": null, + "totalCount": 1, + "continuationToken": null + } + } + } +} diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2017-04-19/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2017-04-19/advisor.json index b529e7e13799..b58bf9ef96ac 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2017-04-19/advisor.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2017-04-19/advisor.json @@ -346,7 +346,7 @@ { "name": "$filter", "in": "query", - "description": "The filter to apply to the recommendations.", + "description": "The filter to apply to the recommendations.
Filter can be applied to properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '[Category](#category)'] with operators ['eq', 'and', 'or'].
Example:
- $filter=Category eq 'Cost' and ResourceGroup eq 'MyResourceGroup' ", "required": false, "type": "string" }, diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json index 1b828b108923..b23e5c9cde79 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json @@ -396,7 +396,7 @@ { "name": "$filter", "in": "query", - "description": "The filter to apply to the recommendations.", + "description": "The filter to apply to the recommendations.
Filter can be applied to properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '[Category](#category)'] with operators ['eq', 'and', 'or'].
Example:
- $filter=Category eq 'Cost' and ResourceGroup eq 'MyResourceGroup'", "required": false, "type": "string" }, @@ -1053,6 +1053,10 @@ "additionalProperties": { "type": "string" } + }, + "resourceMetadata": { + "$ref": "#/definitions/ResourceMetadata", + "description": "Metadata of resource that was assessed" } } }, @@ -1091,6 +1095,20 @@ } } }, + "ResourceMetadata": { + "description": "Recommendation resource metadata", + "type": "object", + "properties": { + "resourceId": { + "description": "Azure resource Id of the assessed resource", + "type": "string" + }, + "source": { + "description": "Source from which recommendation is generated", + "type": "string" + } + } + }, "OperationEntityListResult": { "description": "The list of Advisor operations.", "type": "object", diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json index 3d359b754275..505f0a253642 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json @@ -10,15 +10,19 @@ "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId", "name": "recommendationId", "properties": { - "category": "HighAvailability", + "category": "Security", "impact": "Medium", - "impactedField": "Microsoft.Compute/availabilitySets", + "impactedField": "Microsoft.Compute/virtualMachines", "impactedValue": "armavset", "lastUpdated": "2017-02-24T22:24:43.3216408Z", "risk": "Warning", "shortDescription": { - "problem": "This availability set is not configured for fault tolerance", - "solution": "To ensure high availability add one or more virtual machines to this availability set" + "problem": "Monitoring agent is not installed on your machines", + "solution": "Monitoring agent should be installed on your machines" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz", + "source": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/assessmentGuid" } }, "type": "Microsoft.Advisor/recommendations" diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json index 2d4ad35f625e..724337f2e708 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json @@ -10,8 +10,8 @@ "nextLink": "https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Advisor/recommendations?api-version=2020-01-01&$top=10&$skiptoken=skiptoken", "value": [ { - "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID", - "name": "recGUID", + "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID1", + "name": "recGUID1", "properties": { "category": "HighAvailability", "impact": "Medium", @@ -22,6 +22,30 @@ "shortDescription": { "problem": "This availability set is not configured for fault tolerance", "solution": "To ensure high availability add one or more virtual machines to this availability set" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/abc" + } + }, + "type": "Microsoft.Advisor/recommendations" + }, + { + "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID2", + "name": "recGUID2", + "properties": { + "category": "Security", + "impact": "Medium", + "impactedField": "Microsoft.Compute/virtualMachines", + "impactedValue": "armavset", + "lastUpdated": "2017-02-24T22:24:43.3216408Z", + "risk": "Warning", + "shortDescription": { + "problem": "Monitoring agent is not installed on your machines", + "solution": "Monitoring agent should be installed on your machines" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz", + "source": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/assessmentGuid" } }, "type": "Microsoft.Advisor/recommendations" diff --git a/specification/advisor/resource-manager/readme.go.md b/specification/advisor/resource-manager/readme.go.md index 66a3806db5ad..e615fb396465 100644 --- a/specification/advisor/resource-manager/readme.go.md +++ b/specification/advisor/resource-manager/readme.go.md @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-01 - tag: package-2017-04 - tag: package-2017-03 - tag: package-2016-07-preview ``` +### Tag: package-2020-01 and go + +These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) +``` + ### Tag: package-2017-04 and go These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. diff --git a/specification/alertsmanagement/resource-manager/readme.cli.md b/specification/alertsmanagement/resource-manager/readme.cli.md index 045547609823..960d761b0763 100644 --- a/specification/alertsmanagement/resource-manager/readme.cli.md +++ b/specification/alertsmanagement/resource-manager/readme.cli.md @@ -6,26 +6,25 @@ These settings apply only when `--cli` is specified on the command line. cli: namespace: azure.mgmt.alertsmanagement test-scenario: - - name: PutActionRule - - name: Create or update a Smart Detector alert rule - - name: Get a Smart Detector alert rule - - name: GetActionRuleById - - name: List alert rules - - name: GetActionRulesResourceGroupWide - - name: Resolve - - name: Get - - name: Resolve - - name: List Smart Detector alert rules - - name: GetById - - name: Summary - - name: List - - name: GetActionRulesSubscriptionWide - - name: ListAlerts - - name: MonService - - name: Patch alert rules - - name: PatchActionRule - - name: changestate - - name: Resolve - - name: Delete a Smart Detector alert rule - - name: DeleteActionRule + - name: /ActionRules/put/PutActionRule + - name: /SmartDetectorAlertRules/put/Create or update a Smart Detector alert rule + - name: /SmartDetectorAlertRules/get/Get a Smart Detector alert rule + - name: /ActionRules/get/GetActionRuleById + - name: /SmartDetectorAlertRules/get/List alert rules + - name: /ActionRules/get/GetActionRulesResourceGroupWide + - name: /SmartGroups/get/Resolve + - name: /SmartGroups/get/Get + - name: /SmartDetectorAlertRules/get/List Smart Detector alert rules + - name: /Alerts/get/GetById + - name: /Alerts/get/Summary + - name: /SmartGroups/get/List + - name: /ActionRules/get/GetActionRulesSubscriptionWide + - name: /Alerts/get/ListAlerts + - name: /Alerts/get/MonService + - name: /SmartDetectorAlertRules/patch/Patch alert rules + - name: /ActionRules/patch/PatchActionRule + - name: /SmartGroups/post/changestate + - name: /Alerts/post/Resolve + - name: /SmartDetectorAlertRules/delete/Delete a Smart Detector alert rule + - name: /ActionRules/delete/DeleteActionRule ``` diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json index 724ba4dec0d7..5a2330092a28 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "version": "1.0", - "title": "Definitions file" + "title": "Definitions file", + "version": "2018-06-01-preview" }, "paths": {}, "definitions": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json index 902b57422f2f..b963b693b11c 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json @@ -693,6 +693,26 @@ "minLength": 1, "maxLength": 80, "x-ms-parameter-location": "method" + }, + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway entity identifier. Must be unique in the current API Management service instance. Must not have value 'managed'", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayHostnameConfigurationIdParameter": { + "name": "hcId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway hostname configuration identifier. Must be unique in the scope of parent Gateway entity.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json index 5ce734172f94..d2c39f3c94fe 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json @@ -248,6 +248,9 @@ }, "ApiManagementCreateServiceWithSystemCertificates": { "$ref": "./examples/ApiManagementCreateServiceWithSystemCertificates.json" + }, + "ApiManagementCreateServiceWithUserAssignedIdentity": { + "$ref": "./examples/ApiManagementCreateServiceWithUserAssignedIdentity.json" } }, "parameters": [ @@ -1250,11 +1253,12 @@ "capacity": { "type": "integer", "format": "int32", - "description": "Capacity of the SKU (number of deployed units of the SKU)." + "description": "Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0." } }, "required": [ - "name" + "name", + "capacity" ], "description": "API Management service resource SKU properties." }, @@ -1462,21 +1466,10 @@ "description": "The client tenant id of the identity." }, "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", "type": "object", "additionalProperties": { - "type": "object", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } + "$ref": "#/definitions/UserIdentityProperties" } } }, @@ -1484,6 +1477,19 @@ "type" ] }, + "UserIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, "Operation": { "description": "REST API operation", "type": "object", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json new file mode 100644 index 000000000000..b0903265df21 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json @@ -0,0 +1,997 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Gateway entity in Azure API Management deployment.", + "version": "2019-12-01-preview" + }, + "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.ApiManagement/service/{serviceName}/gateways": { + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_ListByService", + "description": "Lists a collection of gateways registered with service instance.", + "x-ms-examples": { + "ApiManagementListGateways": { + "$ref": "./examples/ApiManagementListGateways.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Gateway entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}": { + "head": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGateway": { + "$ref": "./examples/ApiManagementHeadGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Get", + "description": "Gets the details of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_CreateOrUpdate", + "description": "Creates or updates a Gateway to be used in Api Management instance.", + "x-ms-examples": { + "ApiManagementCreateGateway": { + "$ref": "./examples/ApiManagementCreateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Gateway was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "200": { + "description": "The Gateway details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Update", + "description": "Updates the details of the gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGateway": { + "$ref": "./examples/ApiManagementUpdateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The gateway details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Delete", + "description": "Deletes specific Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGateway": { + "$ref": "./examples/ApiManagementDeleteGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Gateway was successfully deleted." + }, + "204": { + "description": "The Gateway was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/listKeys": { + "post": { + "tags": [ + "GatewayListKeys" + ], + "operationId": "Gateway_ListKeys", + "description": "Retrieves gateway keys.", + "x-ms-examples": { + "ApiManagementGatewayKeys": { + "$ref": "./examples/ApiManagementGatewayListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway keys.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeysContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/regenerateKey": { + "post": { + "tags": [ + "GatewayRegenerateKey" + ], + "operationId": "Gateway_RegenerateKey", + "description": "Regenerates specified gateway key invalidating any tokens created with it.", + "x-ms-examples": { + "ApiManagementGatewayRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementGatewayRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeyRegenerationRequestContract" + } + } + ], + "responses": { + "204": { + "description": "Key successfully regenerated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/generateToken": { + "post": { + "tags": [ + "GatewayGenerateToken" + ], + "operationId": "Gateway_GenerateToken", + "description": "Gets the Shared Access Authorization Token for the gateway.", + "x-ms-examples": { + "ApiManagementGatewayToken": { + "$ref": "./examples/ApiManagementGatewayGenerateToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenRequestContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations": { + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_ListByService", + "description": "Lists the collection of hostname configurations for the specified gateway.", + "x-ms-examples": { + "ApiManagementListGatewayHostnameConfigurations": { + "$ref": "./examples/ApiManagementListGatewayHostnameConfigurations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Collection of hostname configuration entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations/{hcId}": { + "head": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_GetEntityTag", + "description": "Checks that hostname configuration entity specified by identifier exists for specified Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementHeadGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Get", + "description": "Gets the details of the Gateway hostname configuration specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_CreateOrUpdate", + "description": "Creates of updates hostname configuration for a Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementCreateGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + } + ], + "responses": { + "201": { + "description": "The new Gateway hostname configuration was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "200": { + "description": "The Gateway hostname configuration details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Delete", + "description": "Deletes the specified hostname configuration from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementDeleteGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Hostname configuration was successfully removed from Gateway" + }, + "204": { + "description": "Hostname configuration successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis": { + "get": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_ListByService", + "description": "Lists a collection of the APIs associated with a gateway.", + "x-ms-examples": { + "ApiManagementListGatewayApis": { + "$ref": "./examples/ApiManagementListGatewayApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis/{apiId}": { + "head": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_GetEntityTag", + "description": "Checks that API entity specified by identifier is associated with the Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayApi": { + "$ref": "./examples/ApiManagementHeadGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_CreateOrUpdate", + "description": "Adds an API to the specified Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayApi": { + "$ref": "./examples/ApiManagementCreateGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/AssociationContract" + } + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_Delete", + "description": "Deletes the specified API from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayApi": { + "$ref": "./examples/ApiManagementDeleteGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from Gateway" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json index 31020dc95f57..3ce3a7c7b67b 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json @@ -5042,6 +5042,23 @@ "type": "string", "description": "User Password. If no value is provided, a default password is generated." }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, "confirmation": { "type": "string", "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", @@ -5317,6 +5334,227 @@ } }, "description": "Subscription keys." + }, + "GatewayCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway list representation." + }, + "GatewayContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayContractProperties", + "description": "Gateway details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway details." + }, + "GatewayContractProperties": { + "properties": { + "locationData": { + "$ref": "#/definitions/ResourceLocationDataContract", + "description": "Gateway location." + }, + "description": { + "type": "string", + "description": "Gateway description", + "maxLength": 1000 + } + }, + "description": "Properties of the Gateway contract." + }, + "ResourceLocationDataContract": { + "properties": { + "name": { + "type": "string", + "description": "A canonical name for the geographic or physical location.", + "maxLength": 256 + }, + "city": { + "type": "string", + "description": "The city or locality where the resource is located.", + "maxLength": 256 + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located.", + "maxLength": 256 + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located.", + "maxLength": 256 + } + }, + "required": [ + "name" + ], + "description": "Resource location data properties." + }, + "GatewayKeysContract": { + "properties": { + "primary": { + "type": "string", + "description": "Primary gateway key." + }, + "secondary": { + "type": "string", + "description": "Secondary gateway key." + } + }, + "description": "Gateway authentication keys." + }, + "GatewayTokenRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate gateway token.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Gateway token request contract properties." + }, + "GatewayTokenContract": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authentication token value for the Gateway." + } + }, + "description": "Gateway access token." + }, + "GatewayKeyRegenerationRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key being regenerated.", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + }, + "required": [ + "keyType" + ], + "description": "Gateway key regeneration request contract properties." + }, + "GatewayHostnameConfigurationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayHostnameConfigurationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway hostname configuration list representation." + }, + "GatewayHostnameConfigurationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayHostnameConfigurationContractProperties", + "description": "Gateway hostname configuration details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway hostname configuration details." + }, + "GatewayHostnameConfigurationContractProperties": { + "properties": { + "hostname": { + "type": "string", + "description": "Hostname value. Supports valid domain name, partial or full wildcard" + }, + "certificateId": { + "type": "string", + "description": "Identifier of Certificate entity that will be used for TLS connection establishment" + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Determines whether gateway requests client certificate" + } + }, + "description": "Gateway hostname configuration details." + }, + "AssociationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "type": "string", + "description": "Provisioning state.", + "enum": [ + "created" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + } + }, + "description": "Association entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Association entity details." } }, "parameters": {} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json new file mode 100644 index 000000000000..50de5fc7db64 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json new file mode 100644 index 000000000000..34206d796703 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "parameters": { + "properties": { + "provisioningState": "created" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..8e1fbf4294df --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "parameters": { + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json index 594ac0d96b47..8fb2e7b79560 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json @@ -10,7 +10,8 @@ "publisherName": "autorestsdk" }, "sku": { - "name": "Consumption" + "name": "Consumption", + "capacity": 0 }, "identity": { "type": "SystemAssigned" diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json new file mode 100644 index 000000000000..eaebda541b0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyQ=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyk=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "tenantId": "XXXXX-86f1-41af-XXXX-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "XXXXX-6e62-4649-9f54-a119fc1ba85e", + "clientId": "5a2c6b8e-0905-XXXX-a772-993c9418137f" + } + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json new file mode 100644 index 000000000000..51105639f040 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json new file mode 100644 index 000000000000..c64e35176668 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..d6cc5a2f894a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json new file mode 100644 index 000000000000..4cddff66fe3c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "keyType": "primary", + "expiry": "2020-04-21T00:44:24.2845269Z" + } + }, + "responses": { + "200": { + "body": { + "value": "gw1&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json new file mode 100644 index 000000000000..2e83fcab3f00 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "primary": "primary_key_value", + "secondary": "secondary_key_value" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json new file mode 100644 index 000000000000..4c512b91f977 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gwId", + "parameters": { + "keyType": "primary" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json new file mode 100644 index 000000000000..f43fb9a7c22b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..2710e041a5b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json new file mode 100644 index 000000000000..636f39b48033 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "mygateway" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json new file mode 100644 index 000000000000..530f7473ed0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "api1" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..1ad3d4841a4f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json new file mode 100644 index 000000000000..7ec98f57a178 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json new file mode 100644 index 000000000000..a8350e469688 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/hostname1", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "foo.bar.com", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert2", + "negotiateClientCertificate": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json new file mode 100644 index 000000000000..3152a0f24311 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location 1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw2", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "description": "my gateway 2", + "locationData": { + "name": "my location 2" + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json new file mode 100644 index 000000000000..02776b5515e0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json index 950a85aa7595..a4f4ef653186 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json @@ -4964,6 +4964,23 @@ "type": "string", "description": "User Password. If no value is provided, a default password is generated." }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, "confirmation": { "type": "string", "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json new file mode 100644 index 000000000000..c7000c981ff8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json @@ -0,0 +1,718 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on entities like API, Product, and Subscription associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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": {}, + "definitions": { + "ErrorFieldContract": { + "properties": { + "code": { + "type": "string", + "description": "Property level error code." + }, + "message": { + "type": "string", + "description": "Human-readable representation of property-level error." + }, + "target": { + "type": "string", + "description": "Property name." + } + }, + "description": "Error Field contract." + }, + "ErrorResponse": { + "properties": { + "error": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ErrorResponseBody", + "description": "Properties of the Error Response." + } + }, + "description": "Error Response." + }, + "ErrorResponseBody": { + "properties": { + "code": { + "type": "string", + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response." + }, + "message": { + "type": "string", + "description": "Human-readable representation of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorFieldContract" + }, + "description": "The list of invalid fields send in request, in case of validation error." + } + }, + "description": "Error Body contract." + }, + "RegionContract": { + "properties": { + "name": { + "type": "string", + "description": "Region name.", + "readOnly": true + }, + "isMasterRegion": { + "description": "whether Region is the master region.", + "type": "boolean" + }, + "isDeleted": { + "description": "whether Region is deleted.", + "type": "boolean" + } + }, + "description": "Region profile." + }, + "RegionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionContract" + }, + "description": "Lists of Regions." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Lists Regions operation response details." + }, + "Resource": { + "description": "The Resource definition.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource." + } + } + } + }, + "parameters": { + "AccessParameter": { + "name": "accessName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "access" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "AccessIdName" + }, + "description": "The identifier of the Access configuration.", + "x-ms-parameter-location": "method" + }, + "ApiIdParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "ApiIdRevParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "ApiVersionSetIdParameter": { + "name": "versionSetId", + "in": "path", + "required": true, + "type": "string", + "description": "Api Version Set identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AttachmentIdParameter": { + "name": "attachmentId", + "in": "path", + "required": true, + "type": "string", + "description": "Attachment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AuthenticationServerIdParameter": { + "name": "authsid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the authorization server.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "BackendIdParameter": { + "name": "backendId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "CacheIdParameter": { + "name": "cacheId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Cache entity. Cache identifier (should be either 'default' or valid Azure region identifier).", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CertificateIdParameter": { + "name": "certificateId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the certificate entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CommentIdParameter": { + "name": "commentId", + "in": "path", + "required": true, + "type": "string", + "description": "Comment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ConfigurationParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "configuration" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "configurationIdName" + }, + "description": "The identifier of the Git Configuration Operation.", + "x-ms-parameter-location": "method" + }, + "DiagnosticIdParameter": { + "name": "diagnosticId", + "in": "path", + "required": true, + "type": "string", + "description": "Diagnostic identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "EmailParameter": { + "name": "email", + "in": "path", + "required": true, + "type": "string", + "description": "Email identifier.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Group identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "IdentityProviderNameParameter": { + "name": "identityProviderName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier.", + "x-ms-parameter-location": "method" + }, + "IfMatchOptionalParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "description": "ETag of the Entity. Not required when creating an entity, but required when updating an entity.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IfMatchRequiredParameter": { + "name": "If-Match", + "in": "header", + "required": true, + "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IssueIdParameter": { + "name": "issueId", + "in": "path", + "required": true, + "type": "string", + "description": "Issue identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location in which the API Management service is deployed. This is one of the Azure Regions like West US, East US, South Central US.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "LoggerIdParameter": { + "name": "loggerId", + "in": "path", + "required": true, + "type": "string", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "description": "Logger identifier. Must be unique in the API Management service instance.", + "x-ms-parameter-location": "method" + }, + "NotificationNameParameter": { + "name": "notificationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "RequestPublisherNotificationMessage", + "PurchasePublisherNotificationMessage", + "NewApplicationNotificationMessage", + "BCC", + "NewIssuePublisherNotificationMessage", + "AccountClosedPublisher", + "QuotaLimitApproachingPublisherNotificationMessage" + ], + "x-ms-enum": { + "name": "NotificationName", + "modelAsString": true, + "values": [ + { + "value": "RequestPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval." + }, + { + "value": "PurchasePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions." + }, + { + "value": "NewApplicationNotificationMessage", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery." + }, + { + "value": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers." + }, + { + "value": "NewIssuePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal." + }, + { + "value": "AccountClosedPublisher", + "description": "The following email recipients and users will receive email notifications when developer closes his account." + }, + { + "value": "QuotaLimitApproachingPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota." + } + ] + }, + "description": "Notification Name Identifier.", + "x-ms-parameter-location": "method" + }, + "NotifySubscriptionStateChangeParameter": { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Notify change in Subscription State. \n - If false, do not send any email notification for change of state of subscription \n - If true, send email notification of change of state of subscription ", + "x-ms-parameter-location": "method" + }, + "OpenIdConnectIdParameter": { + "name": "opid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the OpenID Connect Provider.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "PolicyExportFormat": { + "name": "format", + "in": "query", + "required": false, + "type": "string", + "description": "Policy Export Format.", + "enum": [ + "xml", + "rawxml" + ], + "x-ms-enum": { + "name": "PolicyExportFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + } + ] + }, + "default": "xml", + "x-ms-parameter-location": "method" + }, + "PolicyIdParameter": { + "name": "policyId", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "policy" + ], + "description": "The identifier of the Policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "PolicyIdName" + }, + "x-ms-parameter-location": "method" + }, + "ProductIdParameter": { + "name": "productId", + "in": "path", + "required": true, + "type": "string", + "description": "Product identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "NamedValueIdParameter": { + "name": "namedValueId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the NamedValue.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "QuotaCounterKeyParameter": { + "name": "quotaCounterKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota counter key identifier.This is the result of expression defined in counter-key attribute of the quota-by-key policy.For Example, if you specify counter-key=\"boo\" in the policy, then it’s accessible by \"boo\" counter key. But if it’s defined as counter-key=\"@(\"b\"+\"a\")\" then it will be accessible by \"ba\" key", + "x-ms-parameter-location": "method" + }, + "QuotaPeriodKeyParameter": { + "name": "quotaPeriodKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota period key identifier.", + "x-ms-parameter-location": "method" + }, + "ReleaseIdParameter": { + "name": "releaseId", + "in": "path", + "required": true, + "type": "string", + "description": "Release identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "SchemaIdParameter": { + "name": "schemaId", + "in": "path", + "required": true, + "type": "string", + "description": "Schema identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ServiceNameParameter": { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the API Management service.", + "minLength": 1, + "maxLength": 50, + "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", + "x-ms-parameter-location": "method" + }, + "SkipQueryParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to skip.", + "minimum": 0, + "x-ms-parameter-location": "method" + }, + "SubscriptionEntityIdParameter": { + "name": "sid", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription entity Identifier. The entity represents the association between a user and a product in API Management.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "TagIdParameter": { + "name": "tagId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TagDescriptionIdParameter": { + "name": "tagDescriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag description identifier. Used when creating tagDescription for API/Tag association. Based on API and Tag names.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TemplateNameParameter": { + "name": "templateName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "applicationApprovedNotificationMessage", + "accountClosedDeveloper", + "quotaLimitApproachingDeveloperNotificationMessage", + "newDeveloperNotificationMessage", + "emailChangeIdentityDefault", + "inviteUserNotificationMessage", + "newCommentNotificationMessage", + "confirmSignUpIdentityDefault", + "newIssueNotificationMessage", + "purchaseDeveloperNotificationMessage", + "passwordResetIdentityDefault", + "passwordResetByAdminNotificationMessage", + "rejectDeveloperNotificationMessage", + "requestDeveloperNotificationMessage" + ], + "x-ms-enum": { + "name": "TemplateName", + "modelAsString": true + }, + "description": "Email Template Name Identifier.", + "x-ms-parameter-location": "method" + }, + "TopQueryParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to return.", + "minimum": 1, + "x-ms-parameter-location": "method" + }, + "UserIdParameter": { + "name": "userId", + "in": "path", + "required": true, + "type": "string", + "description": "User identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway entity identifier. Must be unique in the current API Management service instance. Must not have value 'managed'", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayHostnameConfigurationIdParameter": { + "name": "hcId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway hostname configuration identifier. Must be unique in the scope of parent Gateway entity.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json new file mode 100644 index 000000000000..9a765712e354 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json @@ -0,0 +1,4470 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on API entity and their Operations associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/apis": { + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_ListByService", + "description": "Lists all APIs of the API Management service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-apis" + }, + "x-ms-examples": { + "ApiManagementListApis": { + "$ref": "./examples/ApiManagementListApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "name": "expandApiVersionSet", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include full ApiVersionSet resource in response" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of Apis.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}": { + "head": { + "tags": [ + "Api" + ], + "operationId": "Api_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApi": { + "$ref": "./examples/ApiManagementHeadApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_Get", + "description": "Gets the details of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiContract": { + "$ref": "./examples/ApiManagementGetApiContract.json" + }, + "ApiManagementGetApiRevisionContract": { + "$ref": "./examples/ApiManagementGetApiRevision.json" + } + }, + "produces": [ + "application/json", + "application/vnd.sun.wadl+xml", + "application/vnd.swagger.doc+json", + "application/wsdl+xml", + "application/vnd.oai.openapi", + "application/vnd.oai.openapi+json" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified API entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Api" + ], + "operationId": "Api_CreateOrUpdate", + "description": "Creates new or updates existing specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementCreateApiUsingOai3Import": { + "$ref": "./examples/ApiManagementCreateApiUsingOai3Import.json" + }, + "ApiManagementCreateApiUsingSwaggerImport": { + "$ref": "./examples/ApiManagementCreateApiUsingSwaggerImport.json" + }, + "ApiManagementCreateApiUsingWadlImport": { + "$ref": "./examples/ApiManagementCreateApiUsingWadlImport.json" + }, + "ApiManagementCreateSoapToRestApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json" + }, + "ApiManagementCreateSoapPassThroughApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json" + }, + "ApiManagementCreateApi": { + "$ref": "./examples/ApiManagementCreateApi.json" + }, + "ApiManagementCreateApiRevisionFromExistingApi": { + "$ref": "./examples/ApiManagementCreateApiRevisionFromExistingApi.json" + }, + "ApiManagementCreateApiNewVersionUsingExistingApi": { + "$ref": "./examples/ApiManagementCreateApiNewVersionUsingExistingApi.json" + }, + "ApiManagementCreateApiClone": { + "$ref": "./examples/ApiManagementCreateApiClone.json" + }, + "ApiManagementCreateApiWithOpenIdConnect": { + "$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json" + }, + "ApiManagementCreateApiUsingImportOverrideServiceUrl": { + "$ref": "./examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiCreateOrUpdateParameter" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "API was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "202": { + "description": "Request to create or update API was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "API was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "Api" + ], + "operationId": "Api_Update", + "description": "Updates the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementUpdateApi": { + "$ref": "./examples/ApiManagementUpdateApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiUpdateContract" + }, + "description": "API Update Contract parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The API was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Api" + ], + "operationId": "Api_Delete", + "description": "Deletes the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteApi": { + "$ref": "./examples/ApiManagementDeleteApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "deleteRevisions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete all revisions of the Api." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API was successfully deleted." + }, + "204": { + "description": "The API was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/revisions": { + "get": { + "tags": [ + "ApiRevision" + ], + "operationId": "ApiRevision_ListByService", + "description": "Lists all revisions of an API.", + "x-ms-examples": { + "ApiManagementListApiRevisions": { + "$ref": "./examples/ApiManagementListApiRevisions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of revision details.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiRevisionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiRevisionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases": { + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_ListByService", + "description": "Lists all releases of an API. An API release is created when making an API Revision current. Releases are also used to rollback to previous revisions. Results will be paged and can be constrained by the $top and $skip parameters.", + "x-ms-examples": { + "ApiManagementListApiReleases": { + "$ref": "./examples/ApiManagementListApiReleases.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| notes | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of API Releases.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiReleaseContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}": { + "head": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_GetEntityTag", + "description": "Returns the etag of an API release.", + "x-ms-examples": { + "ApiManagementHeadApiRelease": { + "$ref": "./examples/ApiManagementHeadApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity state (Etag) version of the api release as specified by its identifier.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Get", + "description": "Returns the details of an API release.", + "x-ms-examples": { + "ApiManagementGetApiRelease": { + "$ref": "./examples/ApiManagementGetApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns the details of an API Release.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_CreateOrUpdate", + "description": "Creates a new Release for the API.", + "x-ms-examples": { + "ApiManagementCreateApiRelease": { + "$ref": "./examples/ApiManagementCreateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Release was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Release was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Update", + "description": "Updates the details of the release of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiRelease": { + "$ref": "./examples/ApiManagementUpdateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "API Release Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Release successfully updated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Delete", + "description": "Deletes the specified release in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiRelease": { + "$ref": "./examples/ApiManagementDeleteApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API release successfully removed" + }, + "204": { + "description": "API release successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations": { + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_ListByApi", + "description": "Lists a collection of the operations for the specified API.", + "x-ms-examples": { + "ApiManagementListApiOperations": { + "$ref": "./examples/ApiManagementListApiOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of operation summary entities at the API level.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OperationContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}": { + "head": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperation": { + "$ref": "./examples/ApiManagementHeadApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Get", + "description": "Gets the details of the API Operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiOperation": { + "$ref": "./examples/ApiManagementGetApiOperation.json" + }, + "ApiManagementGetApiOperationPetStore": { + "$ref": "./examples/ApiManagementGetApiOperationPetStore.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_CreateOrUpdate", + "description": "Creates a new operation in the API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiOperation": { + "$ref": "./examples/ApiManagementCreateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Operation was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Operation was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Update", + "description": "Updates the details of the operation in the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiOperation": { + "$ref": "./examples/ApiManagementUpdateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationUpdateContract" + }, + "description": "API Operation Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The operation was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Delete", + "description": "Deletes the specified operation in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiOperation": { + "$ref": "./examples/ApiManagementDeleteApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API operation successfully removed" + }, + "204": { + "description": "API operation successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies": { + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_ListByOperation", + "description": "Get the list of policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementListApiOperationPolicies": { + "$ref": "./examples/ApiManagementListApiOperationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operations Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationPolicy": { + "$ref": "./examples/ApiManagementHeadApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Get", + "description": "Get the policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementGetApiOperationPolicy": { + "$ref": "./examples/ApiManagementGetApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operation Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API Operation level.", + "x-ms-examples": { + "ApiManagementCreateApiOperationPolicy": { + "$ref": "./examples/ApiManagementCreateApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Operation policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Operation policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Delete", + "description": "Deletes the policy configuration at the Api Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationPolicy": { + "$ref": "./examples/ApiManagementDeleteApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags": { + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_ListByOperation", + "description": "Lists all Tags associated with the Operation.", + "x-ms-examples": { + "ApiManagementListApiOperationTags": { + "$ref": "./examples/ApiManagementListApiOperationTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetEntityStateByOperation", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationTag": { + "$ref": "./examples/ApiManagementHeadApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetByOperation", + "description": "Get tag associated with the Operation.", + "x-ms-examples": { + "ApiManagementGetApiOperationTag": { + "$ref": "./examples/ApiManagementGetApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_AssignToOperation", + "description": "Assign tag to the Operation.", + "x-ms-examples": { + "ApiManagementCreateApiOperationTag": { + "$ref": "./examples/ApiManagementCreateApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_DetachFromOperation", + "description": "Detach the tag from the Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationTag": { + "$ref": "./examples/ApiManagementDeleteApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag was successfully removed from Operation" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist in Operation" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/products": { + "get": { + "tags": [ + "ApiProduct" + ], + "operationId": "ApiProduct_ListByApis", + "description": "Lists all Products, which the API is part of.", + "x-ms-examples": { + "ApiManagementListApiProducts": { + "$ref": "./examples/ApiManagementListApiProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of products which have the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies": { + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_ListByApi", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiPolicies": { + "$ref": "./examples/ApiManagementListApiPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiPolicy": { + "$ref": "./examples/ApiManagementHeadApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API Policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Get", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiPolicy": { + "$ref": "./examples/ApiManagementGetApiPolicy.json" + } + }, + "produces": [ + "application/json", + "application/vnd.ms-azure-apim.policy+xml", + "application/vnd.ms-azure-apim.policy.raw+xml" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiPolicy": { + "$ref": "./examples/ApiManagementCreateApiPolicy.json" + }, + "ApiManagementCreateApiPolicyNonXmlEncoded": { + "$ref": "./examples/ApiManagementCreateApiPolicyNonXmlEncoded.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Delete", + "description": "Deletes the policy configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiPolicy": { + "$ref": "./examples/ApiManagementDeleteApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas": { + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_ListByApi", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiSchemas": { + "$ref": "./examples/ApiManagementListApiSchemas.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| contentType | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Schema Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}": { + "head": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_GetEntityTag", + "description": "Gets the entity state (Etag) version of the schema specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiSchema": { + "$ref": "./examples/ApiManagementHeadApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified schema entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Get", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiSchema": { + "$ref": "./examples/ApiManagementGetApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Schema information.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_CreateOrUpdate", + "description": "Creates or updates schema configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiSchema": { + "$ref": "./examples/ApiManagementCreateApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "description": "The schema contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update Api schema configuration was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "Api schema configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api schema configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Delete", + "description": "Deletes the schema configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiSchema": { + "$ref": "./examples/ApiManagementDeleteApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "If true removes all references to the schema before deleting it." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "204": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics": { + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_ListByService", + "description": "Lists all diagnostics of an API.", + "x-ms-examples": { + "ApiManagementListApiDiagnostics": { + "$ref": "./examples/ApiManagementListApiDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics for an API.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiDiagnostic": { + "$ref": "./examples/ApiManagementHeadApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Get", + "description": "Gets the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiDiagnostic": { + "$ref": "./examples/ApiManagementGetApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiDiagnostic": { + "$ref": "./examples/ApiManagementCreateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Diagnostic was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Update", + "description": "Updates the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiDiagnostic": { + "$ref": "./examples/ApiManagementUpdateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Delete", + "description": "Deletes the specified Diagnostic from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiDiagnostic": { + "$ref": "./examples/ApiManagementDeleteApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Diagnostic successfully removed" + }, + "204": { + "description": "Diagnostic successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues": { + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_ListByService", + "description": "Lists all issues associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssues": { + "$ref": "./examples/ApiManagementListApiIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issues for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}": { + "head": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssue": { + "$ref": "./examples/ApiManagementHeadApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Get", + "description": "Gets the details of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssue": { + "$ref": "./examples/ApiManagementGetApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Issue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_CreateOrUpdate", + "description": "Creates a new Issue for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssue": { + "$ref": "./examples/ApiManagementCreateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Update", + "description": "Updates an existing issue for an API.", + "x-ms-examples": { + "ApiManagementUpdateApiIssue": { + "$ref": "./examples/ApiManagementUpdateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Api issue updated successfully" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Delete", + "description": "Deletes the specified Issue from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiIssue": { + "$ref": "./examples/ApiManagementDeleteApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Issue successfully removed" + }, + "204": { + "description": "Issue successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments": { + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_ListByService", + "description": "Lists all comments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueComments": { + "$ref": "./examples/ApiManagementListApiIssueComments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue comments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueCommentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}": { + "head": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueComment": { + "$ref": "./examples/ApiManagementHeadApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Get", + "description": "Gets the details of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueComment": { + "$ref": "./examples/ApiManagementGetApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Comment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_CreateOrUpdate", + "description": "Creates a new Comment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueComment": { + "$ref": "./examples/ApiManagementCreateApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue comment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue comment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueComment": { + "$ref": "./examples/ApiManagementDeleteApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Comment successfully removed" + }, + "204": { + "description": "Comment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments": { + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_ListByService", + "description": "Lists all attachments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueAttachments": { + "$ref": "./examples/ApiManagementListApiIssueAttachments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue attachments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueAttachmentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}": { + "head": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueAttachment": { + "$ref": "./examples/ApiManagementHeadApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Get", + "description": "Gets the details of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueAttachment": { + "$ref": "./examples/ApiManagementGetApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Attachment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_CreateOrUpdate", + "description": "Creates a new Attachment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueAttachment": { + "$ref": "./examples/ApiManagementCreateApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue attachment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue attachment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueAttachment": { + "$ref": "./examples/ApiManagementDeleteApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Attachment successfully removed" + }, + "204": { + "description": "Attachment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions": { + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_ListByService", + "description": "Lists all Tags descriptions in scope of API. Model similar to swagger - tagDescription is defined on API level but tag may be assigned to the Operations", + "x-ms-examples": { + "ApiManagementListApiTagDescriptions": { + "$ref": "./examples/ApiManagementListApiTagDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tagDescriptions associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagDescriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagDescriptionId}": { + "head": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_GetEntityTag", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTagDescription": { + "$ref": "./examples/ApiManagementHeadApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Get", + "description": "Get Tag description in scope of API", + "x-ms-examples": { + "ApiManagementGetApiTagDescription": { + "$ref": "./examples/ApiManagementGetApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the description of the tag specified by its identifier in scope if the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_CreateOrUpdate", + "description": "Create/Update tag description in scope of the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTagDescription": { + "$ref": "./examples/ApiManagementCreateApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag Description was created for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag Description was updated for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Delete", + "description": "Delete tag description for the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTagDescription": { + "$ref": "./examples/ApiManagementDeleteApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag description successfully removed" + }, + "204": { + "description": "Tag description successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags": { + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_ListByApi", + "description": "Lists all Tags associated with the API.", + "x-ms-examples": { + "ApiManagementListApiTags": { + "$ref": "./examples/ApiManagementListApiTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetEntityStateByApi", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTag": { + "$ref": "./examples/ApiManagementHeadApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetByApi", + "description": "Get tag associated with the API.", + "x-ms-examples": { + "ApiManagementGetApiTag": { + "$ref": "./examples/ApiManagementGetApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_AssignToApi", + "description": "Assign tag to the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTag": { + "$ref": "./examples/ApiManagementCreateApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag is already assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_DetachFromApi", + "description": "Detach the tag from the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTag": { + "$ref": "./examples/ApiManagementDeleteApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API/Tag association successfully removed" + }, + "204": { + "description": "API/Tag association successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operationsByTags": { + "get": { + "tags": [ + "ApiOperationsByTag" + ], + "operationId": "Operation_ListByTags", + "description": "Lists a collection of operations associated with tags.", + "x-ms-examples": { + "ApiManagementListApiOperationsByTags": { + "$ref": "./examples/ApiManagementListApiOperationsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedOperations", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Operations." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "x-ms-paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?export=true": { + "get": { + "tags": [ + "Apis" + ], + "operationId": "ApiExport_Get", + "description": "Gets the details of the API specified by its identifier in the format specified to the Storage Blob with SAS Key valid for 5 minutes.", + "x-ms-examples": { + "ApiManagementGetApiExportInOpenApi2dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi2dot0.json" + }, + "ApiManagementGetApiExportInOpenApi3dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi3dot0.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "format", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "swagger-link", + "wadl-link", + "wsdl-link", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ExportFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link", + "description": "Export the Api Definition in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link", + "description": "Export the Api Definition in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "Openapi" + }, + { + "value": "openapi+json-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 as JSON document to Storage Blob.", + "name": "OpenapiJson" + } + ] + }, + "description": "Format in which to export the Api Details to the Storage Blob with Sas Key valid for 5 minutes." + }, + { + "name": "export", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "true" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "ExportApi" + }, + "description": "Query parameter required to export the API details." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response contains a stream with a full set of API metadata and includes API entity with an embedded array of operation entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json new file mode 100644 index 000000000000..d258f00b3b84 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieve a collection of Apis associated with a tag in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/apisByTags": { + "get": { + "tags": [ + "ApisByTag" + ], + "operationId": "Api_ListByTags", + "description": "Lists a collection of apis associated with tags.", + "x-ms-examples": { + "ApiManagementListApisByTags": { + "$ref": "./examples/ApiManagementListApisByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n\r\n|name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|displayName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|apiRevision | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|path | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|serviceUrl | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|isCurrent | eq | |\n" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedApis", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged APIs." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json new file mode 100644 index 000000000000..10836b0067fe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on the ApiVersionSet entity associated with your Azure API Management deployment. Using this entity you create and manage API Version Sets that are used to group APIs for consistent versioning.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/apiVersionSets": { + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_ListByService", + "description": "Lists a collection of API Version Sets in the specified service instance.", + "x-ms-examples": { + "ApiManagementListApiVersionSets": { + "$ref": "./examples/ApiManagementListApiVersionSets.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Api Version Set entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiVersionSetContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}": { + "head": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiVersionSet": { + "$ref": "./examples/ApiManagementHeadApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Api Version Set entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Get", + "description": "Gets the details of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiVersionSet": { + "$ref": "./examples/ApiManagementGetApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified Api Version Set entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_CreateOrUpdate", + "description": "Creates or Updates a Api Version Set.", + "x-ms-examples": { + "ApiManagementCreateApiVersionSet": { + "$ref": "./examples/ApiManagementCreateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Version Set was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Version Set was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Update", + "description": "Updates the details of the Api VersionSet specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiVersionSet": { + "$ref": "./examples/ApiManagementUpdateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Api Version Set details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiVersionSets" + ], + "operationId": "ApiVersionSet_Delete", + "description": "Deletes specific Api Version Set.", + "x-ms-examples": { + "ApiManagementDeleteApiVersionSet": { + "$ref": "./examples/ApiManagementDeleteApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "204": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json new file mode 100644 index 000000000000..a2f12fb89edf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for managing OAuth2 servers configuration in your Azure API Management deployment. OAuth 2.0 can be used to authorize developer accounts for Azure API Management. For more information refer to [How to OAuth2](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-oauth2).", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/authorizationServers": { + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListByService", + "description": "Lists a collection of authorization servers defined within a service instance.", + "x-ms-examples": { + "ApiManagementListAuthorizationServers": { + "$ref": "./examples/ApiManagementListAuthorizationServers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Authorization Server entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}": { + "head": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_GetEntityTag", + "description": "Gets the entity state (Etag) version of the authorizationServer specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadAuthorizationServer": { + "$ref": "./examples/ApiManagementHeadAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified authorization server entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Get", + "description": "Gets the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetAuthorizationServer": { + "$ref": "./examples/ApiManagementGetAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the specified authorization server.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_CreateOrUpdate", + "description": "Creates new authorization server or updates an existing authorization server.", + "x-ms-examples": { + "ApiManagementCreateAuthorizationServer": { + "$ref": "./examples/ApiManagementCreateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Authorization server was successfully registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "200": { + "description": "Authorization server is already registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Update", + "description": "Updates the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateAuthorizationServer": { + "$ref": "./examples/ApiManagementUpdateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerUpdateContract" + }, + "description": "OAuth2 Server settings Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The authorization server settings were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Delete", + "description": "Deletes specific authorization server instance.", + "x-ms-examples": { + "ApiManagementDeleteAuthorizationServer": { + "$ref": "./examples/ApiManagementDeleteAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The authorization server settings were successfully deleted." + }, + "204": { + "description": "The authorization server settings were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}/listSecrets": { + "post": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListSecrets", + "description": "Gets the client secret details of the authorization server.", + "x-ms-examples": { + "ApiManagementListSecretsAuthorizationServer": { + "$ref": "./examples/ApiManagementListSecretsAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json new file mode 100644 index 000000000000..db1988b2971e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json @@ -0,0 +1,421 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Backend entity in Azure API Management deployment. The Backend entity in API Management represents a backend service that is configured to skip certification chain validation when using a self-signed certificate to test mutual certificate authentication.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/backends": { + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_ListByService", + "description": "Lists a collection of backends in the specified service instance.", + "x-ms-examples": { + "ApiManagementListBackends": { + "$ref": "./examples/ApiManagementListBackends.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| url | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Backend entities.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/BackendContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}": { + "head": { + "tags": [ + "Backend" + ], + "operationId": "Backend_GetEntityTag", + "description": "Gets the entity state (Etag) version of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadBackend": { + "$ref": "./examples/ApiManagementHeadBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified backend entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Get", + "description": "Gets the details of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetBackend": { + "$ref": "./examples/ApiManagementGetBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Backend entity.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Backend" + ], + "operationId": "Backend_CreateOrUpdate", + "description": "Creates or Updates a backend.", + "x-ms-examples": { + "ApiManagementCreateBackendServiceFabric": { + "$ref": "./examples/ApiManagementCreateBackendServiceFabric.json" + }, + "ApiManagementCreateBackendProxyBackend": { + "$ref": "./examples/ApiManagementCreateBackendProxyBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Backend was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "200": { + "description": "The existing backend was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Update", + "description": "Updates an existing backend.", + "x-ms-examples": { + "ApiManagementUpdateBackend": { + "$ref": "./examples/ApiManagementUpdateBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing backend was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Delete", + "description": "Deletes the specified backend.", + "x-ms-examples": { + "ApiManagementDeleteBackend": { + "$ref": "./examples/ApiManagementDeleteBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The backend was successfully deleted." + }, + "204": { + "description": "The backend was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}/reconnect": { + "post": { + "tags": [ + "BackendReconnect" + ], + "operationId": "Backend_Reconnect", + "description": "Notifies the APIM proxy to create a new connection to the backend after the specified timeout. If no timeout was specified, timeout of 2 minutes is used.", + "x-ms-examples": { + "ApiManagementBackendReconnect": { + "$ref": "./examples/ApiManagementBackendReconnect.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/BackendReconnectContract" + }, + "description": "Reconnect request parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Reconnect request accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json new file mode 100644 index 000000000000..96c03f0aa95b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json @@ -0,0 +1,363 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Cache entity in your Azure API Management deployment. Azure API Management also allows for caching responses in an external Azure Cache for Redis. For more information refer to [External Redis Cache in ApiManagement](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external).", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/caches": { + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_ListByService", + "description": "Lists a collection of all external Caches in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCaches": { + "$ref": "./examples/ApiManagementListCaches.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}": { + "head": { + "tags": [ + "Cache" + ], + "operationId": "Cache_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCache": { + "$ref": "./examples/ApiManagementHeadCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Cache entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Get", + "description": "Gets the details of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCache": { + "$ref": "./examples/ApiManagementGetCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Cache" + ], + "operationId": "Cache_CreateOrUpdate", + "description": "Creates or updates an External Cache to be used in Api Management instance.", + "externalDocs": { + "description": "Use an external cache in Azure API Management", + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external" + }, + "x-ms-examples": { + "ApiManagementCreateCache": { + "$ref": "./examples/ApiManagementCreateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Cache was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "200": { + "description": "The Cache details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Update", + "description": "Updates the details of the cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateCache": { + "$ref": "./examples/ApiManagementUpdateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The cache details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Delete", + "description": "Deletes specific Cache.", + "x-ms-examples": { + "ApiManagementDeleteCache": { + "$ref": "./examples/ApiManagementDeleteCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Cache was successfully deleted." + }, + "204": { + "description": "The Cache was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json new file mode 100644 index 000000000000..feea7a9cd650 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json @@ -0,0 +1,319 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Certificate entity in your Azure API Management deployment. Certificates can be used to setup mutual authentication with your Backend in API Management. For more information refer to [How to secure backend using Mutual Auth Certificate](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-mutual-certificates).", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/certificates": { + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_ListByService", + "description": "Lists a collection of all certificates in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCertificates": { + "$ref": "./examples/ApiManagementListCertificates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| subject | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| thumbprint | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| expirationDate | filter | ge, le, eq, ne, gt, lt | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/CertificateContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}": { + "head": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCertificate": { + "$ref": "./examples/ApiManagementHeadCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified certificate entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Get", + "description": "Gets the details of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCertificate": { + "$ref": "./examples/ApiManagementGetCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_CreateOrUpdate", + "description": "Creates or updates the certificate being used for authentication with the backend.", + "externalDocs": { + "description": "How to secure back-end services using client certificate authentication in Azure API Management", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-howto-mutual-certificates/" + }, + "x-ms-examples": { + "ApiManagementCreateCertificate": { + "$ref": "./examples/ApiManagementCreateCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCreateOrUpdateParameters" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new certificate was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "200": { + "description": "The certificate details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Delete", + "description": "Deletes specific certificate.", + "x-ms-examples": { + "ApiManagementDeleteCertificate": { + "$ref": "./examples/ApiManagementDeleteCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The certificate was successfully deleted." + }, + "204": { + "description": "The certificate was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json new file mode 100644 index 000000000000..ce8c693b268c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json @@ -0,0 +1,1551 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to manage Azure API Management deployment.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.ApiManagement/operations": { + "get": { + "tags": [ + "ApiManagementOperations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.ApiManagement provider.", + "operationId": "ApiManagementOperations_List", + "x-ms-examples": { + "ApiManagementListOperations": { + "$ref": "./examples/ApiManagementListOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/skus": { + "get": { + "tags": [ + "ApiManagementServiceSkus" + ], + "summary": "Gets available SKUs for API Management service", + "description": "Gets all available SKU for a given API Management service", + "operationId": "ApiManagementServiceSkus_ListAvailableServiceSkus", + "x-ms-examples": { + "ApiManagementListSKUs-Dedicated": { + "$ref": "./examples/ApiManagementListSKUs-Dedicated.json" + }, + "ApiManagementListSKUs-Consumption": { + "$ref": "./examples/ApiManagementListSKUs-Consumption.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of SKUs.", + "schema": { + "$ref": "#/definitions/ResourceSkuResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/restore": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Restore", + "description": "Restores a backup of an API Management service created using the ApiManagementService_Backup operation on the current service. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementRestoreService": { + "$ref": "./examples/ApiManagementRestoreService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the Restore API Management service from backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restored the backup onto the API Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backup": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Backup", + "description": "Creates a backup of the API Management service to the given Azure Storage Account. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateBackup": { + "$ref": "./examples/ApiManagementCreateBackup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the ApiManagementService_Backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully backed up the API Management service to the storage account.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}": { + "put": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CreateOrUpdate", + "description": "Creates or updates an API Management service. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateService": { + "$ref": "./examples/ApiManagementCreateService.json" + }, + "ApiManagementCreateMultiRegionServiceWithCustomHostname": { + "$ref": "./examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json" + }, + "ApiManagementCreateServiceHavingMsi": { + "$ref": "./examples/ApiManagementCreateServiceHavingMsi.json" + }, + "ApiManagementCreateServiceWithSystemCertificates": { + "$ref": "./examples/ApiManagementCreateServiceWithSystemCertificates.json" + }, + "ApiManagementCreateServiceWithUserAssignedIdentity": { + "$ref": "./examples/ApiManagementCreateServiceWithUserAssignedIdentity.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully set up.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted the configuration change when updating the service." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Update", + "description": "Updates an existing API Management service.", + "x-ms-examples": { + "ApiManagementUpdateServiceDisableTls10": { + "$ref": "./examples/ApiManagementUpdateServiceDisableTls10.json" + }, + "ApiManagementUpdateServicePublisherDetails": { + "$ref": "./examples/ApiManagementUpdateServicePublisherDetails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceUpdateParameters" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully updated.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "The service update request was Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Get", + "description": "Gets an API Management service resource description.", + "x-ms-examples": { + "ApiManagementServiceGetService": { + "$ref": "./examples/ApiManagementServiceGetService.json" + }, + "ApiManagementServiceGetServiceHavingMsi": { + "$ref": "./examples/ApiManagementServiceGetServiceHavingMsi.json" + }, + "ApiManagementServiceGetMultiRegionInternalVnet": { + "$ref": "./examples/ApiManagementServiceGetMultiRegionInternalVnet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got the API Management Service Resource.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Delete", + "description": "Deletes an existing API Management service.", + "x-ms-examples": { + "ApiManagementServiceDeleteService": { + "$ref": "./examples/ApiManagementServiceDeleteService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Service was successfully deleted." + }, + "202": { + "description": "The service delete request was Accepted.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "204": { + "description": "The service does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ListByResourceGroup", + "description": "List all API Management services within a resource group.", + "x-ms-examples": { + "ApiManagementListServiceBySubscriptionAndResourceGroup": { + "$ref": "./examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_List", + "description": "Lists all API Management services within an Azure subscription.", + "x-ms-examples": { + "ApiManagementListServiceBySubscription": { + "$ref": "./examples/ApiManagementListServiceBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/getssotoken": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_GetSsoToken", + "description": "Gets the Single-Sign-On token for the API Management Service which is valid for 5 Minutes.", + "x-ms-examples": { + "ApiManagementServiceGetSsoToken": { + "$ref": "./examples/ApiManagementServiceGetSsoToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK if successful with the SSO Redirect URI.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceGetSsoTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/checkNameAvailability": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CheckNameAvailability", + "description": "Checks availability and correctness of a name for an API Management service.", + "x-ms-examples": { + "ApiManagementServiceCheckNameAvailability": { + "$ref": "./examples/ApiManagementServiceCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceCheckNameAvailabilityParameters" + }, + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The result of check name availability.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/applynetworkconfigurationupdates": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ApplyNetworkConfigurationUpdates", + "description": "Updates the Microsoft.ApiManagement resource running in the Virtual network to pick the updated network settings.", + "x-ms-examples": { + "ApiManagementApplyNetworkConfigurationUpdates": { + "$ref": "./examples/ApiManagementApplyNetworkConfigurationUpdates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApiManagementServiceApplyNetworkConfigurationParameters" + }, + "description": "Parameters supplied to the Apply Network Configuration operation. If the parameters are empty, all the regions in which the Api Management service is deployed will be updated sequentially without incurring downtime in the region." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Network configuration updates were successfully applied on the Api Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ResourceSkuResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuResult" + }, + "description": "The list of skus available for the service." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of API Management service Skus." + } + }, + "required": [ + "value" + ], + "description": "The API Management service SKUs operation response." + }, + "ResourceSkuResult": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "readOnly": true, + "description": "Specifies API Management SKU." + }, + "capacity": { + "$ref": "#/definitions/ResourceSkuCapacity", + "readOnly": true, + "description": "Specifies the number of API Management units." + } + }, + "description": "Describes an available API Management service SKU." + }, + "ResourceSkuCapacity": { + "properties": { + "minimum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The minimum capacity." + }, + "maximum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The maximum capacity that can be set." + }, + "default": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The default capacity." + }, + "scaleType": { + "type": "string", + "readOnly": true, + "description": "The scale type applicable to the sku.", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "ResourceSkuCapacityScaleType", + "modelAsString": true, + "values": [ + { + "value": "automatic", + "description": "Supported scale type automatic." + }, + { + "value": "manual", + "description": "Supported scale type manual." + }, + { + "value": "none", + "description": "Scaling not supported." + } + ] + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + } + }, + "description": "Describes an available API Management SKU." + }, + "CertificateInformation": { + "properties": { + "expiry": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "subject": { + "type": "string", + "description": "Subject of the certificate." + } + }, + "required": [ + "expiry", + "thumbprint", + "subject" + ], + "description": "SSL certificate information." + }, + "CertificateConfiguration": { + "properties": { + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "storeName": { + "description": "The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations.", + "type": "string", + "enum": [ + "CertificateAuthority", + "Root" + ] + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "storeName" + ], + "description": "Certificate configuration which consist of non-trusted intermediates and root certificates." + }, + "HostnameConfiguration": { + "properties": { + "type": { + "type": "string", + "description": "Hostname type.", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm", + "DeveloperPortal" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": true + } + }, + "hostName": { + "type": "string", + "description": "Hostname to configure on the Api Management service." + }, + "keyVaultId": { + "type": "string", + "description": "Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with MSI. The secret should be of type *application/x-pkcs12*" + }, + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "defaultSslBinding": { + "type": "boolean", + "description": "Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type.", + "default": false + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Specify true to always negotiate client certificate on the hostname. Default Value is false.", + "default": false + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "type", + "hostName" + ], + "description": "Custom hostname configuration." + }, + "VirtualNetworkConfiguration": { + "properties": { + "vnetid": { + "readOnly": true, + "type": "string", + "description": "The virtual network ID. This is typically a GUID. Expect a null GUID by default." + }, + "subnetname": { + "readOnly": true, + "type": "string", + "description": "The name of the subnet." + }, + "subnetResourceId": { + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$", + "description": "The full resource ID of a subnet in a virtual network to deploy the API Management service in." + } + }, + "description": "Configuration of a virtual network to which API Management service is deployed." + }, + "AdditionalLocation": { + "properties": { + "location": { + "type": "string", + "description": "The location name of the additional region among Azure Data center regions." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in the additional location. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service which is deployed in an Internal Virtual Network in a particular additional location. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration for the location." + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Region.", + "readOnly": true + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location.", + "default": false + } + }, + "required": [ + "location", + "sku" + ], + "description": "Description of an additional API Management resource location." + }, + "ApiManagementServiceBackupRestoreParameters": { + "properties": { + "storageAccount": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) name." + }, + "accessKey": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) access key." + }, + "containerName": { + "type": "string", + "description": "Azure Cloud Storage blob container name used to place/retrieve the backup." + }, + "backupName": { + "type": "string", + "description": "The name of the backup file to create." + } + }, + "required": [ + "storageAccount", + "accessKey", + "containerName", + "backupName" + ], + "description": "Parameters supplied to the Backup/Restore of an API Management service operation." + }, + "ApiManagementServiceProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "required": [ + "publisherEmail", + "publisherName" + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceUpdateProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceBaseProperties": { + "properties": { + "notificationSenderEmail": { + "type": "string", + "description": "Email address from which the notification will be sent.", + "maxLength": 100 + }, + "provisioningState": { + "type": "string", + "description": "The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted.", + "readOnly": true + }, + "targetProvisioningState": { + "type": "string", + "description": "The provisioning state of the API Management service, which is targeted by the long running operation started on the service.", + "readOnly": true + }, + "createdAtUtc": { + "type": "string", + "format": "date-time", + "description": "Creation UTC date of the API Management service.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.", + "readOnly": true + }, + "gatewayUrl": { + "type": "string", + "description": "Gateway URL of the API Management service.", + "readOnly": true + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Default Region.", + "readOnly": true + }, + "portalUrl": { + "type": "string", + "description": "Publisher portal endpoint Url of the API Management service.", + "readOnly": true + }, + "managementApiUrl": { + "type": "string", + "description": "Management API endpoint URL of the API Management service.", + "readOnly": true + }, + "scmUrl": { + "type": "string", + "description": "SCM endpoint URL of the API Management service.", + "readOnly": true + }, + "developerPortalUrl": { + "type": "string", + "description": "DEveloper Portal endpoint URL of the API Management service.", + "readOnly": true + }, + "hostnameConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/HostnameConfiguration" + }, + "description": "Custom hostname configuration of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration of the API Management service." + }, + "additionalLocations": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalLocation" + }, + "description": "Additional datacenter locations of the API Management service." + }, + "customProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Custom properties of the API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` can be used to disable just TLS 1.1.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` can be used to disable TLS 1.0 on an API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11` can be used to disable just TLS 1.1 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10` can be used to disable TLS 1.0 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2` can be used to enable HTTP2 protocol on an API Management service.
Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is `True` if the service was created on or before April 1st 2018 and `False` otherwise. Http2 setting's default value is `False`.

You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:`false`. The default value is `true` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384" + }, + "certificates": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateConfiguration" + }, + "description": "List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10." + }, + "enableClientCertificate": { + "type": "boolean", + "description": "Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway.", + "default": false + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.", + "default": false + }, + "virtualNetworkType": { + "type": "string", + "description": "The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only.", + "default": "None", + "enum": [ + "None", + "External", + "Internal" + ], + "x-ms-enum": { + "name": "VirtualNetworkType", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The service is not part of any Virtual Network." + }, + { + "value": "External", + "description": "The service is part of Virtual Network and it is accessible from Internet." + }, + { + "value": "Internal", + "description": "The service is part of Virtual Network and it is only accessible from within the virtual network." + } + ] + } + }, + "apiVersionConstraint": { + "$ref": "#/definitions/ApiVersionConstraint", + "description": "Control Plane Apis version constraint for the API Management service." + } + }, + "description": "Base Properties of an API Management service resource description." + }, + "ApiVersionConstraint": { + "properties": { + "minApiVersion": { + "type": "string", + "description": "Limit control plane API calls to API Management service with version equal to or newer than this value.", + "example": "2019-01-01" + } + }, + "description": "Control Plane Apis version constraint for the API Management service." + }, + "ApiManagementServiceSkuProperties": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0." + } + }, + "required": [ + "name", + "capacity" + ], + "description": "API Management service resource SKU properties." + }, + "ApiManagementServiceResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "location": { + "type": "string", + "description": "Resource location.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "required": [ + "location", + "sku", + "properties" + ], + "description": "A single API Management service resource in List or Get response." + }, + "ApimResource": { + "description": "The Resource definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource is set to Microsoft.ApiManagement." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ApiManagementServiceUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceUpdateProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "description": "Parameter supplied to Update Api Management Service." + }, + "ApiManagementServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Result of the List API Management services operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of API Management services." + } + }, + "required": [ + "value" + ], + "description": "The response of the List API Management services operation." + }, + "ApiManagementServiceGetSsoTokenResult": { + "properties": { + "redirectUri": { + "type": "string", + "description": "Redirect URL to the Publisher Portal containing the SSO token." + } + }, + "description": "The response of the GetSsoToken operation." + }, + "ApiManagementServiceCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The name to check for availability." + } + }, + "required": [ + "name" + ], + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + "ApiManagementServiceNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "True if the name is available and can be used to create a new API Management service; otherwise false.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name.", + "readOnly": true + }, + "reason": { + "type": "string", + "description": "Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Valid", + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameAvailabilityReason", + "modelAsString": false + } + } + }, + "description": "Response of the CheckNameAvailability operation." + }, + "ApiManagementServiceApplyNetworkConfigurationParameters": { + "properties": { + "location": { + "type": "string", + "description": "Location of the Api Management service to update for a multi-region service. For a service deployed in a single region, this parameter is not required." + } + }, + "description": "Parameter supplied to the Apply Network configuration operation." + }, + "ApiManagementServiceIdentity": { + "description": "Identity properties of the Api Management service resource.", + "properties": { + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ApimIdentityType", + "modelAsString": true + } + }, + "principalId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The principal id of the identity." + }, + "tenantId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The client tenant id of the identity." + }, + "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties" + } + } + }, + "required": [ + "type" + ] + }, + "UserIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + } + } + }, + "OperationListResult": { + "description": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json new file mode 100644 index 000000000000..6cb67423b422 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Diagnostic entity associated with your Azure API Management deployment. Diagnostics are used to log requests/responses in the APIM proxy.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/diagnostics": { + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_ListByService", + "description": "Lists all diagnostics of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListDiagnostics": { + "$ref": "./examples/ApiManagementListDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadDiagnostic": { + "$ref": "./examples/ApiManagementHeadDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity tag of the diagnostic", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Get", + "description": "Gets the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetDiagnostic": { + "$ref": "./examples/ApiManagementGetDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateDiagnostic": { + "$ref": "./examples/ApiManagementCreateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "200": { + "description": "Diagnostic successfully updated", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Update", + "description": "Updates the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateDiagnostic": { + "$ref": "./examples/ApiManagementUpdateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Delete", + "description": "Deletes the specified Diagnostic.", + "x-ms-examples": { + "ApiManagementDeleteDiagnostic": { + "$ref": "./examples/ApiManagementDeleteDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Diagnostic was successfully deleted." + }, + "204": { + "description": "The Diagnostic was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json new file mode 100644 index 000000000000..143854511ac8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json @@ -0,0 +1,354 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Email Templates associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/templates": { + "get": { + "tags": [ + "EmailTemplate" + ], + "operationId": "EmailTemplate_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListEmailTemplates": { + "$ref": "./examples/ApiManagementListEmailTemplates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Email Template for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}": { + "head": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadEmailTemplate": { + "$ref": "./examples/ApiManagementHeadEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified email template entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Get", + "description": "Gets the details of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetEmailTemplate": { + "$ref": "./examples/ApiManagementGetEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Email template.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_CreateOrUpdate", + "description": "Updates an Email Template.", + "x-ms-examples": { + "ApiManagementCreateEmailTemplate": { + "$ref": "./examples/ApiManagementCreateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Email Template update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "200": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Update", + "description": "Updates the specific Email Template.", + "x-ms-examples": { + "ApiManagementUpdateEmailTemplate": { + "$ref": "./examples/ApiManagementUpdateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Email Template was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Delete", + "description": "Reset the Email Template to default template provided by the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteEmailTemplate": { + "$ref": "./examples/ApiManagementDeleteEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Email Template was successfully reset to default." + }, + "204": { + "description": "Email Template was successfully reset to default." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json new file mode 100644 index 000000000000..a89f6dbfecf2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json @@ -0,0 +1,997 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Gateway entity in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/gateways": { + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_ListByService", + "description": "Lists a collection of gateways registered with service instance.", + "x-ms-examples": { + "ApiManagementListGateways": { + "$ref": "./examples/ApiManagementListGateways.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Gateway entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}": { + "head": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGateway": { + "$ref": "./examples/ApiManagementHeadGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Get", + "description": "Gets the details of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_CreateOrUpdate", + "description": "Creates or updates a Gateway to be used in Api Management instance.", + "x-ms-examples": { + "ApiManagementCreateGateway": { + "$ref": "./examples/ApiManagementCreateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Gateway was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "200": { + "description": "The Gateway details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Update", + "description": "Updates the details of the gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGateway": { + "$ref": "./examples/ApiManagementUpdateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The gateway details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Delete", + "description": "Deletes specific Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGateway": { + "$ref": "./examples/ApiManagementDeleteGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Gateway was successfully deleted." + }, + "204": { + "description": "The Gateway was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/listKeys": { + "post": { + "tags": [ + "GatewayListKeys" + ], + "operationId": "Gateway_ListKeys", + "description": "Retrieves gateway keys.", + "x-ms-examples": { + "ApiManagementGatewayKeys": { + "$ref": "./examples/ApiManagementGatewayListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway keys.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeysContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/regenerateKey": { + "post": { + "tags": [ + "GatewayRegenerateKey" + ], + "operationId": "Gateway_RegenerateKey", + "description": "Regenerates specified gateway key invalidating any tokens created with it.", + "x-ms-examples": { + "ApiManagementGatewayRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementGatewayRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeyRegenerationRequestContract" + } + } + ], + "responses": { + "204": { + "description": "Key successfully regenerated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/generateToken": { + "post": { + "tags": [ + "GatewayGenerateToken" + ], + "operationId": "Gateway_GenerateToken", + "description": "Gets the Shared Access Authorization Token for the gateway.", + "x-ms-examples": { + "ApiManagementGatewayToken": { + "$ref": "./examples/ApiManagementGatewayGenerateToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenRequestContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations": { + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_ListByService", + "description": "Lists the collection of hostname configurations for the specified gateway.", + "x-ms-examples": { + "ApiManagementListGatewayHostnameConfigurations": { + "$ref": "./examples/ApiManagementListGatewayHostnameConfigurations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Collection of hostname configuration entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations/{hcId}": { + "head": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_GetEntityTag", + "description": "Checks that hostname configuration entity specified by identifier exists for specified Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementHeadGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Get", + "description": "Gets the details of the Gateway hostname configuration specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_CreateOrUpdate", + "description": "Creates of updates hostname configuration for a Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementCreateGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + } + ], + "responses": { + "201": { + "description": "The new Gateway hostname configuration was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "200": { + "description": "The Gateway hostname configuration details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Delete", + "description": "Deletes the specified hostname configuration from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementDeleteGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Hostname configuration was successfully removed from Gateway" + }, + "204": { + "description": "Hostname configuration successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis": { + "get": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_ListByService", + "description": "Lists a collection of the APIs associated with a gateway.", + "x-ms-examples": { + "ApiManagementListGatewayApis": { + "$ref": "./examples/ApiManagementListGatewayApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis/{apiId}": { + "head": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_GetEntityTag", + "description": "Checks that API entity specified by identifier is associated with the Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayApi": { + "$ref": "./examples/ApiManagementHeadGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_CreateOrUpdate", + "description": "Adds an API to the specified Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayApi": { + "$ref": "./examples/ApiManagementCreateGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/AssociationContract" + } + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_Delete", + "description": "Deletes the specified API from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayApi": { + "$ref": "./examples/ApiManagementDeleteGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from Gateway" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json new file mode 100644 index 000000000000..94be1d63a606 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json @@ -0,0 +1,581 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Group entity in your Azure API Management deployment. Groups are used to manage the visibility of products to developers. Each API Management service instance comes with the following immutable system groups whose membership is automatically managed by API Management. - **Administrators** - Azure subscription administrators are members of this group. - **Developers** - Authenticated developer portal users fall into this group. - **Guests** - Unauthenticated developer portal users are placed into this group. In addition to these system groups, administrators can create custom groups or [leverage external groups in associated Azure Active Directory tenants](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-add-an-external-azure-active-directory-group). Custom and external groups can be used alongside system groups in giving developers visibility and access to API products. For example, you could create one custom group for developers affiliated with a specific partner organization and allow them access to the APIs from a product containing relevant APIs only. A user can be a member of more than one group.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/groups": { + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_ListByService", + "description": "Lists a collection of groups defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-groups" + }, + "x-ms-examples": { + "ApiManagementListGroups": { + "$ref": "./examples/ApiManagementListGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| aadObjectId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}": { + "head": { + "tags": [ + "Group" + ], + "operationId": "Group_GetEntityTag", + "description": "Gets the entity state (Etag) version of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGroup": { + "$ref": "./examples/ApiManagementHeadGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified group entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_Get", + "description": "Gets the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGroup": { + "$ref": "./examples/ApiManagementGetGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Group entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Group" + ], + "operationId": "Group_CreateOrUpdate", + "description": "Creates or Updates a group.", + "x-ms-examples": { + "ApiManagementCreateGroup": { + "$ref": "./examples/ApiManagementCreateGroup.json" + }, + "ApiManagementCreateGroupExternal": { + "$ref": "./examples/ApiManagementCreateGroupExternal.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Group was created successfully.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Group already exists.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Group" + ], + "operationId": "Group_Update", + "description": "Updates the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGroup": { + "$ref": "./examples/ApiManagementUpdateGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The group details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Group" + ], + "operationId": "Group_Delete", + "description": "Deletes specific group of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteGroup": { + "$ref": "./examples/ApiManagementDeleteGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully deleted." + }, + "204": { + "description": "The group was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users": { + "get": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_List", + "description": "Lists a collection of user entities associated with the group.", + "x-ms-examples": { + "ApiManagementListGroupUsers": { + "$ref": "./examples/ApiManagementListGroupUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of user entities associated with the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}": { + "head": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_CheckEntityExists", + "description": "Checks that user entity specified by identifier is associated with the group entity.", + "x-ms-examples": { + "ApiManagementHeadGroupUser": { + "$ref": "./examples/ApiManagementHeadGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Create", + "description": "Add existing user to existing group", + "x-ms-examples": { + "ApiManagementCreateGroupUser": { + "$ref": "./examples/ApiManagementCreateGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully added to the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "200": { + "description": "The specified user is already a member of the specified group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Delete", + "description": "Remove existing user from existing group.", + "x-ms-examples": { + "ApiManagementDeleteGroupUser": { + "$ref": "./examples/ApiManagementDeleteGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user was successfully removed from the group." + }, + "204": { + "description": "The user was successfully removed from the group." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json new file mode 100644 index 000000000000..5ab15241ebec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json @@ -0,0 +1,401 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Identity Provider entity associated with your Azure API Management deployment. Setting up an external Identity Provider for authentication can help you manage the developer portal logins using the OAuth2 flow.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/identityProviders": { + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListByService", + "description": "Lists a collection of Identity Provider configured in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-authorize-developer-accounts-using-azure-active-directory" + }, + "x-ms-examples": { + "ApiManagementListIdentityProviders": { + "$ref": "./examples/ApiManagementListIdentityProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Identity Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}": { + "head": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the identityProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadIdentityProvider": { + "$ref": "./examples/ApiManagementHeadIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified identity provider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Get", + "description": "Gets the configuration details of the identity Provider configured in specified service instance.", + "x-ms-examples": { + "ApiManagementGetIdentityProvider": { + "$ref": "./examples/ApiManagementGetIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified IdentityProvider entity configuration details.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_CreateOrUpdate", + "description": "Creates or Updates the IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementCreateIdentityProvider": { + "$ref": "./examples/ApiManagementCreateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "IdentityProvider configuration were successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "200": { + "description": "The existing Identity Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Update", + "description": "Updates an existing IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementUpdateIdentityProvider": { + "$ref": "./examples/ApiManagementUpdateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing identity provider configuration was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Delete", + "description": "Deletes the specified identity provider configuration.", + "x-ms-examples": { + "ApiManagementDeleteIdentityProvider": { + "$ref": "./examples/ApiManagementDeleteIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The identity provider configuration was successfully deleted." + }, + "204": { + "description": "The identity provider configuration was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}/listSecrets": { + "post": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListSecrets", + "description": "Gets the client secret details of the Identity Provider.", + "x-ms-examples": { + "ApiManagementListSecretsIdentityProvider": { + "$ref": "./examples/ApiManagementListSecretsIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json new file mode 100644 index 000000000000..d85bf5904ee8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json @@ -0,0 +1,150 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use this REST API to get all the issues across an Azure Api Management service.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/issues": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_ListByService", + "description": "Lists a collection of issues in the specified service instance.", + "x-ms-examples": { + "ApiManagementListIssues": { + "$ref": "./examples/ApiManagementListIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| authorName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Issue entities.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues/{issueId}": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_Get", + "description": "Gets API Management issue details", + "x-ms-examples": { + "ApiManagementGetIssue": { + "$ref": "./examples/ApiManagementGetIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the details of the issue.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json new file mode 100644 index 000000000000..b79ba7080322 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json @@ -0,0 +1,380 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on logger entity Azure API Management deployment.The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure EventHub.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/loggers": { + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_ListByService", + "description": "Lists a collection of loggers in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-log-event-hubs" + }, + "x-ms-examples": { + "ApiManagementListLoggers": { + "$ref": "./examples/ApiManagementListLoggers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| loggerType | filter | eq | |
| resourceId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Logger entities.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}": { + "head": { + "tags": [ + "Logger" + ], + "operationId": "Logger_GetEntityTag", + "description": "Gets the entity state (Etag) version of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadLogger": { + "$ref": "./examples/ApiManagementHeadLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified logger entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Get", + "description": "Gets the details of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetLogger": { + "$ref": "./examples/ApiManagementGetLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Logger entity.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Logger" + ], + "operationId": "Logger_CreateOrUpdate", + "description": "Creates or Updates a logger.", + "x-ms-examples": { + "ApiManagementCreateEHLogger": { + "$ref": "./examples/ApiManagementCreateEHLogger.json" + }, + "ApiManagementCreateAILogger": { + "$ref": "./examples/ApiManagementCreateAILogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Logger was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "The existing logger was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Update", + "description": "Updates an existing logger.", + "x-ms-examples": { + "ApiManagementUpdateLogger": { + "$ref": "./examples/ApiManagementUpdateLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing logger was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Delete", + "description": "Deletes the specified logger.", + "x-ms-examples": { + "ApiManagementDeleteLogger": { + "$ref": "./examples/ApiManagementDeleteLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force deletion even if diagnostic is attached." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The logger was successfully deleted." + }, + "204": { + "description": "The logger was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json new file mode 100644 index 000000000000..0127d85f3154 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on NamedValue entity associated with your Azure API Management deployment. API Management policies are a powerful capability of the system that allow the publisher to change the behavior of the API through configuration. Policies are a collection of statements that are executed sequentially on the request or response of an API. Policy statements can be constructed using literal text values, policy expressions, and NamedValues. Each API Management service instance has a NamedValues collection of key/value pairs that are global to the service instance. These NamedValues can be used to manage constant string values across all API configuration and policies.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/namedValues": { + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListByService", + "description": "Lists a collection of NamedValues defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-properties" + }, + "x-ms-examples": { + "ApiManagementListNamedValues": { + "$ref": "./examples/ApiManagementListNamedValues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| tags | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith, any, all |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the NamedValue entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/NamedValueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}": { + "head": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadNamedValue": { + "$ref": "./examples/ApiManagementHeadNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified NamedValue entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Get", + "description": "Gets the details of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNamedValue": { + "$ref": "./examples/ApiManagementGetNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified NamedValue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_CreateOrUpdate", + "description": "Creates or updates a NamedValue.", + "x-ms-examples": { + "ApiManagementCreateNamedValue": { + "$ref": "./examples/ApiManagementCreateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "NamedValue was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Update", + "description": "Updates the specific NamedValue.", + "x-ms-examples": { + "ApiManagementUpdateNamedValue": { + "$ref": "./examples/ApiManagementUpdateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "204": { + "description": "NamedValue was successfully updated." + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Delete", + "description": "Deletes specific NamedValue from the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteNamedValue": { + "$ref": "./examples/ApiManagementDeleteNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "NamedValue was successfully deleted." + }, + "204": { + "description": "NamedValue was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}/listValue": { + "post": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListValue", + "description": "Gets the secret value of the NamedValue.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains secret value.", + "schema": { + "$ref": "./definitions.json#/definitions/PropertyValueContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json new file mode 100644 index 000000000000..8c6685f66278 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json @@ -0,0 +1,212 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for getting the network connectivity status of your Azure API Management deployment. When the API Management service is deployed inside a Virtual Network, it needs to have access to other Azure resources it depends on. This also gives details about the DNS Servers visible to Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByService", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatus": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatus.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the list Network status details for all regions in which service is deployed.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkStatusContractByLocation" + }, + "description": "List of Network Status values." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/locations/{locationName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByLocation", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatusByLocation": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatusByLocation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LocationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the Network status details.", + "schema": { + "$ref": "#/definitions/NetworkStatusContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ConnectivityStatusContract": { + "properties": { + "name": { + "type": "string", + "description": "The hostname of the resource which the service depends on. This can be the database, storage or any other azure resource on which the service depends upon.", + "minLength": 1 + }, + "status": { + "type": "string", + "enum": [ + "initializing", + "success", + "failure" + ], + "x-ms-enum": { + "name": "ConnectivityStatusType", + "modelAsString": true + }, + "description": "Resource Connectivity Status Type identifier." + }, + "error": { + "type": "string", + "description": "Error details of the connectivity to the resource." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status was last updated. This status should be updated every 15 minutes. If this status has not been updated, then it means that the service has lost network connectivity to the resource, from inside the Virtual Network.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "lastStatusChange": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status last Changed from success to failure or vice-versa. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "name", + "status", + "lastUpdated", + "lastStatusChange" + ], + "description": "Details about connectivity to a resource." + }, + "NetworkStatusContractByLocation": { + "properties": { + "location": { + "type": "string", + "description": "Location of service", + "minLength": 1 + }, + "networkStatus": { + "$ref": "#/definitions/NetworkStatusContract", + "description": "Network status in Location" + } + }, + "description": "Network Status in the Location" + }, + "NetworkStatusContract": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of DNS servers IPV4 addresses." + }, + "connectivityStatus": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectivityStatusContract" + }, + "description": "Gets the list of Connectivity Status to the Resources on which the service depends upon." + } + }, + "required": [ + "dnsServers", + "connectivityStatus" + ], + "description": "Network Status details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json new file mode 100644 index 000000000000..591923264656 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json @@ -0,0 +1,564 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on who is going to receive notifications associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/notifications": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListNotifications": { + "$ref": "./examples/ApiManagementListNotifications.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Notification for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_Get", + "description": "Gets the details of the Notification specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNotification": { + "$ref": "./examples/ApiManagementGetNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Notification.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Notification" + ], + "operationId": "Notification_CreateOrUpdate", + "description": "Create or Update API Management publisher notification.", + "x-ms-examples": { + "ApiManagementCreateNotification": { + "$ref": "./examples/ApiManagementCreateNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Notification was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers": { + "get": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_ListByNotification", + "description": "Gets the list of the Notification Recipient User subscribed to the notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientUsers": { + "$ref": "./examples/ApiManagementListNotificationRecipientUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient User collection for the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}": { + "head": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CheckEntityExists", + "description": "Determine if the Notification Recipient User is subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientUser": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The User is subscribed to receive the notification." + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CreateOrUpdate", + "description": "Adds the API Management User to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientUser": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient User was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "200": { + "description": "Recipient User is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_Delete", + "description": "Removes the API Management user from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientUser": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient User was successfully removed from the notification list." + }, + "204": { + "description": "Recipient User was successfully removed from the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails": { + "get": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_ListByNotification", + "description": "Gets the list of the Notification Recipient Emails subscribed to a notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientEmails": { + "$ref": "./examples/ApiManagementListNotificationRecipientEmails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient Email collection subscribed to the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}": { + "head": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CheckEntityExists", + "description": "Determine if Notification Recipient Email subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Users is subscribed to receive the notification." + }, + "404": { + "description": "The Users is not subscribed to receive the notification." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CreateOrUpdate", + "description": "Adds the Email address to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient Email was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "200": { + "description": "Recipient Email is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_Delete", + "description": "Removes the email from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "204": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json new file mode 100644 index 000000000000..6e8a91da0798 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on OpenId Connect Provider entity associated with your Azure API Management deployment. API Management allows you to access APIs secured with token from [OpenID Connect Provider ](http://openid.net/connect/) to be accessed from the Developer Console.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/openidConnectProviders": { + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListByService", + "description": "Lists of all the OpenId Connect Providers.", + "x-ms-examples": { + "ApiManagementListOpenIdConnectProviders": { + "$ref": "./examples/ApiManagementListOpenIdConnectProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of all the OpenId Connect Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenIdConnectProviderCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}": { + "head": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the openIdConnectProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementHeadOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified openidConnectProvider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Get", + "description": "Gets specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementGetOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementGetOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified OpenId Connect Provider entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_CreateOrUpdate", + "description": "Creates or updates the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementCreateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementCreateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "OpenIdConnect Provider was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "200": { + "description": "OpenIdConnect Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Update", + "description": "Updates the specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementUpdateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementUpdateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "OpenId Connect Provider was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Delete", + "description": "Deletes specific OpenID Connect Provider of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementDeleteOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "204": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}/listSecrets": { + "post": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListSecrets", + "description": "Gets the client secret details of the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementListSecretsOpenidConnectProvider": { + "$ref": "./examples/ApiManagementListSecretsOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json new file mode 100644 index 000000000000..36b610f0ccd3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json @@ -0,0 +1,304 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Global Policies in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/policies": { + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_ListByService", + "description": "Lists all the Global Policy definitions of the Api Management service.", + "x-ms-examples": { + "ApiManagementListPolicies": { + "$ref": "./examples/ApiManagementListPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of Policy Contracts.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}": { + "head": { + "tags": [ + "Policy" + ], + "operationId": "Policy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Global policy definition in the Api Management service.", + "x-ms-examples": { + "ApiManagementHeadPolicy": { + "$ref": "./examples/ApiManagementHeadPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Get", + "description": "Get the Global policy definition of the Api Management service.", + "x-ms-examples": { + "ApiManagementGetPolicy": { + "$ref": "./examples/ApiManagementGetPolicy.json" + }, + "ApiManagementGetPolicyFormat": { + "$ref": "./examples/ApiManagementGetPolicyFormat.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the Global policy definition of the Api Management service.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "operationId": "Policy_CreateOrUpdate", + "description": "Creates or updates the global policy configuration of the Api Management service.", + "x-ms-examples": { + "ApiManagementCreatePolicy": { + "$ref": "./examples/ApiManagementCreatePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Global policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Global policy configuration of the Api Management service was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Delete", + "description": "Deletes the global policy configuration of the Api Management Service.", + "x-ms-examples": { + "ApiManagementDeletePolicy": { + "$ref": "./examples/ApiManagementDeletePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy was successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json new file mode 100644 index 000000000000..834258a44cd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json @@ -0,0 +1,100 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieving a collection of policy snippets available in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/policyDescriptions": { + "get": { + "tags": [ + "PolicyDescription" + ], + "operationId": "PolicyDescription_ListByService", + "description": "Lists all policy descriptions.", + "x-ms-examples": { + "ApiManagementListPolicyDescriptions": { + "$ref": "./examples/ApiManagementListPolicyDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Policy scope.", + "enum": [ + "Tenant", + "Product", + "Api", + "Operation", + "All" + ], + "x-ms-enum": { + "name": "PolicyScopeContract", + "modelAsString": false + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of policy descriptions.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json new file mode 100644 index 000000000000..abf6b6644e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json @@ -0,0 +1,657 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on PortalSettings entity associated with your Azure API Management deployment. Using this entity you can manage settings for a Developer Portal.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/portalsettings/signin": { + "head": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignInSettings.", + "x-ms-examples": { + "ApiManagementHeadSignInSettings": { + "$ref": "./examples/ApiManagementHeadSignInSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Get", + "description": "Get Sign In Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Update", + "description": "Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Update Sign-In settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-In settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_CreateOrUpdate", + "description": "Create or Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup": { + "head": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignUpSettings.", + "x-ms-examples": { + "ApiManagementHeadSignUpSettings": { + "$ref": "./examples/ApiManagementHeadSignUpSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Get", + "description": "Get Sign Up Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Update", + "description": "Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Update Sign-Up settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-Up settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_CreateOrUpdate", + "description": "Create or Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation": { + "head": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementHeadDelegationSettings": { + "$ref": "./examples/ApiManagementHeadDelegationSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Get", + "description": "Get Delegation Settings for the Portal.", + "x-ms-examples": { + "ApiManagementPortalSettingsGetDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsGetDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Update", + "description": "Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Update Delegation settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delegation settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_CreateOrUpdate", + "description": "Create or Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsPutDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation/listSecrets": { + "post": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_ListSecrets", + "description": "Gets the secret validation key of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementListSecretsPortalSettings": { + "$ref": "./examples/ApiManagementListSecretsPortalSettingsValidationKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the validation key.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSettingValidationKeyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json new file mode 100644 index 000000000000..2133252b0379 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json @@ -0,0 +1,1399 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Product entity associated with your Azure API Management deployment. The Product entity represents a product in API Management. Products include one or more APIs and their associated terms of use. Once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/products": { + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_ListByService", + "description": "Lists a collection of products in the specified service instance.", + "x-ms-examples": { + "ApiManagementListProducts": { + "$ref": "./examples/ApiManagementListProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "required": false, + "type": "boolean", + "description": "When set to true, the response contains an array of groups that have visibility to the product. The default is false." + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Products which are part of a specific tag." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Product entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}": { + "head": { + "tags": [ + "Product" + ], + "operationId": "Product_GetEntityTag", + "description": "Gets the entity state (Etag) version of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProduct": { + "$ref": "./examples/ApiManagementHeadProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Product entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_Get", + "description": "Gets the details of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetProduct": { + "$ref": "./examples/ApiManagementGetProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Product" + ], + "operationId": "Product_CreateOrUpdate", + "description": "Creates or Updates a product.", + "x-ms-examples": { + "ApiManagementCreateProduct": { + "$ref": "./examples/ApiManagementCreateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Product" + ], + "operationId": "Product_Update", + "description": "Update existing product details.", + "x-ms-examples": { + "ApiManagementUpdateProduct": { + "$ref": "./examples/ApiManagementUpdateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Product details was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Product" + ], + "operationId": "Product_Delete", + "description": "Delete product.", + "x-ms-examples": { + "ApiManagementDeleteProduct": { + "$ref": "./examples/ApiManagementDeleteProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete existing subscriptions associated with the product or not." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product was successfully removed." + }, + "204": { + "description": "Product was successfully removed by previous request or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis": { + "get": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_ListByProduct", + "description": "Lists a collection of the APIs associated with a product.", + "x-ms-examples": { + "ApiManagementListProductApis": { + "$ref": "./examples/ApiManagementListProductApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}": { + "head": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CheckEntityExists", + "description": "Checks that API entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductApi": { + "$ref": "./examples/ApiManagementHeadProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CreateOrUpdate", + "description": "Adds an API to the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductApi": { + "$ref": "./examples/ApiManagementCreateProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_Delete", + "description": "Deletes the specified API from the specified product.", + "x-ms-examples": { + "ApiManagementDeleteProductApi": { + "$ref": "./examples/ApiManagementDeleteProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from product" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in product" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups": { + "get": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_ListByProduct", + "description": "Lists the collection of developer groups associated with the specified product.", + "x-ms-examples": { + "ApiManagementListProductGroups": { + "$ref": "./examples/ApiManagementListProductGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | |
| displayName | filter | eq, ne | |
| description | filter | eq, ne | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}": { + "head": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CheckEntityExists", + "description": "Checks that Group entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductGroup": { + "$ref": "./examples/ApiManagementHeadProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Group is associated with the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CreateOrUpdate", + "description": "Adds the association between the specified developer group with the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductGroup": { + "$ref": "./examples/ApiManagementCreateProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The group was successfully associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "200": { + "description": "The specified group is already associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_Delete", + "description": "Deletes the association between the specified group and product.", + "x-ms-examples": { + "ApiManagementDeleteProductGroup": { + "$ref": "./examples/ApiManagementDeleteProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully disassociated with the product." + }, + "204": { + "description": "The group was successfully disassociated with the product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/subscriptions": { + "get": { + "tags": [ + "ProductSubscription" + ], + "operationId": "ProductSubscriptions_List", + "description": "Lists the collection of subscriptions to the specified product.", + "x-ms-examples": { + "ApiManagementListProductSubscriptions": { + "$ref": "./examples/ApiManagementListProductSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies": { + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_ListByProduct", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementListProductPolicies": { + "$ref": "./examples/ApiManagementListProductPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}": { + "head": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_GetEntityTag", + "description": "Get the ETag of the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementHeadProductPolicy": { + "$ref": "./examples/ApiManagementHeadProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy Etag information.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Get", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementGetProductPolicy": { + "$ref": "./examples/ApiManagementGetProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the Product.", + "x-ms-examples": { + "ApiManagementCreateProductPolicy": { + "$ref": "./examples/ApiManagementCreateProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Delete", + "description": "Deletes the policy configuration at the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductPolicy": { + "$ref": "./examples/ApiManagementDeleteProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags": { + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_ListByProduct", + "description": "Lists all Tags associated with the Product.", + "x-ms-examples": { + "ApiManagementListProductTags": { + "$ref": "./examples/ApiManagementListProductTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}": { + "head": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetEntityStateByProduct", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProductTag": { + "$ref": "./examples/ApiManagementHeadProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetByProduct", + "description": "Get tag associated with the Product.", + "x-ms-examples": { + "ApiManagementGetProductTag": { + "$ref": "./examples/ApiManagementGetProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_AssignToProduct", + "description": "Assign tag to the Product.", + "x-ms-examples": { + "ApiManagementCreateProductTag": { + "$ref": "./examples/ApiManagementCreateProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_DetachFromProduct", + "description": "Detach the tag from the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductTag": { + "$ref": "./examples/ApiManagementDeleteProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully detached the tag from the Product." + }, + "204": { + "description": "Successfully detached the tag from the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json new file mode 100644 index 000000000000..981f7aaf5d7c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations to retrieve Products by Tags in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/productsByTags": { + "get": { + "tags": [ + "ProductsByTag" + ], + "operationId": "Product_ListByTags", + "description": "Lists a collection of products associated with tags.", + "x-ms-examples": { + "ApiManagementListProductsByTags": { + "$ref": "./examples/ApiManagementListProductsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedProducts", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Products." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json new file mode 100644 index 000000000000..2aa6ffd5883d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json @@ -0,0 +1,242 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Quota entity associated with your Azure API Management deployment. To configure call rate limit and quota policies refer to [how to configure call rate limit and quota](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies).", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}": { + "get": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_ListByService", + "description": "Lists a collection of current quota counter periods associated with the counter-key configured in the policy on the specified service instance. The api does not support paging yet.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeys": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of the quota counter values.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_Update", + "description": "Updates all the quota counter values specified with the existing quota counter key to a value in the specified service instance. This should be used for reset of the quota counter values.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKey": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the quota counter to be applied to all quota counter periods." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Quota counter period was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}/periods/{quotaPeriodKey}": { + "get": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Get", + "description": "Gets the value of the quota counter associated with the counter-key in the policy for the specific period in service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeysByQuotaPeriod": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Quota counter details for the specified period.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Update", + "description": "Updates an existing quota counter value in the specified service instance.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKeyByQuotaPeriod": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the Quota counter to be applied on the specified period." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The quota counter value was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json new file mode 100644 index 000000000000..4beef75dbe2a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json @@ -0,0 +1,85 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/regions": { + "get": { + "tags": [ + "Region" + ], + "operationId": "Region_ListByService", + "description": "Lists all azure regions in which the service exists.", + "x-ms-examples": { + "ApiManagementListRegions": { + "$ref": "./examples/ApiManagementListRegions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of Regions in which the service is deployed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/RegionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json new file mode 100644 index 000000000000..461f343ec801 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json @@ -0,0 +1,514 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to get the analytics reports associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/reports/byApi": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByApi", + "description": "Lists report records by API.", + "x-ms-examples": { + "ApiManagementGetReportsByApi": { + "$ref": "./examples/ApiManagementGetReportsByApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byUser": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByUser", + "description": "Lists report records by User.", + "x-ms-examples": { + "ApiManagementGetReportsByUser": { + "$ref": "./examples/ApiManagementGetReportsByUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| userId | select, filter | eq | |
| apiRegion | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byOperation": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByOperation", + "description": "Lists report records by API Operations.", + "x-ms-examples": { + "ApiManagementGetReportsByOperation": { + "$ref": "./examples/ApiManagementGetReportsByOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byProduct": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByProduct", + "description": "Lists report records by Product.", + "x-ms-examples": { + "ApiManagementGetReportsByProduct": { + "$ref": "./examples/ApiManagementGetReportsByProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byGeo": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByGeo", + "description": "Lists report records by geography.", + "x-ms-examples": { + "ApiManagementGetReportsByGeo": { + "$ref": "./examples/ApiManagementGetReportsByGeo.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| country | select | | |
| region | select | | |
| zip | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/bySubscription": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListBySubscription", + "description": "Lists report records by subscription.", + "x-ms-examples": { + "ApiManagementGetReportsBySubscription": { + "$ref": "./examples/ApiManagementGetReportsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | select, filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byTime": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByTime", + "description": "Lists report records by Time.", + "x-ms-examples": { + "ApiManagementGetReportsByTime": { + "$ref": "./examples/ApiManagementGetReportsByTime.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter, select | ge, le | |
| interval | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "name": "interval", + "in": "query", + "required": true, + "type": "string", + "format": "duration", + "description": "By time interval. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byRequest": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByRequest", + "description": "Lists report records by Request.", + "x-ms-examples": { + "ApiManagementGetReportsByRequest": { + "$ref": "./examples/ApiManagementGetReportsByRequest.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| productId | filter | eq | |
| userId | filter | eq | |
| apiRegion | filter | eq | |
| subscriptionId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/RequestReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-odata": "./definitions.json#/definitions/RequestReportRecordContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json new file mode 100644 index 000000000000..3c7cad660af8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json @@ -0,0 +1,502 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Subscription entity associated with your Azure API Management deployment. The Subscription entity represents the association between a user and a product in API Management. Products contain one or more APIs, and once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/subscriptions": { + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_List", + "description": "Lists all subscriptions of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListSubscriptions": { + "$ref": "./examples/ApiManagementListSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of the Subscription entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}": { + "head": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_GetEntityTag", + "description": "Gets the entity state (Etag) version of the apimanagement subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadSubscription": { + "$ref": "./examples/ApiManagementHeadSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified apimanagement subscription entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Get", + "description": "Gets the specified Subscription entity.", + "x-ms-examples": { + "ApiManagementGetSubscription": { + "$ref": "./examples/ApiManagementGetSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Subscription entity.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_CreateOrUpdate", + "description": "Creates or updates the subscription of specified user to the specified product.", + "x-ms-examples": { + "ApiManagementCreateSubscription": { + "$ref": "./examples/ApiManagementCreateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "200": { + "description": "The user already subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Update", + "description": "Updates the details of a subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateSubscription": { + "$ref": "./examples/ApiManagementUpdateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The subscription details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Delete", + "description": "Deletes the specified subscription.", + "x-ms-examples": { + "ApiManagementDeleteSubscription": { + "$ref": "./examples/ApiManagementDeleteSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The subscription details were successfully deleted." + }, + "204": { + "description": "The subscription details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regeneratePrimaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegeneratePrimaryKey", + "description": "Regenerates primary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegeneratePrimaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regenerateSecondaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegenerateSecondaryKey", + "description": "Regenerates secondary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegenerateSecondaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegenerateSecondaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/listSecrets": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_ListSecrets", + "description": "Gets the subscription keys.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains subscription keys.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionKeysContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json new file mode 100644 index 000000000000..525afd07bd08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json @@ -0,0 +1,99 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for querying APIs. Operations and Products by tags in your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/tagResources": { + "get": { + "tags": [ + "TagResource" + ], + "operationId": "TagResource_ListByService", + "description": "Lists a collection of resources associated with tags.", + "x-ms-examples": { + "ApiManagementListTagResources": { + "$ref": "./examples/ApiManagementListTagResources.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| aid | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| isCurrent | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json new file mode 100644 index 000000000000..ea44d76261a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Tag entity in your Azure API Management deployment. Tags can be assigned to APIs, Operations and Products.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/tags": { + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_ListByService", + "description": "Lists a collection of tags defined within a service instance.", + "x-ms-examples": { + "ApiManagementListTags": { + "$ref": "./examples/ApiManagementListTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Scope like 'apis', 'products' or 'apis/{apiId}" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Tag entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}": { + "head": { + "tags": [ + "Tag" + ], + "operationId": "Tag_GetEntityState", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadTag": { + "$ref": "./examples/ApiManagementHeadTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Get", + "description": "Gets the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetTag": { + "$ref": "./examples/ApiManagementGetTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Tag entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Tag" + ], + "operationId": "Tag_CreateOrUpdate", + "description": "Creates a tag.", + "x-ms-examples": { + "ApiManagementCreateTag": { + "$ref": "./examples/ApiManagementCreateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was created successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag already exists.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Update", + "description": "Updates the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateTag": { + "$ref": "./examples/ApiManagementUpdateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The tag details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Delete", + "description": "Deletes specific tag of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteTag": { + "$ref": "./examples/ApiManagementDeleteTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag successfully removed" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json new file mode 100644 index 000000000000..7a03e8b28249 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json @@ -0,0 +1,740 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on tenant entity associated with your Azure API Management deployment. Using this entity you can manage properties and configuration that apply to the entire API Management service instance.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/tenant/{accessName}": { + "head": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_GetEntityTag", + "description": "Tenant access metadata", + "x-ms-examples": { + "ApiManagementHeadTenantAccess": { + "$ref": "./examples/ApiManagementHeadTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Get", + "description": "Get tenant access information details without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Update", + "description": "Update tenant access information details.", + "x-ms-examples": { + "ApiManagementUpdateTenantAccess": { + "$ref": "./examples/ApiManagementUpdateTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationUpdateParameters" + }, + "description": "Parameters supplied to retrieve the Tenant Access Information." + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Tenant's access information updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegeneratePrimaryKey", + "description": "Regenerate primary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegenerateSecondaryKey", + "description": "Regenerate secondary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/listSecrets": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_ListSecrets", + "description": "Get tenant access information details.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git": { + "get": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_Get", + "description": "Gets the Git access configuration for the tenant. Without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegeneratePrimaryKey", + "description": "Regenerate primary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegenerateSecondaryKey", + "description": "Regenerate secondary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/listSecrets": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_ListSecrets", + "description": "Gets the Git access configuration for the tenant.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/deploy": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Deploy", + "description": "This operation applies changes from the specified Git branch to the configuration database. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To deploy any service configuration changes to the API Management service instance", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-deploy-any-service-configuration-changes-to-the-api-management-service-instance" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationDeploy": { + "$ref": "./examples/ApiManagementTenantConfigurationDeploy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Deploy Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of applying changes from Git branch to database.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/save": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Save", + "description": "This operation creates a commit with the current configuration snapshot to the specified branch in the repository. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To save the service configuration to the Git repository", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-save-the-service-configuration-to-the-git-repository" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationSave": { + "$ref": "./examples/ApiManagementTenantConfigurationSave.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SaveConfigurationParameter" + }, + "description": "Save Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of creating a commit in the repository.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/validate": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Validate", + "description": "This operation validates the changes in the specified Git branch. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementTenantConfigurationValidate": { + "$ref": "./examples/ApiManagementTenantConfigurationValidate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Validate Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of validating the changes in the specified Git branch.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/syncState": { + "get": { + "tags": [ + "TenantConfigurationSyncState" + ], + "operationId": "TenantConfiguration_GetSyncState", + "description": "Gets the status of the most recent synchronization between the configuration database and the Git repository.", + "x-ms-examples": { + "ApiManagementTenantAccessSyncState": { + "$ref": "./examples/ApiManagementTenantAccessSyncState.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "200": { + "description": "Sync state result.", + "schema": { + "$ref": "./definitions.json#/definitions/TenantConfigurationSyncStateContract" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json new file mode 100644 index 000000000000..c290fb30f0a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json @@ -0,0 +1,702 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on User entity in Azure API Management deployment. The User entity in API Management represents the developers that call the APIs of the products to which they are subscribed.", + "version": "2019-12-01" + }, + "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.ApiManagement/service/{serviceName}/users": { + "get": { + "tags": [ + "User" + ], + "operationId": "User_ListByService", + "description": "Lists a collection of registered users in the specified service instance.", + "x-ms-examples": { + "ApiManagementListUsers": { + "$ref": "./examples/ApiManagementListUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "type": "boolean", + "description": "Detailed Group in response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of User entities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}": { + "head": { + "tags": [ + "User" + ], + "operationId": "User_GetEntityTag", + "description": "Gets the entity state (Etag) version of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadUser": { + "$ref": "./examples/ApiManagementHeadUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified user entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "User" + ], + "operationId": "User_Get", + "description": "Gets the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetUser": { + "$ref": "./examples/ApiManagementGetUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified user entity.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "User" + ], + "operationId": "User_CreateOrUpdate", + "description": "Creates or Updates a user.", + "x-ms-examples": { + "ApiManagementCreateUser": { + "$ref": "./examples/ApiManagementCreateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserCreateParameters" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "User was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "User was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "User" + ], + "operationId": "User_Update", + "description": "Updates the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateUser": { + "$ref": "./examples/ApiManagementUpdateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The user details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "User" + ], + "operationId": "User_Delete", + "description": "Deletes specific user.", + "x-ms-examples": { + "ApiManagementDeleteUser": { + "$ref": "./examples/ApiManagementDeleteUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to delete user's subscription or not." + }, + { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Send an Account Closed Email notification to the User." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user details were successfully deleted." + }, + "204": { + "description": "The user details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/generateSsoUrl": { + "post": { + "tags": [ + "Users" + ], + "operationId": "User_GenerateSsoUrl", + "description": "Retrieves a redirection URL containing an authentication token for signing a given user into the developer portal.", + "x-ms-examples": { + "ApiManagementUserGenerateSsoUrl": { + "$ref": "./examples/ApiManagementUserGenerateSsoUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the single sign-on URL.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/GenerateSsoUrlResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/groups": { + "get": { + "tags": [ + "UserGroup" + ], + "operationId": "UserGroup_List", + "description": "Lists all user groups.", + "x-ms-examples": { + "ApiManagementListUserGroups": { + "$ref": "./examples/ApiManagementListUserGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/subscriptions": { + "get": { + "tags": [ + "UserSubscription" + ], + "operationId": "UserSubscription_List", + "description": "Lists the collection of subscriptions of the specified user.", + "x-ms-examples": { + "ApiManagementListUserSubscriptions": { + "$ref": "./examples/ApiManagementListUserSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/identities": { + "get": { + "tags": [ + "UserIdentity" + ], + "operationId": "UserIdentities_List", + "description": "List of all user identities.", + "x-ms-examples": { + "ApiManagementListUserIdentities": { + "$ref": "./examples/ApiManagementListUserIdentities.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of User Identities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserIdentityCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/token": { + "post": { + "tags": [ + "UserToken" + ], + "operationId": "User_GetSharedAccessToken", + "description": "Gets the Shared Access Authorization Token for the User.", + "x-ms-examples": { + "ApiManagementUserToken": { + "$ref": "./examples/ApiManagementUserToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserTokenParameters" + }, + "description": "Create Authorization Token parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the user.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/UserTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/confirmations/password/send": { + "post": { + "tags": [ + "UserConfirmationPasswordSend" + ], + "operationId": "UserConfirmationPassword_Send", + "description": "Sends confirmation", + "x-ms-examples": { + "ApiManagementUserConfirmationPasswordSend": { + "$ref": "./examples/ApiManagementUserConfirmationPasswordSend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Notification successfully sent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json new file mode 100644 index 000000000000..490ae700e22e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json @@ -0,0 +1,5561 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01", + "description": "A spec file containing all the definitions", + "title": "Definitions file" + }, + "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": {}, + "definitions": { + "AccessInformationContract": { + "properties": { + "id": { + "type": "string", + "description": "Identifier." + }, + "primaryKey": { + "type": "string", + "description": "Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information contract of the API Management service." + }, + "AccessInformationUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessInformationUpdateParameterProperties", + "description": "Tenant access information update parameter properties." + } + }, + "description": "Tenant access information update parameters." + }, + "AccessInformationUpdateParameterProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information update parameters of the API Management service" + }, + "ApiCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api list representation." + }, + "ApiContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractProperties", + "description": "Api entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api details." + }, + "ApiContractProperties": { + "properties": { + "sourceApiId": { + "type": "string", + "description": "API identifier of the source API." + }, + "displayName": { + "type": "string", + "description": "API name. Must be 1 to 300 characters long.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.", + "minLength": 0, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "required": [ + "path" + ], + "description": "Api Entity Properties" + }, + "ApiCreateOrUpdateParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiCreateOrUpdateProperties", + "description": "Api entity create of update properties." + } + }, + "description": "API Create or Update Parameters." + }, + "ApiCreateOrUpdateProperties": { + "properties": { + "value": { + "type": "string", + "description": "Content value when Importing an API." + }, + "format": { + "type": "string", + "description": "Format of the Content in which the API is getting imported.", + "enum": [ + "wadl-xml", + "wadl-link-json", + "swagger-json", + "swagger-link-json", + "wsdl", + "wsdl-link", + "openapi", + "openapi+json", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ContentFormat", + "modelAsString": true, + "values": [ + { + "value": "wadl-xml", + "description": "The contents are inline and Content type is a WADL document." + }, + { + "value": "wadl-link-json", + "description": "The WADL document is hosted on a publicly accessible internet address." + }, + { + "value": "swagger-json", + "description": "The contents are inline and Content Type is a OpenApi 2.0 Document." + }, + { + "value": "swagger-link-json", + "description": "The Open Api 2.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "wsdl", + "description": "The contents are inline and the document is a WSDL/Soap document." + }, + { + "value": "wsdl-link", + "description": "The WSDL document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in YAML format." + }, + { + "value": "openapi+json", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in JSON format." + }, + { + "value": "openapi-link", + "description": "The Open Api 3.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi+json-link", + "description": "The Open Api 3.0 Json document is hosted on a publicly accessible internet address." + } + ] + } + }, + "wsdlSelector": { + "type": "object", + "description": "Criteria to limit import of WSDL to a subset of the document.", + "properties": { + "wsdlServiceName": { + "type": "string", + "description": "Name of service to import from WSDL" + }, + "wsdlEndpointName": { + "type": "string", + "description": "Name of endpoint(port) to import from WSDL" + } + } + }, + "apiType": { + "type": "string", + "description": "Type of Api to create. \n * `http` creates a SOAP to REST API \n * `soap` creates a SOAP pass-through API .", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "SoapApiType", + "x-ms-enum": { + "name": "SoapApiType", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "Imports a SOAP API having a RESTful front end.", + "name": "SoapToRest" + }, + { + "value": "soap", + "description": "Imports the Soap API having a SOAP front end.", + "name": "SoapPassThrough" + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiContractProperties" + } + ], + "description": "Api Create or Update Properties." + }, + "ApiEntityBaseContract": { + "properties": { + "description": { + "type": "string", + "description": "Description of the API. May include HTML formatting tags." + }, + "authenticationSettings": { + "$ref": "#/definitions/AuthenticationSettingsContract", + "description": "Collection of authentication settings included into this API." + }, + "subscriptionKeyParameterNames": { + "$ref": "#/definitions/SubscriptionKeyParameterNamesContract", + "description": "Protocols over which API is made available." + }, + "type": { + "type": "string", + "description": "Type of API.", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "ApiType", + "x-ms-enum": { + "name": "ApiType", + "modelAsString": true + } + }, + "apiRevision": { + "type": "string", + "description": "Describes the Revision of the Api. If no value is provided, default revision 1 is created", + "minLength": 1, + "maxLength": 100 + }, + "apiVersion": { + "type": "string", + "description": "Indicates the Version identifier of the API if the API is versioned", + "maxLength": 100 + }, + "isCurrent": { + "type": "boolean", + "description": "Indicates if API revision is current api revision." + }, + "isOnline": { + "type": "boolean", + "description": "Indicates if API revision is accessible via the gateway.", + "readOnly": true + }, + "apiRevisionDescription": { + "type": "string", + "description": "Description of the Api Revision.", + "maxLength": 256 + }, + "apiVersionDescription": { + "type": "string", + "description": "Description of the Api Version.", + "maxLength": 256 + }, + "apiVersionSetId": { + "type": "string", + "description": "A resource identifier for the related ApiVersionSet." + }, + "subscriptionRequired": { + "type": "boolean", + "description": "Specifies whether an API or Product subscription is required for accessing the API." + } + }, + "description": "API base contract details." + }, + "ApiExportResult": { + "properties": { + "id": { + "type": "string", + "description": "ResourceId of the API which was exported." + }, + "format": { + "type": "string", + "enum": [ + "swagger-link-json", + "wadl-link-json", + "wsdl-link+xml", + "openapi-link" + ], + "x-ms-client-name": "ExportResultFormat", + "x-ms-enum": { + "name": "ExportResultFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link-json", + "description": "The Api Definition is exported in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link+xml", + "description": "The Api Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link-json", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "OpenApi" + } + ] + }, + "description": "Format in which the Api Details are exported to the Storage Blob with Sas Key valid for 5 minutes." + }, + "value": { + "type": "object", + "description": "The object defining the schema of the exported Api Detail", + "properties": { + "link": { + "type": "string", + "description": "Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes." + } + } + } + }, + "description": "API Export result." + }, + "ApiReleaseCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged ApiRelease list representation." + }, + "ApiReleaseContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiReleaseContractProperties", + "description": "ApiRelease entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "ApiRelease details." + }, + "ApiReleaseContractProperties": { + "properties": { + "apiId": { + "type": "string", + "description": "Identifier of the API the release belongs to." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API was released. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API release was updated." + }, + "notes": { + "type": "string", + "description": "Release Notes" + } + }, + "description": "API Release details" + }, + "ApiRevisionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiRevisionContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api Revision list representation." + }, + "ApiRevisionContract": { + "properties": { + "apiId": { + "type": "string", + "readOnly": true, + "description": "Identifier of the API Revision." + }, + "apiRevision": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "readOnly": true, + "description": "Revision number of API." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision was created. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision were updated. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "description": { + "type": "string", + "readOnly": true, + "maxLength": 256, + "description": "Description of the API Revision." + }, + "privateUrl": { + "type": "string", + "readOnly": true, + "description": "Gateway URL for accessing the non-current API Revision." + }, + "isOnline": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is the current api revision." + }, + "isCurrent": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is accessible via the gateway." + } + }, + "description": "Summary of revision metadata." + }, + "ApiRevisionInfoContract": { + "description": "Object used to create an API Revision or Version based on an existing API Revision", + "properties": { + "sourceApiId": { + "type": "string", + "description": "Resource identifier of API to be used to create the revision from." + }, + "apiVersionName": { + "type": "string", + "maxLength": 100, + "description": "Version identifier for the new API Version." + }, + "apiRevisionDescription": { + "type": "string", + "maxLength": 256, + "description": "Description of new API Revision." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + } + }, + "ApiTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "API identifier in the form /apis/{apiId}." + }, + "name": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ApiEntityBaseContract" + } + ], + "description": "API contract properties for the Tag Resources." + }, + "ApiUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractUpdateProperties", + "description": "Properties of the API entity that can be updated." + } + }, + "description": "API update contract details." + }, + "ApiContractUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "description": "API update contract properties." + }, + "ApiVersionSetCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiVersionSetContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Api Version Set list representation." + }, + "ApiVersionSetContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetContractProperties", + "description": "Api VersionSet contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Version Set Contract details." + }, + "ApiVersionSetContractDetails": { + "description": "An API Version Set contains the common configuration for a set of API Versions relating ", + "properties": { + "id": { + "type": "string", + "description": "Identifier for existing API Version Set. Omit this value to create a new Version Set." + }, + "name": { + "type": "string", + "description": "The display Name of the API Version Set." + }, + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ] + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`." + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`." + } + } + }, + "ApiVersionSetContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "required": [ + "displayName", + "versioningScheme" + ], + "description": "Properties of an API Version Set." + }, + "ApiVersionSetEntityBase": { + "properties": { + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`.", + "minLength": 1, + "maxLength": 100 + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`.", + "minLength": 1, + "maxLength": 100 + } + }, + "description": "Api Version set base parameters" + }, + "ApiVersionSetUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetUpdateParametersProperties", + "description": "Parameters to update or create an Api Version Set Contract." + } + }, + "description": "Parameters to update or create an Api Version Set Contract." + }, + "ApiVersionSetUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "description": "Properties used to create or update an API Version Set." + }, + "AuthenticationSettingsContract": { + "properties": { + "oAuth2": { + "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", + "description": "OAuth2 Authentication settings" + }, + "openid": { + "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", + "description": "OpenID Connect Authentication Settings" + } + }, + "description": "API Authentication Settings." + }, + "AuthorizationServerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationServerContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OAuth2 Authorization Servers list representation." + }, + "AuthorizationServerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerContractProperties", + "description": "Properties of the External OAuth authorization server Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerContractBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the authorization server. Can contain HTML formatting tags." + }, + "authorizationMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "HEAD", + "OPTIONS", + "TRACE", + "GET", + "POST", + "PUT", + "PATCH", + "DELETE" + ], + "x-ms-enum": { + "name": "AuthorizationMethod", + "modelAsString": false + } + }, + "description": "HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional." + }, + "clientAuthenticationMethod": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Basic", + "Body" + ], + "x-ms-enum": { + "name": "ClientAuthenticationMethod", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Basic Client Authentication method." + }, + { + "value": "Body", + "description": "Body based Authentication method." + } + ] + } + }, + "description": "Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format." + }, + "tokenBodyParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenBodyParameterContract" + }, + "description": "Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}." + }, + "tokenEndpoint": { + "type": "string", + "description": "OAuth token endpoint. Contains absolute URI to entity being referenced.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "supportState": { + "type": "boolean", + "description": "If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "defaultScope": { + "type": "string", + "description": "Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.3" + } + }, + "bearerTokenSendingMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "name": "BearerTokenSendingMethod", + "modelAsString": true + } + }, + "description": "Specifies the mechanism by which access token is passed to the API. ", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "resourceOwnerUsername": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username." + }, + "resourceOwnerPassword": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password." + } + }, + "description": "External OAuth authorization server Update settings contract." + }, + "AuthorizationServerContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "required": [ + "displayName", + "clientRegistrationEndpoint", + "authorizationEndpoint", + "clientId", + "grantTypes" + ], + "description": "External OAuth authorization server settings Properties." + }, + "AuthorizationServerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerUpdateContractProperties", + "description": "Properties of the External OAuth authorization server update Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "description": "External OAuth authorization server Update settings contract." + }, + "BackendAuthorizationHeaderCredentials": { + "properties": { + "scheme": { + "type": "string", + "description": "Authentication Scheme name.", + "minLength": 1, + "maxLength": 100 + }, + "parameter": { + "type": "string", + "description": "Authentication Parameter value.", + "minLength": 1, + "maxLength": 300 + } + }, + "required": [ + "scheme", + "parameter" + ], + "description": "Authorization header information." + }, + "BackendBaseParameters": { + "properties": { + "title": { + "type": "string", + "description": "Backend Title.", + "minLength": 1, + "maxLength": 300 + }, + "description": { + "type": "string", + "description": "Backend Description.", + "minLength": 1, + "maxLength": 2000 + }, + "resourceId": { + "type": "string", + "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.", + "minLength": 1, + "maxLength": 2000 + }, + "properties": { + "$ref": "#/definitions/BackendProperties", + "description": "Backend Properties contract" + }, + "credentials": { + "$ref": "#/definitions/BackendCredentialsContract", + "description": "Backend Credentials Contract Properties" + }, + "proxy": { + "$ref": "#/definitions/BackendProxyContract", + "description": "Backend Proxy Contract Properties" + }, + "tls": { + "$ref": "#/definitions/BackendTlsProperties", + "description": "Backend TLS Properties" + } + }, + "description": "Backend entity base Parameter set." + }, + "BackendCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendContract" + }, + "description": "Backend values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Backend list representation." + }, + "BackendContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendContractProperties", + "description": "Backend entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Backend details." + }, + "BackendContractProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "required": [ + "url", + "protocol" + ], + "description": "Parameters supplied to the Create Backend operation." + }, + "BackendCredentialsContract": { + "properties": { + "certificate": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Client Certificate Thumbprint." + }, + "query": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Query Parameter description." + }, + "header": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Header Parameter description." + }, + "authorization": { + "description": "Authorization header authentication", + "$ref": "#/definitions/BackendAuthorizationHeaderCredentials" + } + }, + "description": "Details of the Credentials used to connect to Backend." + }, + "BackendProperties": { + "properties": { + "serviceFabricCluster": { + "$ref": "#/definitions/BackendServiceFabricClusterProperties", + "description": "Backend Service Fabric Cluster Properties" + } + }, + "description": "Properties specific to the Backend Type." + }, + "BackendProxyContract": { + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx", + "description": "Backend entity uses these details to connect to a WebProxy." + }, + "properties": { + "url": { + "type": "string", + "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.", + "minLength": 1, + "maxLength": 2000 + }, + "username": { + "type": "string", + "description": "Username to connect to the WebProxy server" + }, + "password": { + "type": "string", + "description": "Password to connect to the WebProxy Server" + } + }, + "required": [ + "url" + ], + "description": "Details of the Backend WebProxy Server to use in the Request to Backend." + }, + "BackendReconnectContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendReconnectProperties", + "description": "Reconnect request properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Reconnect request parameters." + }, + "BackendReconnectProperties": { + "properties": { + "after": { + "type": "string", + "format": "duration", + "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M." + } + }, + "description": "Properties to control reconnect requests." + }, + "BackendServiceFabricClusterProperties": { + "properties": { + "clientCertificatethumbprint": { + "description": "The client certificate thumbprint for the management endpoint.", + "type": "string" + }, + "maxPartitionResolutionRetries": { + "description": "Maximum number of retries while attempting resolve the partition.", + "format": "int32", + "type": "integer" + }, + "managementEndpoints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The cluster management endpoint." + }, + "serverCertificateThumbprints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Thumbprints of certificates cluster management service uses for tls communication" + }, + "serverX509Names": { + "type": "array", + "items": { + "$ref": "#/definitions/X509CertificateName" + }, + "description": "Server X509 Certificate Names Collection" + } + }, + "required": [ + "managementEndpoints", + "clientCertificatethumbprint" + ], + "description": "Properties of the Service Fabric Type Backend." + }, + "BackendTlsProperties": { + "properties": { + "validateCertificateChain": { + "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + }, + "validateCertificateName": { + "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + } + }, + "description": "Properties controlling TLS Certificate Validation." + }, + "BackendUpdateParameterProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "description": "Parameters supplied to the Update Backend operation." + }, + "BackendUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendUpdateParameterProperties", + "description": "Backend entity update contract properties." + } + }, + "description": "Backend update parameters." + }, + "BearerTokenSendingMethodsContract": { + "type": "string", + "description": "Form of an authorization grant, which the client uses to request the access token.", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "bearerTokenSendingMethods", + "values": [ + { + "value": "authorizationHeader", + "description": "Access token will be transmitted in the Authorization header using Bearer schema" + }, + { + "value": "query", + "description": "Access token will be transmitted as query parameters." + } + ] + } + }, + "BodyDiagnosticSettings": { + "properties": { + "bytes": { + "type": "integer", + "format": "int32", + "maximum": 8192, + "description": "Number of request body bytes to log." + } + }, + "description": "Body logging settings." + }, + "CacheCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CacheContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Caches list representation." + }, + "CacheContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheContractProperties", + "description": "Cache properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Cache details." + }, + "CacheContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "required": [ + "connectionString" + ], + "description": "Properties of the Cache contract." + }, + "CacheUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheUpdateProperties", + "description": "Cache update properties details." + } + }, + "description": "Cache update details." + }, + "CacheUpdateProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "description": "Parameters supplied to the Update Cache operation." + }, + "CertificateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Certificates list representation." + }, + "CertificateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateContractProperties", + "description": "Certificate properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Certificate details." + }, + "CertificateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject attribute of the certificate." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "subject", + "thumbprint", + "expirationDate" + ], + "description": "Properties of the Certificate contract." + }, + "CertificateCreateOrUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateCreateOrUpdateProperties", + "description": "Certificate create or update properties details." + } + }, + "description": "Certificate create or update details." + }, + "CertificateCreateOrUpdateProperties": { + "properties": { + "data": { + "type": "string", + "description": "Base 64 encoded certificate using the application/x-pkcs12 representation." + }, + "password": { + "type": "string", + "description": "Password for the Certificate" + } + }, + "required": [ + "data", + "password" + ], + "description": "Parameters supplied to the CreateOrUpdate certificate operation." + }, + "DeployConfigurationParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeployConfigurationParameterProperties", + "description": "Deploy Configuration Parameter contract properties." + } + }, + "description": "Deploy Tenant Configuration Contract." + }, + "DeployConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch from which the configuration is to be deployed to the configuration database." + }, + "force": { + "type": "boolean", + "description": "The value enforcing deleting subscriptions to products that are deleted in this update." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Deploy Configuration operation." + }, + "DiagnosticCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Diagnostic list representation." + }, + "DiagnosticContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiagnosticContractProperties", + "description": "Diagnostic entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Diagnostic details." + }, + "DiagnosticContractProperties": { + "properties": { + "alwaysLog": { + "type": "string", + "enum": [ + "allErrors" + ], + "x-ms-enum": { + "name": "AlwaysLog", + "modelAsString": true, + "values": [ + { + "value": "allErrors", + "description": "Always log all erroneous request regardless of sampling settings." + } + ] + }, + "description": "Specifies for what type of messages sampling settings should not apply." + }, + "loggerId": { + "type": "string", + "description": "Resource Id of a target logger." + }, + "sampling": { + "$ref": "#/definitions/SamplingSettings", + "description": "Sampling settings for Diagnostic." + }, + "frontend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "backend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Backend" + }, + "logClientIp": { + "type": "boolean", + "description": "Log the ClientIP. Default is false." + }, + "httpCorrelationProtocol": { + "type": "string", + "enum": [ + "None", + "Legacy", + "W3C" + ], + "x-ms-enum": { + "name": "HttpCorrelationProtocol", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Do not read and inject correlation headers." + }, + { + "value": "Legacy", + "description": "Inject Request-Id and Request-Context headers with request correlation data. See https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md." + }, + { + "value": "W3C", + "description": "Inject Trace Context headers. See https://w3c.github.io/trace-context." + } + ] + }, + "description": "Sets correlation protocol to use for Application Insights diagnostics." + }, + "verbosity": { + "type": "string", + "enum": [ + "verbose", + "information", + "error" + ], + "x-ms-enum": { + "name": "Verbosity", + "modelAsString": true, + "values": [ + { + "value": "verbose", + "description": "All the traces emitted by trace policies will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "information", + "description": "Traces with 'severity' set to 'information' and 'error' will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "error", + "description": "Only traces with 'severity' set to 'error' will be sent to the logger attached to this diagnostic instance." + } + ] + }, + "description": "The verbosity level applied to traces emitted by trace policies." + } + }, + "required": [ + "loggerId" + ], + "description": "Diagnostic Entity Properties" + }, + "EmailTemplateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged email template list representation." + }, + "EmailTemplateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateContractProperties", + "description": "Email Template entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Email Template details." + }, + "EmailTemplateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "isDefault": { + "type": "boolean", + "description": "Whether the template is the default template provided by Api Management or has been edited.", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "required": [ + "body", + "subject" + ], + "description": "Email Template Contract properties." + }, + "EmailTemplateParametersContractProperties": { + "properties": { + "name": { + "type": "string", + "description": "Template parameter name.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "title": { + "type": "string", + "description": "Template parameter title.", + "minLength": 1, + "maxLength": 4096 + }, + "description": { + "type": "string", + "description": "Template parameter description.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + } + }, + "description": "Email Template Parameter contract." + }, + "EmailTemplateUpdateParameterProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "description": "Email Template Update Contract properties." + }, + "EmailTemplateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateUpdateParameterProperties", + "description": "Email Template Update contract properties." + } + }, + "description": "Email Template update Parameters." + }, + "GenerateSsoUrlResult": { + "properties": { + "value": { + "type": "string", + "description": "Redirect Url containing the SSO URL value." + } + }, + "description": "Generate SSO Url operations response details." + }, + "GroupCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GroupContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Group list representation." + }, + "GroupContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupContractProperties", + "description": "Group entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "GroupContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description. Can contain HTML formatting tags.", + "maxLength": 1000 + }, + "builtIn": { + "readOnly": true, + "type": "boolean", + "description": "true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Group contract Properties." + }, + "GroupCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupCreateParametersProperties", + "description": "Properties supplied to Create Group operation." + } + }, + "description": "Parameters supplied to the Create Group operation." + }, + "GroupCreateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Parameters supplied to the Create Group operation." + }, + "GroupUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupUpdateParametersProperties", + "description": "Group entity update contract properties." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "GroupUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "HttpMessageDiagnostic": { + "properties": { + "headers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of HTTP Headers to log." + }, + "body": { + "$ref": "#/definitions/BodyDiagnosticSettings", + "description": "Body logging settings." + } + }, + "description": "Http message diagnostic settings." + }, + "IdentityProviderBaseParameters": { + "properties": { + "type": { + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier." + }, + "signinTenant": { + "type": "string", + "description": "The TenantId to use instead of Common when logging into Active Directory" + }, + "allowedTenants": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Allowed Tenants when configuring Azure Active Directory login." + }, + "authority": { + "type": "string", + "description": "OpenID Connect discovery endpoint hostname for AAD or AAD B2C." + }, + "signupPolicyName": { + "type": "string", + "description": "Signup Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "signinPolicyName": { + "type": "string", + "description": "Signin Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "profileEditingPolicyName": { + "type": "string", + "description": "Profile Editing Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "passwordResetPolicyName": { + "type": "string", + "description": "Password Reset Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + } + }, + "description": "Identity Provider Base Parameter Properties." + }, + "IdentityProviderCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderCreateContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderCreateContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId", + "clientSecret" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IdentityProviderContract" + }, + "description": "Identity Provider configuration values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of all the Identity Providers configured on the service instance." + }, + "IdentityProviderUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderUpdateProperties", + "description": "Identity Provider update properties." + } + }, + "description": "Parameters supplied to update Identity Provider" + }, + "IdentityProviderUpdateProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "description": "Parameters supplied to the Update Identity Provider operation." + }, + "IssueAttachmentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueAttachmentContract" + }, + "description": "Issue Attachment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Attachment list representation." + }, + "IssueAttachmentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueAttachmentContractProperties", + "description": "Properties of the Issue Attachment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Attachment Contract details." + }, + "IssueAttachmentContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Filename by which the binary data will be saved." + }, + "contentFormat": { + "type": "string", + "description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property." + }, + "content": { + "type": "string", + "description": "An HTTP link or Base64-encoded binary data." + } + }, + "required": [ + "title", + "contentFormat", + "content" + ], + "description": "Issue Attachment contract Properties." + }, + "IssueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueContract" + }, + "description": "Issue values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue list representation." + }, + "IssueCommentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueCommentContract" + }, + "description": "Issue Comment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Comment list representation." + }, + "IssueCommentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueCommentContractProperties", + "description": "Properties of the Issue Comment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Comment Contract details." + }, + "IssueCommentContractProperties": { + "properties": { + "text": { + "type": "string", + "description": "Comment text." + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the comment was created." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user who left the comment." + } + }, + "required": [ + "text", + "userId" + ], + "description": "Issue Comment contract Properties." + }, + "IssueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueContractProperties", + "description": "Properties of the Issue." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Contract details." + }, + "IssueContractBaseProperties": { + "properties": { + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the issue was created." + }, + "state": { + "type": "string", + "description": "Status of the issue.", + "enum": [ + "proposed", + "open", + "removed", + "resolved", + "closed" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true, + "values": [ + { + "value": "proposed", + "description": "The issue is proposed." + }, + { + "value": "open", + "description": "The issue is opened." + }, + { + "value": "removed", + "description": "The issue was removed." + }, + { + "value": "resolved", + "description": "The issue is now resolved." + }, + { + "value": "closed", + "description": "The issue was closed." + } + ] + } + }, + "apiId": { + "type": "string", + "description": "A resource identifier for the API the issue was created for." + } + }, + "description": "Issue contract Base Properties." + }, + "IssueContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "required": [ + "title", + "description", + "userId" + ], + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Properties." + }, + "IssueUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueUpdateContractProperties", + "description": "Issue entity Update contract properties." + } + }, + "description": "Issue update Parameters." + }, + "IssueUpdateContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Update Properties." + }, + "LoggerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoggerContract" + }, + "description": "Logger values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Logger list representation." + }, + "LoggerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerContractProperties", + "description": "Logger entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Logger details." + }, + "LoggerContractProperties": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description.", + "maxLength": 256 + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The name and SendRule connection string of the event hub for azureEventHub logger.\nInstrumentation key for applicationInsights logger.", + "example": { + "name": "apim", + "connectionString": "Endpoint=sb://contoso-ns.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=..." + } + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + }, + "resourceId": { + "type": "string", + "description": "Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource)." + } + }, + "required": [ + "loggerType", + "credentials" + ], + "description": "The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure Event Hubs." + }, + "LoggerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerUpdateParameters", + "description": "Logger entity update contract properties." + } + }, + "description": "Logger update contract." + }, + "LoggerUpdateParameters": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description." + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Logger credentials." + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + } + }, + "description": "Parameters supplied to the Update Logger operation." + }, + "NotificationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Notification list representation." + }, + "NotificationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NotificationContractProperties", + "description": "Notification entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Notification details." + }, + "NotificationContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Title of the Notification.", + "minLength": 1, + "maxLength": 1000 + }, + "description": { + "type": "string", + "description": "Description of the Notification." + }, + "recipients": { + "$ref": "#/definitions/RecipientsContractProperties", + "description": "Recipient Parameter values." + } + }, + "required": [ + "title" + ], + "description": "Notification Contract properties." + }, + "OAuth2AuthenticationSettingsContract": { + "properties": { + "authorizationServerId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "scope": { + "type": "string", + "description": "operations scope." + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdAuthenticationSettingsContract": { + "properties": { + "openidProviderId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "bearerTokenSendingMethods": { + "description": "How to send token to the server.", + "type": "array", + "items": { + "$ref": "#/definitions/BearerTokenSendingMethodsContract" + } + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdConnectProviderCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OpenidConnectProviderContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OpenIdProviders list representation." + }, + "OpenidConnectProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderContractProperties", + "description": "OpenId Connect Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "OpenId Connect Provider details." + }, + "OpenidConnectProviderContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "required": [ + "displayName", + "metadataEndpoint", + "clientId" + ], + "description": "OpenID Connect Providers Contract." + }, + "OpenidConnectProviderUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderUpdateContractProperties", + "description": "OpenId Connect Provider Update contract properties." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OpenidConnectProviderUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Operation list representation." + }, + "OperationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationContractProperties", + "description": "Properties of the Operation Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Operation details." + }, + "OperationContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "required": [ + "displayName", + "method", + "urlTemplate" + ], + "description": "Operation Contract Properties" + }, + "OperationEntityBaseContract": { + "properties": { + "templateParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of URL template parameters." + }, + "description": { + "type": "string", + "description": "Description of the operation. May include HTML formatting tags.", + "maxLength": 1000 + }, + "request": { + "$ref": "#/definitions/RequestContract", + "description": "An entity containing request details." + }, + "responses": { + "type": "array", + "items": { + "$ref": "#/definitions/ResponseContract" + }, + "description": "Array of Operation responses." + }, + "policies": { + "type": "string", + "description": "Operation Policies" + } + }, + "description": "Api Operation Entity Base Contract details." + }, + "OperationResultContract": { + "properties": { + "id": { + "type": "string", + "description": "Operation result identifier." + }, + "status": { + "type": "string", + "description": "Status of an async operation.", + "enum": [ + "Started", + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "AsyncOperationStatus", + "modelAsString": false + } + }, + "started": { + "type": "string", + "format": "date-time", + "description": "Start time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "Last update time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "resultInfo": { + "type": "string", + "description": "Optional result info." + }, + "error": { + "$ref": "./apimanagement.json#/definitions/ErrorResponseBody", + "description": "Error Body Contract" + }, + "actionLog": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationResultLogItemContract" + }, + "readOnly": true, + "description": "This property if only provided as part of the TenantConfiguration_Validate operation. It contains the log the entities which will be updated/created/deleted as part of the TenantConfiguration_Deploy operation." + } + }, + "description": "Operation Result." + }, + "OperationResultLogItemContract": { + "properties": { + "objectType": { + "type": "string", + "description": "The type of entity contract." + }, + "action": { + "type": "string", + "description": "Action like create/update/delete." + }, + "objectKey": { + "type": "string", + "description": "Identifier of the entity being created/updated/deleted." + } + }, + "description": "Log of the entity being created, updated or deleted." + }, + "OperationTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the operation in form /operations/{operationId}." + }, + "name": { + "type": "string", + "description": "Operation name.", + "readOnly": true + }, + "apiName": { + "type": "string", + "description": "Api Name.", + "readOnly": true + }, + "apiRevision": { + "type": "string", + "description": "Api Revision.", + "readOnly": true + }, + "apiVersion": { + "type": "string", + "description": "Api Version.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Operation Description.", + "readOnly": true + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + }, + "readOnly": true + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "readOnly": true + } + }, + "description": "Operation Entity contract Properties." + }, + "OperationUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationUpdateContractProperties", + "description": "Properties of the API Operation entity that can be updated." + } + }, + "description": "Api Operation Update Contract details." + }, + "OperationUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "description": "Operation Update Contract Properties." + }, + "ParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "type": { + "type": "string", + "description": "Parameter type." + }, + "defaultValue": { + "type": "string", + "description": "Default parameter value." + }, + "required": { + "type": "boolean", + "description": "Specifies whether parameter is required or not." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Parameter values." + } + }, + "required": [ + "name", + "type" + ], + "description": "Operation parameters details." + }, + "PipelineDiagnosticSettings": { + "properties": { + "request": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for request." + }, + "response": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for response." + } + }, + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "PolicyCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyContract" + }, + "description": "Policy Contract value." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "The response of the list policy operation." + }, + "PolicyContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyContractProperties", + "description": "Properties of the Policy." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy Contract details." + }, + "PolicyContractProperties": { + "properties": { + "value": { + "type": "string", + "description": "Contents of the Policy as defined by the format." + }, + "format": { + "type": "string", + "description": "Format of the policyContent.", + "enum": [ + "xml", + "xml-link", + "rawxml", + "rawxml-link" + ], + "x-ms-enum": { + "name": "PolicyContentFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "xml-link", + "description": "The policy XML document is hosted on a http endpoint accessible from the API Management service." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + }, + { + "value": "rawxml-link", + "description": "The policy document is not Xml encoded and is hosted on a http endpoint accessible from the API Management service." + } + ] + }, + "default": "xml" + } + }, + "required": [ + "value" + ], + "description": "Policy contract Properties." + }, + "PolicyDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyDescriptionContractProperties", + "description": "Policy description contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy description details." + }, + "PolicyDescriptionContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Policy description.", + "readOnly": true + }, + "scope": { + "type": "integer", + "description": "Binary OR value of the Snippet scope.", + "readOnly": true + } + }, + "description": "Policy description properties." + }, + "PolicyDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDescriptionContract" + }, + "description": "Descriptions of APIM policies." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number." + } + }, + "description": "Descriptions of APIM policies." + }, + "PortalDelegationSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalDelegationSettingsProperties", + "description": "Delegation settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Delegation settings for a developer portal." + }, + "PortalDelegationSettingsProperties": { + "properties": { + "url": { + "type": "string", + "description": "A delegation Url." + }, + "validationKey": { + "x-ms-secret": true, + "type": "string", + "description": "A base64-encoded validation key to validate, that a request is coming from Azure API Management." + }, + "subscriptions": { + "$ref": "#/definitions/SubscriptionsDelegationSettingsProperties", + "description": "Subscriptions delegation settings." + }, + "userRegistration": { + "$ref": "#/definitions/RegistrationDelegationSettingsProperties", + "description": "User registration delegation settings." + } + }, + "description": "Delegation settings contract properties." + }, + "PortalSigninSettingProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Redirect Anonymous users to the Sign-In page." + } + }, + "description": "Sign-in settings contract properties." + }, + "PortalSigninSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSigninSettingProperties", + "description": "Sign-in settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-In settings for the Developer Portal." + }, + "PortalSignupSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSignupSettingsProperties", + "description": "Sign-up settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-Up settings for a developer portal." + }, + "PortalSignupSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Allow users to sign up on a developer portal." + }, + "termsOfService": { + "type": "object", + "$ref": "#/definitions/TermsOfServiceProperties", + "description": "Terms of service contract properties." + } + }, + "description": "Sign-up settings contract properties." + }, + "ProductCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProductContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Products list representation." + }, + "ProductContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductContractProperties", + "description": "Product entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Product details." + }, + "ProductContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "Product profile." + }, + "ProductEntityBaseParameters": { + "properties": { + "description": { + "type": "string", + "description": "Product description. May include HTML formatting tags.", + "minLength": 1, + "maxLength": 1000 + }, + "terms": { + "type": "string", + "description": "Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process." + }, + "subscriptionRequired": { + "description": "Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as \"protected\" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as \"open\" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true.", + "type": "boolean" + }, + "approvalRequired": { + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "type": "boolean" + }, + "subscriptionsLimit": { + "type": "integer", + "format": "int32", + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + }, + "state": { + "type": "string", + "description": "whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.", + "enum": [ + "notPublished", + "published" + ], + "x-ms-enum": { + "name": "ProductState", + "modelAsString": false + } + } + }, + "description": "Product Entity Base Parameters" + }, + "ProductTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the product in the form of /products/{productId}" + }, + "name": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "name" + ], + "description": "Product profile." + }, + "ProductUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductUpdateProperties", + "description": "Product entity Update contract properties." + } + }, + "description": "Product Update parameters." + }, + "ProductUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "maxLength": 300, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update Product operation." + }, + "NamedValueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NamedValueContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged NamedValue list representation." + }, + "NamedValueCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueCreateContractProperties", + "description": "NamedValue entity contract properties for PUT operation." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueCreateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName", + "value" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueContractProperties", + "description": "NamedValue entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueEntityBaseParameters": { + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "Optional tags that when provided can be used to filter the NamedValue list." + }, + "secret": { + "description": "Determines whether the value is a secret and should be encrypted or not. Default value is false.", + "type": "boolean" + } + }, + "description": "NamedValue Entity Base Parameters set." + }, + "NamedValueUpdateParameterProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "description": "NamedValue Contract properties." + }, + "NamedValueUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueUpdateParameterProperties", + "description": "NamedValue entity Update contract properties." + } + }, + "description": "NamedValue update Parameters." + }, + "QuotaCounterCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QuotaCounterContract" + }, + "description": "Quota counter values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Quota Counter list representation." + }, + "QuotaCounterContract": { + "properties": { + "counterKey": { + "type": "string", + "description": "The Key value of the Counter. Must not be empty.", + "minLength": 1 + }, + "periodKey": { + "type": "string", + "description": "Identifier of the Period for which the counter was collected. Must not be empty.", + "minLength": 1 + }, + "periodStartTime": { + "type": "string", + "format": "date-time", + "description": "The date of the start of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "periodEndTime": { + "type": "string", + "format": "date-time", + "description": "The date of the end of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "value": { + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota Value Properties" + } + }, + "required": [ + "counterKey", + "periodKey", + "periodStartTime", + "periodEndTime" + ], + "description": "Quota counter details." + }, + "QuotaCounterValueContract": { + "properties": { + "value": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota counter Value Properties." + } + }, + "description": "Quota counter value details." + }, + "QuotaCounterValueContractProperties": { + "properties": { + "callsCount": { + "type": "integer", + "format": "int32", + "description": "Number of times Counter was called." + }, + "kbTransferred": { + "type": "number", + "format": "double", + "description": "Data Transferred in KiloBytes." + } + }, + "description": "Quota counter value details." + }, + "RecipientEmailCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientEmailContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientEmailContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientEmailContractProperties", + "description": "Recipient Email contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient Email details." + }, + "RecipientEmailContractProperties": { + "properties": { + "email": { + "type": "string", + "description": "User Email subscribed to notification." + } + }, + "description": "Recipient Email Contract Properties." + }, + "RecipientsContractProperties": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Emails subscribed for the notification." + }, + "users": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Users subscribed for the notification." + } + }, + "description": "Notification Parameter contract." + }, + "RecipientUserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientUserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientUserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientUsersContractProperties", + "description": "Recipient User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient User details." + }, + "RecipientUsersContractProperties": { + "properties": { + "userId": { + "type": "string", + "description": "API Management UserId subscribed to notification." + } + }, + "description": "Recipient User Contract Properties." + }, + "RegistrationDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for user registration." + } + }, + "description": "User registration delegation settings properties." + }, + "ReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Report records list representation." + }, + "ReportRecordContract": { + "properties": { + "name": { + "type": "string", + "description": "Name depending on report endpoint specifies product, API, operation or developer name." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Start of aggregation period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "interval": { + "type": "string", + "description": "Length of aggregation period. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations)." + }, + "country": { + "type": "string", + "description": "Country to which this record data is related." + }, + "region": { + "type": "string", + "description": "Country region to which this record data is related." + }, + "zip": { + "type": "string", + "description": "Zip code to which this record data is related." + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "apiRegion": { + "type": "string", + "description": "API region identifier." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "callCountSuccess": { + "type": "integer", + "format": "int32", + "description": "Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect" + }, + "callCountBlocked": { + "type": "integer", + "format": "int32", + "description": "Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests" + }, + "callCountFailed": { + "type": "integer", + "format": "int32", + "description": "Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600" + }, + "callCountOther": { + "type": "integer", + "format": "int32", + "description": "Number of other calls." + }, + "callCountTotal": { + "type": "integer", + "format": "int32", + "description": "Total number of calls." + }, + "bandwidth": { + "type": "integer", + "format": "int64", + "description": "Bandwidth consumed." + }, + "cacheHitCount": { + "type": "integer", + "format": "int32", + "description": "Number of times when content was served from cache policy." + }, + "cacheMissCount": { + "type": "integer", + "format": "int32", + "description": "Number of times content was fetched from backend." + }, + "apiTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request." + }, + "apiTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request." + }, + "apiTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request." + }, + "serviceTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request on backend." + }, + "serviceTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request on backend." + }, + "serviceTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request on backend." + } + }, + "description": "Report data." + }, + "RepresentationContract": { + "properties": { + "contentType": { + "type": "string", + "description": "Specifies a registered or custom content type for this representation, e.g. application/xml." + }, + "sample": { + "type": "string", + "description": "An example of the representation." + }, + "schemaId": { + "type": "string", + "description": "Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "typeName": { + "type": "string", + "description": "Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "formParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.." + } + }, + "required": [ + "contentType" + ], + "description": "Operation request/response representation details." + }, + "RequestContract": { + "properties": { + "description": { + "type": "string", + "description": "Operation request description." + }, + "queryParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request query parameters." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request headers." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation request representations." + } + }, + "description": "Operation request details." + }, + "RequestReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + } + }, + "description": "Paged Report records list representation." + }, + "RequestReportRecordContract": { + "properties": { + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "method": { + "type": "string", + "description": "The HTTP method associated with this request.." + }, + "url": { + "type": "string", + "description": "The full URL associated with this request." + }, + "ipAddress": { + "type": "string", + "description": "The client IP address associated with this request." + }, + "backendResponseCode": { + "type": "string", + "description": "The HTTP status code received by the gateway as a result of forwarding this request to the backend." + }, + "responseCode": { + "type": "integer", + "format": "int32", + "description": "The HTTP status code returned by the gateway." + }, + "responseSize": { + "type": "integer", + "format": "int32", + "description": "The size of the response returned by the gateway." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when this request was received by the gateway in ISO 8601 format." + }, + "cache": { + "type": "string", + "description": "Specifies if response cache was involved in generating the response. If the value is none, the cache was not used. If the value is hit, cached response was returned. If the value is miss, the cache was used but lookup resulted in a miss and request was fulfilled by the backend." + }, + "apiTime": { + "type": "number", + "format": "double", + "description": "The total time it took to process this request." + }, + "serviceTime": { + "type": "number", + "format": "double", + "description": "he time it took to forward this request to the backend and get the response back." + }, + "apiRegion": { + "type": "string", + "description": "Azure region where the gateway that processed this request is located." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "requestId": { + "type": "string", + "description": "Request Identifier." + }, + "requestSize": { + "type": "integer", + "format": "int32", + "description": "The size of this request.." + } + }, + "description": "Request Report data." + }, + "ResponseContract": { + "properties": { + "statusCode": { + "type": "integer", + "format": "int32", + "description": "Operation response HTTP status code." + }, + "description": { + "type": "string", + "description": "Operation response description." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation response representations." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation response headers." + } + }, + "required": [ + "statusCode" + ], + "description": "Operation response details." + }, + "SamplingSettings": { + "properties": { + "samplingType": { + "type": "string", + "description": "Sampling type.", + "enum": [ + "fixed" + ], + "x-ms-enum": { + "name": "SamplingType", + "modelAsString": true, + "values": [ + { + "value": "fixed", + "description": "Fixed-rate sampling." + } + ] + } + }, + "percentage": { + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100, + "description": "Rate of sampling for fixed-rate sampling." + } + }, + "description": "Sampling settings for Diagnostic." + }, + "SaveConfigurationParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SaveConfigurationParameterProperties", + "description": "Properties of the Save Configuration Parameters." + } + }, + "description": "Save Tenant Configuration Contract details." + }, + "SaveConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch in which to commit the current configuration snapshot." + }, + "force": { + "type": "boolean", + "description": "The value if true, the current configuration database is committed to the Git repository, even if the Git repository has newer changes that would be overwritten." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Save Tenant Configuration operation." + }, + "SchemaCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SchemaContract" + }, + "description": "Api Schema Contract value.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "The response of the list schema operation." + }, + "SchemaContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaContractProperties", + "description": "Properties of the Schema." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Schema Contract details." + }, + "SchemaContractProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "Must be a valid a media type used in a Content-Type header as defined in the RFC 2616. Media type of the schema document (e.g. application/json, application/xml).
- `Swagger` Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
- `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`." + }, + "document": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaDocumentProperties", + "description": "Create or update Properties of the Schema Document." + } + }, + "required": [ + "contentType" + ], + "description": "API Schema create or update contract Properties." + }, + "SchemaDocumentProperties": { + "properties": { + "value": { + "type": "string", + "description": "Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI." + }, + "definitions": { + "type": "object", + "description": "Types definitions. Used for Swagger/OpenAPI schemas only, null otherwise." + } + }, + "description": "Schema Document Properties." + }, + "SubscriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Subscriptions list representation." + }, + "SubscriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionContractProperties", + "description": "Subscription contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Subscription details." + }, + "SubscriptionContractProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{userId} where {userId} is a user identifier." + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "The name of the subscription, or null if the subscription has no name.", + "minLength": 0, + "maxLength": 100 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Subscription creation date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n", + "readOnly": true + }, + "startDate": { + "type": "string", + "format": "date-time", + "description": "Subscription activation date. The setting is for audit purposes only and the subscription is not automatically activated. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "endDate": { + "type": "string", + "format": "date-time", + "description": "Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is not automatically cancelled. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "notificationDate": { + "type": "string", + "format": "date-time", + "description": "Upcoming subscription expiration notification date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "primaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "stateComment": { + "type": "string", + "description": "Optional subscription comment added by an administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing is enabled", + "x-apim-code-nillable": true + } + }, + "required": [ + "scope", + "state" + ], + "description": "Subscription details." + }, + "SubscriptionCreateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User (user id path) for whom subscription is being created in form /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "Subscription name.", + "minLength": 1, + "maxLength": 100 + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "required": [ + "scope", + "displayName" + ], + "description": "Parameters supplied to the Create subscription operation." + }, + "SubscriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionCreateParameterProperties", + "description": "Subscription contract properties." + } + }, + "description": "Subscription create details." + }, + "SubscriptionKeyParameterNamesContract": { + "properties": { + "header": { + "type": "string", + "description": "Subscription key header name." + }, + "query": { + "type": "string", + "description": "Subscription key query string parameter name." + } + }, + "description": "Subscription key parameter names details.", + "example": { + "subscriptionKeyParameterNames": { + "query": "customQueryParameterName", + "header": "customHeaderParameterName" + } + } + }, + "SubscriptionsDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for subscriptions." + } + }, + "description": "Subscriptions delegation settings properties." + }, + "SubscriptionUpdateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User identifier path: /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "displayName": { + "type": "string", + "description": "Subscription name." + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "stateComment": { + "type": "string", + "description": "Comments describing subscription state change by the administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "description": "Parameters supplied to the Update subscription operation." + }, + "SubscriptionUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUpdateParameterProperties", + "description": "Subscription Update contract properties." + } + }, + "description": "Subscription update details." + }, + "TagCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Tag entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Tag Contract details." + }, + "TagContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "required": [ + "displayName" + ], + "description": "Tag contract Properties." + }, + "TagCreateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Properties supplied to Create Tag operation." + } + }, + "description": "Parameters supplied to Create/Update Tag operations." + }, + "TagDescriptionBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the Tag." + }, + "externalDocsUrl": { + "type": "string", + "description": "Absolute URL of external resources describing the tag.", + "maxLength": 2000 + }, + "externalDocsDescription": { + "type": "string", + "description": "Description of the external resources describing the tag." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagDescriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged TagDescription list representation." + }, + "TagDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionContractProperties", + "description": "TagDescription entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "TagDescriptionContractProperties": { + "properties": { + "tagId": { + "type": "string", + "description": "Identifier of the tag in the form of /tags/{tagId}" + }, + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TagDescriptionBaseProperties" + } + ], + "description": "TagDescription contract Properties." + }, + "TagDescriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionBaseProperties", + "description": "Properties supplied to Create TagDescription operation." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagResourceContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagResourceContract": { + "properties": { + "tag": { + "$ref": "#/definitions/TagTagResourceContractProperties", + "description": "Tag associated with the resource." + }, + "api": { + "$ref": "#/definitions/ApiTagResourceContractProperties", + "description": "Api associated with the tag." + }, + "operation": { + "$ref": "#/definitions/OperationTagResourceContractProperties", + "description": "Operation associated with the tag." + }, + "product": { + "$ref": "#/definitions/ProductTagResourceContractProperties", + "description": "Product associated with the tag." + } + }, + "required": [ + "tag" + ], + "description": "TagResource contract properties." + }, + "TagTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Tag identifier" + }, + "name": { + "type": "string", + "description": "Tag Name", + "minLength": 1, + "maxLength": 160 + } + }, + "description": "Contract defining the Tag property in the Tag Resource Contract" + }, + "TenantConfigurationSyncStateContract": { + "properties": { + "branch": { + "type": "string", + "description": "The name of Git branch." + }, + "commitId": { + "type": "string", + "description": "The latest commit Id." + }, + "isExport": { + "type": "boolean", + "description": "value indicating if last sync was save (true) or deploy (false) operation." + }, + "isSynced": { + "type": "boolean", + "description": "value indicating if last synchronization was later than the configuration change." + }, + "isGitEnabled": { + "type": "boolean", + "description": "value indicating whether Git configuration access is enabled." + }, + "syncDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest synchronization. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "configurationChangeDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest configuration change. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "description": "Tenant Configuration Synchronization State." + }, + "TermsOfServiceProperties": { + "properties": { + "text": { + "type": "string", + "description": "A terms of service text." + }, + "enabled": { + "type": "boolean", + "description": "Display terms of service during a sign-up process." + }, + "consentRequired": { + "type": "boolean", + "description": "Ask user for consent to the terms of service." + } + }, + "description": "Terms of service contract properties." + }, + "TokenBodyParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "body parameter name." + }, + "value": { + "type": "string", + "description": "body parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "OAuth acquire token request body parameter (www-url-form-encoded)." + }, + "UserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Users list representation." + }, + "UserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserContractProperties", + "description": "User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "User details." + }, + "UserContractProperties": { + "properties": { + "firstName": { + "type": "string", + "description": "First name." + }, + "lastName": { + "type": "string", + "description": "Last name." + }, + "email": { + "type": "string", + "description": "Email address." + }, + "registrationDate": { + "type": "string", + "format": "date-time", + "description": "Date of user registration. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "groups": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./definitions.json#/definitions/GroupContractProperties" + }, + "description": "Collection of groups user is part of." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "User profile." + }, + "UserCreateParameterProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + }, + "password": { + "type": "string", + "description": "User Password. If no value is provided, a default password is generated." + }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, + "confirmation": { + "type": "string", + "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", + "enum": [ + "signup", + "invite" + ], + "x-ms-enum": { + "name": "Confirmation", + "modelAsString": true, + "values": [ + { + "value": "signup", + "description": "Send an e-mail to the user confirming they have successfully signed up." + }, + { + "value": "invite", + "description": "Send an e-mail inviting the user to sign-up and complete registration." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "required": [ + "email", + "firstName", + "lastName" + ], + "description": "Parameters supplied to the Create User operation." + }, + "UserCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserCreateParameterProperties", + "description": "User entity create contract properties." + } + }, + "description": "User create details." + }, + "UserEntityBaseParameters": { + "properties": { + "state": { + "type": "string", + "description": "Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.", + "enum": [ + "active", + "blocked", + "pending", + "deleted" + ], + "default": "active", + "x-ms-enum": { + "name": "UserState", + "modelAsString": true, + "values": [ + { + "value": "active", + "description": "User state is active." + }, + { + "value": "blocked", + "description": "User is blocked. Blocked users cannot authenticate at developer portal or call API." + }, + { + "value": "pending", + "description": "User account is pending. Requires identity confirmation before it can be made active." + }, + { + "value": "deleted", + "description": "User account is closed. All identities and related entities are removed." + } + ] + } + }, + "note": { + "type": "string", + "description": "Optional note about a user set by the administrator." + }, + "identities": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "Collection of user identities." + } + }, + "description": "User Entity Base Parameters set." + }, + "UserIdentityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "User Identity values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of Users Identity list representation." + }, + "UserIdentityContract": { + "properties": { + "provider": { + "type": "string", + "description": "Identity provider name." + }, + "id": { + "type": "string", + "description": "Identifier value within provider." + } + }, + "description": "User identity details." + }, + "UserTokenParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserTokenParameterProperties", + "description": "User Token Parameter contract properties." + } + }, + "description": "Get User Token parameters." + }, + "UserTokenParameterProperties": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate token for user.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Parameters supplied to the Get User Token operation." + }, + "UserTokenResult": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authorization token for the User." + } + }, + "description": "Get User Token response details." + }, + "UserUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserUpdateParametersProperties", + "description": "User entity update contract properties." + } + }, + "description": "User update parameters." + }, + "UserUpdateParametersProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "password": { + "type": "string", + "description": "User Password." + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update User operation." + }, + "X509CertificateName": { + "properties": { + "name": { + "description": "Common Name of the Certificate.", + "type": "string" + }, + "issuerCertificateThumbprint": { + "description": "Thumbprint for the Issuer of the Certificate.", + "type": "string" + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security" + }, + "description": "Properties of server X509Names." + }, + "ClientSecretContract": { + "properties": { + "clientSecret": { + "type": "string", + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PropertyValueContract": { + "properties": { + "value": { + "type": "string", + "description": "This is secret value of the NamedValue entity." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PortalSettingValidationKeyContract": { + "properties": { + "validationKey": { + "type": "string", + "description": "This is secret value of the validation key in portal settings." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "SubscriptionKeysContract": { + "properties": { + "primaryKey": { + "type": "string", + "description": "Subscription primary key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Subscription secondary key.", + "minLength": 1, + "maxLength": 256 + } + }, + "description": "Subscription keys." + }, + "GatewayCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway list representation." + }, + "GatewayContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayContractProperties", + "description": "Gateway details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway details." + }, + "GatewayContractProperties": { + "properties": { + "locationData": { + "$ref": "#/definitions/ResourceLocationDataContract", + "description": "Gateway location." + }, + "description": { + "type": "string", + "description": "Gateway description", + "maxLength": 1000 + } + }, + "description": "Properties of the Gateway contract." + }, + "ResourceLocationDataContract": { + "properties": { + "name": { + "type": "string", + "description": "A canonical name for the geographic or physical location.", + "maxLength": 256 + }, + "city": { + "type": "string", + "description": "The city or locality where the resource is located.", + "maxLength": 256 + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located.", + "maxLength": 256 + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located.", + "maxLength": 256 + } + }, + "required": [ + "name" + ], + "description": "Resource location data properties." + }, + "GatewayKeysContract": { + "properties": { + "primary": { + "type": "string", + "description": "Primary gateway key." + }, + "secondary": { + "type": "string", + "description": "Secondary gateway key." + } + }, + "description": "Gateway authentication keys." + }, + "GatewayTokenRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate gateway token.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Gateway token request contract properties." + }, + "GatewayTokenContract": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authentication token value for the Gateway." + } + }, + "description": "Gateway access token." + }, + "GatewayKeyRegenerationRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key being regenerated.", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + }, + "required": [ + "keyType" + ], + "description": "Gateway key regeneration request contract properties." + }, + "GatewayHostnameConfigurationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayHostnameConfigurationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway hostname configuration list representation." + }, + "GatewayHostnameConfigurationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayHostnameConfigurationContractProperties", + "description": "Gateway hostname configuration details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway hostname configuration details." + }, + "GatewayHostnameConfigurationContractProperties": { + "properties": { + "hostname": { + "type": "string", + "description": "Hostname value. Supports valid domain name, partial or full wildcard" + }, + "certificateId": { + "type": "string", + "description": "Identifier of Certificate entity that will be used for TLS connection establishment" + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Determines whether gateway requests client certificate" + } + }, + "description": "Gateway hostname configuration details." + }, + "AssociationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "type": "string", + "description": "Provisioning state.", + "enum": [ + "created" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + } + }, + "description": "Association entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Association entity details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json new file mode 100644 index 000000000000..1d9eb86172ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "location": "west us" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "UID": "52ed5986-717b-45b4-b17c-3df8db372cff" + }, + "location": "East Asia", + "etag": "AAAAAAAXX6Y=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2015-09-22T01:50:34.7921566Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "207.46.155.24" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/eastUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json new file mode 100644 index 000000000000..ef84823bcd09 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "after": "PT3S" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json new file mode 100644 index 000000000000..ad1d38c31abe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "applicationInsights", + "description": "adding a new logger", + "credentials": { + "instrumentationKey": "11................a1" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/microsoft.insights/components/airesource" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json new file mode 100644 index 000000000000..c1ad48276acf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "description": "apidescription5200", + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "displayName": "apiname1463", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "https", + "http" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json new file mode 100644 index 000000000000..9f97b4d34826 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api2", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json new file mode 100644 index 000000000000..f5e479f8ed67 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json new file mode 100644 index 000000000000..6a37a846cef9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json new file mode 100644 index 000000000000..47e402ef52e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "parameters": { + "properties": { + "title": "Issue attachment.", + "contentFormat": "image/jpeg", + "content": "IEJhc2U2NA==" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json new file mode 100644 index 000000000000..13ad9e3a84f4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "parameters": { + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json new file mode 100644 index 000000000000..28d0480ecb4b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echoapiv3", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "apiVersion": "v4", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json new file mode 100644 index 000000000000..aa583d1e4a53 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "PetStoreTemplate2", + "operationId": "newoperations", + "parameters": { + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json new file mode 100644 index 000000000000..c3f682a88c54 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "operationId": "5600b57e7e8880006a080001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json new file mode 100644 index 000000000000..540e98b5904a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "operationId": "5931a75ae4bbd512a88c680a", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json new file mode 100644 index 000000000000..ee6f7a0b6f06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json new file mode 100644 index 000000000000..d3ead917d1b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n ", + "format": "rawxml" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json new file mode 100644 index 000000000000..43078347afb2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json new file mode 100644 index 000000000000..8f6b4fd05da2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3", + "parameters": { + "properties": { + "path": "echo", + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json new file mode 100644 index 000000000000..d8e372bb5405 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "parameters": { + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json new file mode 100644 index 000000000000..83c7ca9ac303 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json new file mode 100644 index 000000000000..abce73e357a7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagDescriptionId": "tagId1", + "parameters": { + "properties": { + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsUrl": "http://some.url/additionaldoc", + "externalDocsDescription": "Description of the external docs resource" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json new file mode 100644 index 000000000000..495f08091b3e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "apidocs", + "parameters": { + "properties": { + "format": "swagger-link", + "value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/", + "path": "petstoreapi123", + "serviceUrl": "http://petstore.swagger.wordnik.com/api" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json new file mode 100644 index 000000000000..160488451be1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "openapi-link", + "value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json new file mode 100644 index 000000000000..31d94e580b3a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "swagger-link-json", + "value": "http://petstore.swagger.io/v2/swagger.json", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json new file mode 100644 index 000000000000..59d3323074ae --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "wadl-link-json", + "value": "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl", + "path": "collector" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json new file mode 100644 index 000000000000..bcad907ca8d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "api1", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json new file mode 100644 index 000000000000..706e971aaf2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "displayName": "Swagger Petstore", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json new file mode 100644 index 000000000000..df26fe584663 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer", + "parameters": { + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json new file mode 100644 index 000000000000..101062eb227b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "tls": { + "validateCertificateChain": true, + "validateCertificateName": true + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json new file mode 100644 index 000000000000..b3a993542af8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend", + "parameters": { + "properties": { + "description": "Service Fabric Test App 1", + "protocol": "http", + "url": "fabric:/mytestapp/mytestservice", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json new file mode 100644 index 000000000000..55936485b01b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json new file mode 100644 index 000000000000..90407481dc0f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia", + "parameters": { + "properties": { + "connectionString": "contoso5.redis.cache.windows.net,ssl=true,password=...", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json new file mode 100644 index 000000000000..7d4c3549e2af --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "tempcert", + "parameters": { + "properties": { + "data": "****************Base 64 Encoded Certificate *******************************", + "password": "****Certificate Password******" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json new file mode 100644 index 000000000000..2605ca652178 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json new file mode 100644 index 000000000000..8ddd5cd06dbb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json new file mode 100644 index 000000000000..1ea54ce7637f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "parameters": { + "properties": { + "subject": "Your request for $IssueName was successfully received." + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json new file mode 100644 index 000000000000..cc83e2b4e3c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json new file mode 100644 index 000000000000..29b9573e9333 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "parameters": { + "properties": { + "provisioningState": "created" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..e06f423962b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "parameters": { + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json new file mode 100644 index 000000000000..1a724d31cfe7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json new file mode 100644 index 000000000000..99ac6e2d6b7c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "aadGroup", + "parameters": { + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json new file mode 100644 index 000000000000..3aed4e9e63e3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "userId": "59307d350af58404d8a26300" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json new file mode 100644 index 000000000000..5db8adf402fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "parameters": { + "properties": { + "clientId": "facebookid", + "clientSecret": "facebookapplicationsecret" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json new file mode 100644 index 000000000000..61456995b4b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json @@ -0,0 +1,256 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password", + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXoo=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T08:04:26.9492661Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json new file mode 100644 index 000000000000..19be0feebcc8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json new file mode 100644 index 000000000000..4a367d3b4e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json new file mode 100644 index 000000000000..4faab613a7bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "foobar@live.com" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json new file mode 100644 index 000000000000..e22905720839 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json new file mode 100644 index 000000000000..98050d34ffd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "parameters": { + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3", + "clientSecret": "x" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json new file mode 100644 index 000000000000..76086d34b6f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json new file mode 100644 index 000000000000..925d35d19c91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json new file mode 100644 index 000000000000..30b77c382eff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json new file mode 100644 index 000000000000..a2b80c8400ee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json new file mode 100644 index 000000000000..4b94a9f824c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5702e97e5157a50f48dce801", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json new file mode 100644 index 000000000000..276d5f1dba96 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json new file mode 100644 index 000000000000..4b3802e9e064 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "location": "South Central US", + "tags": { + "Name": "Contoso", + "Test": "User" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3P0=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3T4=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-southcentralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "23.102.171.124" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/c2RrdGVzdGFwaW0xNTkxX0FjdF9jZTkyMmNmOQ==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json new file mode 100644 index 000000000000..fe5899f40fe5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned" + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiE=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiU=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "enableClientCertificate": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json new file mode 100644 index 000000000000..f3bdc427f2fb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "certificates": [ + { + "encodedCertificate": "*******Base64 encoded Certificate******************", + "certificatePassword": "Password", + "storeName": "CertificateAuthority" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Basic", + "capacity": 1 + }, + "location": "Central US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3TM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3UM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "40.113.223.117" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json new file mode 100644 index 000000000000..74ac51a762a4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyQ=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyk=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "tenantId": "XXXXX-86f1-41af-XXXX-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "XXXXX-6e62-4649-9f54-a119fc1ba85e", + "clientId": "5a2c6b8e-0905-XXXX-a772-993c9418137f" + } + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json new file mode 100644 index 000000000000..e8c292d513e2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "apiType": "soap", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json new file mode 100644 index 000000000000..abb37fd5b35a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json new file mode 100644 index 000000000000..1dad61c8a705 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "parameters": { + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json new file mode 100644 index 000000000000..2057e10f1bc1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "tagId1", + "parameters": { + "properties": { + "displayName": "tag1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json new file mode 100644 index 000000000000..e8189d5d05ad --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "confirmation": "signup" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json new file mode 100644 index 000000000000..d8aa29f9281b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json new file mode 100644 index 000000000000..c9ed67d16225 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json new file mode 100644 index 000000000000..d983b39d2964 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json new file mode 100644 index 000000000000..7a9625dd0d42 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json new file mode 100644 index 000000000000..a2915479edce --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json new file mode 100644 index 000000000000..0cceb035d673 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json new file mode 100644 index 000000000000..1431094a3124 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "testapi", + "operationId": "testoperation", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json new file mode 100644 index 000000000000..95c360a2da08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "operationId": "59d5b28d1f7fab116c282651", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json new file mode 100644 index 000000000000..bdf429bf117e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "loggerId", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json new file mode 100644 index 000000000000..4dd8653da7d3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5a5fcc09124a7fa9b89f2f1d", + "releaseId": "testrev", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json new file mode 100644 index 000000000000..2593d688885d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "schemaId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json new file mode 100644 index 000000000000..6ae6d5b1f9f9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json new file mode 100644 index 000000000000..d26baf354d61 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagDescriptionId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json new file mode 100644 index 000000000000..7af79f6fd4b6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "a1", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json new file mode 100644 index 000000000000..469403ea5930 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json new file mode 100644 index 000000000000..f5cb1b955148 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json new file mode 100644 index 000000000000..81d6a3b12d74 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "southindia", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json new file mode 100644 index 000000000000..779f900f5e3d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "tempcert", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json new file mode 100644 index 000000000000..f33a517ffaff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json new file mode 100644 index 000000000000..e050b47d9e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json new file mode 100644 index 000000000000..6a8e8eda4f42 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json new file mode 100644 index 000000000000..fe4d70f46bcf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..da2bbe50e057 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json new file mode 100644 index 000000000000..16263544b2a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "aadGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json new file mode 100644 index 000000000000..aa3cbc810647 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "templategroup", + "userId": "59307d350af58404d8a26300", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json new file mode 100644 index 000000000000..6360982d5097 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aad", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json new file mode 100644 index 000000000000..d262f1ed9572 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json new file mode 100644 index 000000000000..5b9993502098 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json new file mode 100644 index 000000000000..2e83472d5cdc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json new file mode 100644 index 000000000000..ea223206cbf9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json new file mode 100644 index 000000000000..88b279edd160 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json new file mode 100644 index 000000000000..e76c2b9e981c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json new file mode 100644 index 000000000000..41ecc63ac8a4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "deleteSubscriptions": true, + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json new file mode 100644 index 000000000000..4ec6d81eaef5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json new file mode 100644 index 000000000000..bea27ba3f6c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json new file mode 100644 index 000000000000..73a7961c69b9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json new file mode 100644 index 000000000000..c732ced9fd0c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json new file mode 100644 index 000000000000..4fbc3b8f47b7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json new file mode 100644 index 000000000000..0a1157f28786 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "tagId1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json new file mode 100644 index 000000000000..09ca673e7bc7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json new file mode 100644 index 000000000000..656c58069347 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "keyType": "primary", + "expiry": "2020-04-21T00:44:24.2845269Z" + } + }, + "responses": { + "200": { + "body": { + "value": "gw1&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json new file mode 100644 index 000000000000..1aec559093c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "primary": "primary_key_value", + "secondary": "secondary_key_value" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json new file mode 100644 index 000000000000..31accff0af2f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gwId", + "parameters": { + "keyType": "primary" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json new file mode 100644 index 000000000000..8bf50b120ad7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a", + "type": "Microsoft.ApiManagement/service/apis", + "name": "57d1f7558aa04f15146d9d8a", + "properties": { + "displayName": "Service", + "apiRevision": "1", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json new file mode 100644 index 000000000000..ffb2b5124f10 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json new file mode 100644 index 000000000000..e88432cf14c8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "format": "swagger-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "format": "swagger-link-json", + "value": { + "link": "https://apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore Extensive.json?sv=2015-07-08&sr=b&sig=mxhLsFuOonu8EXIjyFPV%2FnDra0qTIoip7N7MuU%2BTFsA%3D&se=2019-04-10T22:41:31Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json new file mode 100644 index 000000000000..e6b7652738a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "aid9676", + "format": "openapi-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/aid9676", + "format": "openapi-link", + "value": { + "link": "https: //apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore.yaml?sv=2015-07-08&sr=b&sig=qqtR1y5iTbz5P7USBduqB5vriIU4gmiGqe0lKVV8j9k%3D&se=2019-04-10T22:40:57Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json new file mode 100644 index 000000000000..46e55421000c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json new file mode 100644 index 000000000000..658bf7f60014 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json new file mode 100644 index 000000000000..fb788a6c3ac6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json new file mode 100644 index 000000000000..5c0464b76ab0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder", + "templateParameters": [], + "request": { + "description": "IFazioService_CancelOrder_InputMessage", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrder" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "IFazioService_CancelOrder_OutputMessage", + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrderResponse" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json new file mode 100644 index 000000000000..36c0d5d08e06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "swagger-petstore", + "operationId": "loginUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/swagger-petstore/operations/loginUser", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "loginUser", + "properties": { + "displayName": "Logs user into the system", + "method": "GET", + "urlTemplate": "/user/login?username={username}&password={password}", + "templateParameters": [ + { + "name": "username", + "description": "The user name for login", + "type": "string", + "required": true, + "values": [] + }, + { + "name": "password", + "description": "The password for login in clear text", + "type": "string", + "required": true, + "values": [] + } + ], + "description": "", + "request": { + "queryParameters": [], + "headers": [], + "representations": [] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationXmlResponse" + }, + { + "contentType": "application/json", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationJsonResponse" + } + ], + "headers": [ + { + "name": "X-Rate-Limit", + "description": "calls per hour allowed by the user", + "type": "integer", + "values": [] + }, + { + "name": "X-Expires-After", + "description": "date in UTC when token expires", + "type": "string", + "values": [] + } + ] + }, + { + "statusCode": 400, + "description": "Invalid username/password supplied", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json new file mode 100644 index 000000000000..26ca96ba015e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b539c53f5b0062040001/operations/5600b53ac53f5b0062080006/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n This is a sample\r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json new file mode 100644 index 000000000000..055fd572cb51 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json new file mode 100644 index 000000000000..995a504b5642 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json new file mode 100644 index 000000000000..798233bf70fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json new file mode 100644 index 000000000000..38b114917cdc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Service", + "apiRevision": "3", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "fixed bug in contract" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json new file mode 100644 index 000000000000..802a8f21adb3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json new file mode 100644 index 000000000000..024bafe1811b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json new file mode 100644 index 000000000000..ff6ccf9f4da6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/tagDescriptions/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "displayName": "tag1", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json new file mode 100644 index 000000000000..e8a8553e1e5d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "Version Set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json new file mode 100644 index 000000000000..42ab274b2e7b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json new file mode 100644 index 000000000000..55925d6ed8df --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json new file mode 100644 index 000000000000..1cf3b2ac7be9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json new file mode 100644 index 000000000000..fcbbbb35e154 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA**********************8594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json new file mode 100644 index 000000000000..6d3f0580b7ff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json new file mode 100644 index 000000000000..164f5c26af6a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request $IssueName was received", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": true, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json new file mode 100644 index 000000000000..c760ce7fa429 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..43ed55ae0ecd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json new file mode 100644 index 000000000000..73ce437e2515 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json new file mode 100644 index 000000000000..450389f5bd86 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "f02dafe2-b8b8-48ec-a38e-27e5c16c51e5", + "type": "aadB2C", + "authority": "login.microsoftonline.com", + "signinTenant": "contosoaadb2c.onmicrosoft.com", + "allowedTenants": [ + "contosoaadb2c.onmicrosoft.com", + "contoso2aadb2c.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_policy-signup", + "signinPolicyName": "B2C_1_policy-signin" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json new file mode 100644 index 000000000000..55d3821d55c1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json new file mode 100644 index 000000000000..4ce92563e2bc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/kloudapilogger1", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "kloudapilogger1", + "properties": { + "loggerType": "azureEventHub", + "description": "testeventhub3again", + "credentials": { + "name": "testeventhub4", + "connectionString": "Endpoint=sb://eventhubapim.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=************" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/eventhubapim" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json new file mode 100644 index 000000000000..df382d2de96d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json new file mode 100644 index 000000000000..4a367d3b4e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json new file mode 100644 index 000000000000..45245354590e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json new file mode 100644 index 000000000000..822bfbdb3e20 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json new file mode 100644 index 000000000000..517d609d8886 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "format": "rawxml" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "format": "rawxml", + "value": "\r\n\r\n\t\r\n\t\t\r\n\t\t\t@{\n var guidBinary = new byte[16];\n Array.Copy(Guid.NewGuid().ToByteArray(), 0, guidBinary, 0, 10);\n long time = DateTime.Now.Ticks;\n byte[] bytes = new byte[6];\n unchecked\n {\n bytes[5] = (byte)(time >> 40);\n bytes[4] = (byte)(time >> 32);\n bytes[3] = (byte)(time >> 24);\n bytes[2] = (byte)(time >> 16);\n bytes[1] = (byte)(time >> 8);\n bytes[0] = (byte)(time);\n }\n Array.Copy(bytes, 0, guidBinary, 10, 6);\n return new Guid(guidBinary).ToString();\n }\n \r\n\t\t\r\n\t\r\n\t\r\n\t\t\r\n\t\r\n\t\r\n\t\r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json new file mode 100644 index 000000000000..ccff9156c0ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json new file mode 100644 index 000000000000..c42f28d0033c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "kjoshiarmTemplateProduct4", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json new file mode 100644 index 000000000000..16148b03e91c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json new file mode 100644 index 000000000000..0653b0403b26 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 5, + "kbTransferred": 2.5830078125 + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json new file mode 100644 index 000000000000..f2ef112d1381 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S" + }, + "responses": { + "200": { + "body": { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 0, + "kbTransferred": 2.5625 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json new file mode 100644 index 000000000000..e95c28e735d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Echo API", + "apiId": "/apis/5600b59475ff190048040001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "httpbin", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json new file mode 100644 index 000000000000..49e7e07a3913 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "country": "US", + "region": "WA", + "zip": "98052", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json new file mode 100644 index 000000000000..2a9d7064d1f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "get", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "operationId": "/apis/57a03a13e4bbd5119c8b19e9/operations/57a03a1dd8d14f0a780d7d14", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "GetWeatherInformation", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93e", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "GetCityForecastByZIP", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93f", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json new file mode 100644 index 000000000000..630133ed867a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Starter", + "productId": "/products/5600b59475ff190048060001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Unlimited", + "productId": "/products/5600b59475ff190048060002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json new file mode 100644 index 000000000000..b670d169f40b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "GET", + "url": "https://apimService1.azure-api.net/echo/resource?param1=sample", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 405, + "timestamp": "2017-06-03T00:17:00.1649134Z", + "cache": "none", + "apiTime": 221.1544, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "63e7119c-26aa-433c-96d7-f6f3267ff52f", + "requestSize": 0 + }, + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "POST", + "url": "https://apimService1.azure-api.net/echo/resource", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 403, + "timestamp": "2017-06-03T00:17:20.5255131Z", + "cache": "none", + "apiTime": 6.6754000000000007, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "e581b7f7-c9ec-4fc6-8ab9-3855d9b00b04", + "requestSize": 0 + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json new file mode 100644 index 000000000000..f75c8f550110 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060001", + "subscriptionId": "/subscriptions/5600b59475ff190048070001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060002", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5702e97e5157a50f48dce801", + "subscriptionId": "/subscriptions/5702e97e5157a50a9c733303", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json new file mode 100644 index 000000000000..a9dc75e37c26 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'", + "interval": "PT15M" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timestamp": "2017-06-03T00:15:00Z", + "interval": "PT15M", + "callCountSuccess": 4, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 4, + "bandwidth": 3243, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1337.46335, + "apiTimeMin": 885.0839000000001, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 1255.917425, + "serviceTimeMin": 882.8264, + "serviceTimeMax": 1697.3612 + }, + { + "timestamp": "2017-06-03T00:30:00Z", + "interval": "PT15M", + "callCountSuccess": 9, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 10, + "bandwidth": 7776, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 872.7818777777778, + "apiTimeMin": 330.3206, + "apiTimeMax": 1093.8407, + "serviceTimeAvg": 824.2847111111112, + "serviceTimeMin": 215.24, + "serviceTimeMax": 973.2262000000001 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json new file mode 100644 index 000000000000..deade91b9d06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Administrator", + "userId": "/users/1", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "Samir Solanki", + "userId": "/users/56eaec62baf08b06e46d27fd", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Anonymous", + "userId": "/users/54c800b332965a0035030000", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json new file mode 100644 index 000000000000..84d2974d6d83 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json new file mode 100644 index 000000000000..e4072fabff76 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json new file mode 100644 index 000000000000..8350fc3b43cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json new file mode 100644 index 000000000000..24ef2e280dd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json new file mode 100644 index 000000000000..85bccbd8d42b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json new file mode 100644 index 000000000000..00f32f58942f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json new file mode 100644 index 000000000000..7e44ad77d5c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json new file mode 100644 index 000000000000..a1e9ce4e31c9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json new file mode 100644 index 000000000000..b9fe83eabc80 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json new file mode 100644 index 000000000000..fdda0be096f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json new file mode 100644 index 000000000000..da51270cfaa3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json new file mode 100644 index 000000000000..8a6d8cef277a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json new file mode 100644 index 000000000000..4bb689e7da45 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json new file mode 100644 index 000000000000..e31510a42aa4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json new file mode 100644 index 000000000000..4dab8a4ce1ea --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json new file mode 100644 index 000000000000..7ded5d9c5359 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json new file mode 100644 index 000000000000..bb2529d1e87b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json new file mode 100644 index 000000000000..387a30f214ee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json new file mode 100644 index 000000000000..1126b19c9525 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json new file mode 100644 index 000000000000..8d44e882d591 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json new file mode 100644 index 000000000000..b76b7e9a21a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json new file mode 100644 index 000000000000..15d35ca4af2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json new file mode 100644 index 000000000000..709448b49070 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json new file mode 100644 index 000000000000..e2fa0844a970 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json new file mode 100644 index 000000000000..430a5dfb0db0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "mygateway" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json new file mode 100644 index 000000000000..9591eba34b53 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "api1" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..e61e9633bb49 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json new file mode 100644 index 000000000000..b0cc989b7e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json new file mode 100644 index 000000000000..4a1acb756409 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json new file mode 100644 index 000000000000..436349ed4f48 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json new file mode 100644 index 000000000000..86a44a82ffcc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json new file mode 100644 index 000000000000..3f6295792b85 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json new file mode 100644 index 000000000000..28d3d872456c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json new file mode 100644 index 000000000000..cfc970b46b4c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json new file mode 100644 index 000000000000..09faa8db96c6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json new file mode 100644 index 000000000000..60000cc050ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json new file mode 100644 index 000000000000..9270e85d7a25 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json new file mode 100644 index 000000000000..1b7c8837cd2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "apiId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json new file mode 100644 index 000000000000..f8a9fe5ce67f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json new file mode 100644 index 000000000000..b81de558e60b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json new file mode 100644 index 000000000000..d1feedd77266 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59306a29e4bbd510dc24e5f8", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json new file mode 100644 index 000000000000..04b01db486cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json new file mode 100644 index 000000000000..77299ad98953 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json new file mode 100644 index 000000000000..f90a86381063 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json new file mode 100644 index 000000000000..b5f5a865b5cb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json new file mode 100644 index 000000000000..563cac91f5b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json new file mode 100644 index 000000000000..02da761d7375 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json new file mode 100644 index 000000000000..23b11effb7ae --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json new file mode 100644 index 000000000000..5d4360156978 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json new file mode 100644 index 000000000000..febe80801b74 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "599e2953193c3c0bd0b3e2fa", + "operationId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/599e2953193c3c0bd0b3e2fa/operations/599e29ab193c3c0bd0b3e2fb/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n xxx\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json new file mode 100644 index 000000000000..d31cfd84379b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0888cba3f6" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json new file mode 100644 index 000000000000..ad214d6a082d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cda", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cda", + "properties": { + "displayName": "GetMostRecentOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetMostRecentOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd9", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd9", + "properties": { + "displayName": "GetOpenOrders", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOpenOrders" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdb", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdb", + "properties": { + "displayName": "GetOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd8", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd8", + "properties": { + "displayName": "submitOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/submitOrder" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json new file mode 100644 index 000000000000..91f2bdb4e634 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json new file mode 100644 index 000000000000..3ecee3bd6354 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json new file mode 100644 index 000000000000..4adab5c251d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/apis/products", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json new file mode 100644 index 000000000000..f52383b2b410 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json new file mode 100644 index 000000000000..6ef1385dd6cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1;rev=1", + "apiRevision": "1", + "createdDateTime": "2018-02-01T22:21:20.467Z", + "updatedDateTime": "2018-02-01T22:21:20.467Z", + "isOnline": true, + "isCurrent": true + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json new file mode 100644 index 000000000000..476b00f20293 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d5b28d1f7fab116c282650/schemas/59d5b28e1f7fab116402044e", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "59d5b28e1f7fab116402044e", + "properties": { + "contentType": "application/vnd.ms-azure-apim.swagger.definitions+json" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json new file mode 100644 index 000000000000..845a12dc8b9e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tagDescriptions/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "displayName": "tag1", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json new file mode 100644 index 000000000000..efd5943eccba --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json new file mode 100644 index 000000000000..1dbf8e99a755 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs2", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs2", + "properties": { + "displayName": "api set 2", + "versioningScheme": "Query", + "description": "Version configuration 2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json new file mode 100644 index 000000000000..ac4646c73025 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "type": "Microsoft.ApiManagement/service/apis", + "name": "a1", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a73933b8f27f7cc82a2d533", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersion": "v1", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api", + "properties": { + "displayName": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "protocols": [ + "https" + ], + "isCurrent": true + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a7390baa5816a110435aee0", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a7390baa5816a110435aee0", + "properties": { + "displayName": "Swagger Petstore Extensive", + "apiRevision": "1", + "description": "A sample API that uses a petstore as an example to demonstrate features in the swagger-2.0 specification", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "vvv", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json new file mode 100644 index 000000000000..320df65cab33 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json new file mode 100644 index 000000000000..00f73d60ca6a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json new file mode 100644 index 000000000000..2ff24b60f824 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json new file mode 100644 index 000000000000..df971f34e974 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json new file mode 100644 index 000000000000..f5b805259669 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA************************48594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json new file mode 100644 index 000000000000..046cd506e79c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "verbosity": "information", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/azuremonitor", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "azuremonitor", + "properties": { + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json new file mode 100644 index 000000000000..3432a1106c27 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/ApplicationApprovedNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "ApplicationApprovedNotificationMessage", + "properties": { + "subject": "Your application $AppName is published in the application gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the application gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "Application gallery submission approved", + "description": "Developers who submitted their application for publication in the application gallery on the developer portal receive this email after their submission is approved.", + "isDefault": true, + "parameters": [ + { + "name": "AppId", + "title": "Application id" + }, + { + "name": "AppName", + "title": "Application name" + }, + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json new file mode 100644 index 000000000000..5855ffa8c177 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json new file mode 100644 index 000000000000..c47c50573eb1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/hostname1", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "foo.bar.com", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert2", + "negotiateClientCertificate": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json new file mode 100644 index 000000000000..5a149618b1fc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location 1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw2", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "description": "my gateway 2", + "locationData": { + "name": "my location 2" + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json new file mode 100644 index 000000000000..baf2caf452a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/kjoshiarmTemplateUser1", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "armTemplateUser1", + "properties": { + "firstName": "user1", + "lastName": "lastname1", + "email": "user1@live.com", + "state": "active", + "registrationDate": "2017-05-31T18:54:41.447Z", + "note": "note for user 1", + "identities": [ + { + "provider": "Basic", + "id": "user1@live.com" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json new file mode 100644 index 000000000000..86e460480a91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020003", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json new file mode 100644 index 000000000000..b61782e8f681 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Google", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Google", + "properties": { + "clientId": "googleId", + "type": "google" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Aad", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Aad", + "properties": { + "clientId": "aadapplicationid", + "type": "aad", + "allowedTenants": [ + "samiraad.onmicrosoft.com" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "aadb2clientId", + "type": "aadB2C", + "allowedTenants": [ + "samirtestbc.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_Signup_Default", + "signinPolicyName": "B2C_1_Signin_Default" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json new file mode 100644 index 000000000000..b40f61a3a41c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json new file mode 100644 index 000000000000..732924de4216 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/buffered111", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "buffered111", + "properties": { + "loggerType": "azureEventHub", + "description": "Sample description", + "credentials": { + "connectionString": "Endpoint=sb://apimaccounts.servicebus.windows.net/;SharedAccessKeyName=Send;SharedAccessKey=*******************h=****" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/apimaccounts" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{Logger-Credentials-59544ef2e4bbd50d9468c618}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json new file mode 100644 index 000000000000..9ffa921acc1c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/592f1174cc83890dc4f32686", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "592f1174cc83890dc4f32686", + "properties": { + "displayName": "Logger-Credentials-592f1174cc83890dc4f32687", + "value": "propValue", + "secret": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json new file mode 100644 index 000000000000..13e7d42c04bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "contoso@live.com", + "properties": { + "email": "contoso@live.com" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar!live", + "properties": { + "email": "foobar!live" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json new file mode 100644 index 000000000000..42a21332bcd8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json new file mode 100644 index 000000000000..ac3a6a632311 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/PurchasePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "PurchasePublisherNotificationMessage", + "properties": { + "title": "New subscriptions", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewApplicationNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewApplicationNotificationMessage", + "properties": { + "title": "Application gallery requests", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/BCC", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "BCC", + "properties": { + "title": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers.", + "recipients": { + "emails": [], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewIssuePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewIssuePublisherNotificationMessage", + "properties": { + "title": "New issue or comment", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/AccountClosedPublisher", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "AccountClosedPublisher", + "properties": { + "title": "Close account message", + "description": "The following email recipients and users will receive email notifications when developer closes his account", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/QuotaLimitApproachingPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "QuotaLimitApproachingPublisherNotificationMessage", + "properties": { + "title": "Approaching subscription quota limit", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json new file mode 100644 index 000000000000..4ee94af64e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json new file mode 100644 index 000000000000..7b956348db16 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ApiManagement/service/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Create a new instance of API Management Service", + "description": "Create a new instance of API Management Service" + } + }, + { + "name": "Microsoft.ApiManagement/service/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Read metadata for an API Management Service instance", + "description": "Read metadata for an API Management Service instance" + } + }, + { + "name": "Microsoft.ApiManagement/service/delete", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Delete API Management Service instance", + "description": "Delete API Management Service instance" + } + }, + { + "origin": "system", + "name": "Microsoft.ApiManagement/service/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for API Management service" + } + }, + { + "name": "Microsoft.ApiManagement/service/tenant/operationResults/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Results of async operations", + "operation": "Get operation results or Get operation result", + "description": "Get list of operation results or Get result of a specific operation" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json new file mode 100644 index 000000000000..1f5872f376d5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json new file mode 100644 index 000000000000..63c634464738 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "scope": "Api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-basic", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-basic", + "properties": { + "description": "Authenticate with the backend service using Basic authentication. Use in the inbound section at API scope.", + "scope": 268435471 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-certificate", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-certificate", + "properties": { + "description": "Authenticate with the backend service using a client certificate. Use in the inbound section at API scope.", + "scope": 268435471 + } + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json new file mode 100644 index 000000000000..292538cd099d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5768181ea40f7eb6c49f6ac7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/products/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json new file mode 100644 index 000000000000..8cdef2e9f242 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020001", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020003", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json new file mode 100644 index 000000000000..ba70650fe628 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "armTemplateProduct4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/armTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json new file mode 100644 index 000000000000..78e28dbbafc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/subscriptions/5600b57e7e8880006a070002", + "type": "Microsoft.ApiManagement/service/products/subscriptions", + "name": "5600b57e7e8880006a070002", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002", + "state": "active", + "createdDate": "2015-09-22T01:57:18.723Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json new file mode 100644 index 000000000000..00748365ad71 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "57d2ef278aa04f0888cba3f1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json new file mode 100644 index 000000000000..b84407644598 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/products", + "name": "kjoshiarmtemplateCert1", + "properties": { + "displayName": "Dev", + "description": "Development Product", + "subscriptionRequired": false, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/starter", + "type": "Microsoft.ApiManagement/service/products", + "name": "starter", + "properties": { + "displayName": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json new file mode 100644 index 000000000000..b933f1a7f3be --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json new file mode 100644 index 000000000000..89a874935a99 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "West US", + "isMasterRegion": true, + "isDeleted": false + } + ], + "count": 1, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json new file mode 100644 index 000000000000..20a41f3a310f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Consumption" + }, + "capacity": null + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json new file mode 100644 index 000000000000..14e604edbb44 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Developer" + }, + "capacity": { + "minimum": 1, + "maximum": 1, + "default": 1, + "scaleType": "none" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Basic" + }, + "capacity": { + "minimum": 1, + "maximum": 2, + "default": 1, + "scaleType": "manual" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 4, + "default": 1, + "scaleType": "automatic" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Premium" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "automatic" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json new file mode 100644 index 000000000000..155ae58fbb3a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json new file mode 100644 index 000000000000..234938c21985 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "clientSecret": "XXXXXXX" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json new file mode 100644 index 000000000000..9e190440257c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "value": "propValue" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json new file mode 100644 index 000000000000..cff64b91fd20 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "oidsecretproviderTemplate2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json new file mode 100644 index 000000000000..a35a30f8d338 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json new file mode 100644 index 000000000000..382995492868 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "primaryKey": "6de0a3b2da204e459148d2f6785873f0", + "secondaryKey": "c6de00b451f64ea780db1eb8dcf30b62" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json new file mode 100644 index 000000000000..330d498ca16d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "primaryKey": "qr5nbjNoZkgtLojXgU+OA/ntYMgko3XPSVyt+ObwR1sqp2ZkM9tGhwxkeEz7bfAuPS5ss61b2S3ZrZmqa9v3Mw==", + "secondaryKey": "2dCJv1CasJl286SZiKxyBFDiIYCUdbwM1YrFNDcFMXCjCKbFzomrGkv+exAbnV5E3DEk91VP4jbeJ2eV/qtejA==", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json new file mode 100644 index 000000000000..2afc23c8a233 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService3", + "name": "apimService3", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXXAQ=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-27T15:33:55.5426123Z", + "gatewayUrl": "https://apimService3.azure-api.net", + "portalUrl": "https://apimService3.portal.azure-api.net", + "managementApiUrl": "https://apimService3.management.azure-api.net", + "scmUrl": "https://apimService3.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.88.16.64" + ], + "additionalLocations": [ + { + "location": "West Europe", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "52.233.184.197" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW4U=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "MS", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T23:55:31.1405115Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.64.237.151" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService5", + "name": "apimService5", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW5c=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T18:13:02.0196315Z", + "gatewayUrl": "https://apimService5.azure-api.net", + "portalUrl": "https://apimService5.portal.azure-api.net", + "managementApiUrl": "https://apimService5.management.azure-api.net", + "scmUrl": "https://apimService5.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxytemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname2.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname3.azure-api.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname3.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname4.azure-api.net", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname4.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portaltemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=portaltemplatehostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "13.93.167.166" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json new file mode 100644 index 000000000000..259dddfdace5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Pool": "Perf", + "UID": "98f4a706-98c7-4aec-8e39-51ab2e4aaf22" + }, + "location": "West US", + "etag": "AAAAAAAhNiA=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-10-13T01:36:27.1706097Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "104.42.221.195" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Pool": "Endurance", + "UID": "07d6dd0e-111f-4b5c-81f3-87e5501d0408" + }, + "location": "West US", + "etag": "AAAAAAAhNh4=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-10-13T01:36:27.4003514Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "gatewayRegionalUrl": "https://apimService2-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "developerPortalUrl": "https://apimService2.developer.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService2.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "104.42.220.196" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json new file mode 100644 index 000000000000..45ac0e309787 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5600b59475ff190048070001", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5600b59475ff190048070001", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "state": "active", + "createdDate": "2015-09-22T01:57:40.3Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/56eaed3dbaf08b06e46d27fe", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "56eaed3dbaf08b06e46d27fe", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "displayName": "Starter", + "state": "active", + "createdDate": "2016-03-17T17:45:33.837Z", + "startDate": "2016-03-17T00:00:00Z", + "expirationDate": "2016-04-01T00:00:00Z", + "notificationDate": "2016-03-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json new file mode 100644 index 000000000000..f74d05edb72b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json new file mode 100644 index 000000000000..ff37f4df7ec8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "tag1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "tag2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json new file mode 100644 index 000000000000..29649b225a8f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/users/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json new file mode 100644 index 000000000000..78ea66398d60 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57f2af53bb17172280f44057" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "provider": "Microsoft", + "id": "086cf9********55ab" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json new file mode 100644 index 000000000000..8e6ae3b3ecc2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6ae3", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6ae3", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6ae5", + "state": "active", + "createdDate": "2016-06-20T16:22:39.547Z", + "startDate": "2016-06-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6b2b", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6b2b", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6b2d", + "state": "active", + "createdDate": "2016-06-20T16:22:41.103Z", + "startDate": "2016-06-20T00:00:00Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json new file mode 100644 index 000000000000..84d3756a891f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "type": "Microsoft.ApiManagement/service/users", + "name": "1", + "properties": { + "firstName": "Administrator", + "lastName": "", + "email": "admin@live.com", + "state": "active", + "registrationDate": "2015-09-22T01:57:39.677Z", + "identities": [ + { + "provider": "Azure", + "id": "admin@live.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "type": "Microsoft.ApiManagement/service/users", + "name": "56eaec62baf08b06e46d27fd", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foo.bar.83@gmail.com", + "state": "active", + "registrationDate": "2016-03-17T17:41:56.327Z", + "identities": [ + { + "provider": "Basic", + "id": "foo.bar.83@gmail.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json new file mode 100644 index 000000000000..e86d6bca1dda --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json new file mode 100644 index 000000000000..7ddbe5ac44c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json new file mode 100644 index 000000000000..b72738f3050e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json new file mode 100644 index 000000000000..c055028f1af6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json new file mode 100644 index 000000000000..f171cfa71f2e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json new file mode 100644 index 000000000000..40e2693f9f25 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json new file mode 100644 index 000000000000..79de717780ff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json new file mode 100644 index 000000000000..37ab432fc876 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json new file mode 100644 index 000000000000..3543d865f71e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json new file mode 100644 index 000000000000..55936485b01b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json new file mode 100644 index 000000000000..b7bcad0dba80 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "name": "apimService1" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Valid", + "message": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json new file mode 100644 index 000000000000..7a960b693eac --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/TGV2eTExMDZtMDJfVGVybV9jMmZlY2QwMA==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAFfhHY=", + "properties": { + "publisherEmail": "contoso@live.com", + "publisherName": "Microsoft", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "Deleting", + "createdAtUtc": "2016-12-20T19:41:21.5823069Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.XX.XXX.168" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/BlockVNETSamir/subnets/default" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json new file mode 100644 index 000000000000..cd4cb522b684 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimservice1", + "name": "apimservice1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAADqC0c=", + "properties": { + "publisherEmail": "abcs@contoso.com", + "publisherName": "contoso publisher", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-02T01:42:09.1268424Z", + "gatewayUrl": "https://apimservice1.azure-api.net", + "gatewayRegionalUrl": "https://apimservice1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimservice1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimservice1.management.azure-api.net", + "scmUrl": "https://apimservice1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "apimgatewaytest.preview.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2019-08-16T16:51:34+00:00", + "thumbprint": "B4330123DBAXXXXXXXXX1F35E84493476", + "subject": "CN=*.preview.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "137.XXX.11.74" + ], + "privateIPAddresses": [ + "172.XX.0.5" + ], + "additionalLocations": [ + { + "location": "West US 2", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.XXX.79.187" + ], + "privateIPAddresses": [ + "10.0.X.6" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/APIMVNet/subnets/apim-internal-sub" + }, + "gatewayRegionalUrl": "https://apimservice1-westus2-01.regional.azure-api.net", + "disableGateway": false + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/apim-appGateway-vnet/subnets/apim-subnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False" + }, + "virtualNetworkType": "Internal", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json new file mode 100644 index 000000000000..13dff7c0c483 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "location": "West Europe", + "networkStatus": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtsttgzqxxxxxcrsc.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.6997938Z", + "lastStatusChange": "2019-01-24T21:47:53.851895Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T21:22:50.6835366Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.queue.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.8564232Z", + "lastStatusChange": "2019-05-02T20:53:26.6260794Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T20:53:21.6729263Z" + }, + { + "name": "ftmrcxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.1845483Z", + "lastStatusChange": "2019-05-02T21:02:00.9466899Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "failure", + "error": "Failed to connect to https://prod3.metrics.nsatc.net:1886/RecoveryService with error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1214083Z", + "lastStatusChange": "2019-01-24T22:00:04.2450462Z" + }, + { + "name": "https://westeurope.prod.warm.ingestion.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.8251399Z", + "lastStatusChange": "2019-12-18T11:14:43.3860126Z" + }, + { + "name": "LocalGatewayRedis", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:50.6376685Z", + "lastStatusChange": "2019-12-18T11:14:44.4966742Z" + }, + { + "name": "prod.warmpath.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.4345454Z", + "lastStatusChange": "2019-05-08T00:09:58.031766Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:58.4815899Z", + "lastStatusChange": "2019-12-18T11:24:48.4795085Z" + }, + { + "name": "smtpi-db3.msn.com:25028", + "status": "failure", + "error": "Connection smtpi-db3.msn.com:25028 failed with Error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1526431Z", + "lastStatusChange": "2019-12-18T11:23:05.7709057Z" + } + ] + } + } + ] + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json new file mode 100644 index 000000000000..4dcb637744d4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "locationName": "North Central US" + }, + "responses": { + "200": { + "body": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtst6mtxxxxxxxx.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:07.3844516Z", + "lastStatusChange": "2018-06-13T20:31:06.6590782Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6657305Z", + "lastStatusChange": "2018-06-13T20:31:06.8934611Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.7594708Z", + "lastStatusChange": "2018-06-13T20:31:06.7529128Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6969746Z", + "lastStatusChange": "2018-06-13T20:31:07.1125257Z" + }, + { + "name": "n20fxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:09.5094848Z", + "lastStatusChange": "2018-06-13T20:31:07.0968711Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:29.4358865Z", + "lastStatusChange": "2018-06-13T20:41:09.8627827Z" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json new file mode 100644 index 000000000000..bd3b962a65a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json new file mode 100644 index 000000000000..eb2dc24a72f9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West Europe", + "etag": "AAAAAAAENfI=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2016-04-12T00:20:15.6018952Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westeurope-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "proxy.msitesting.net", + "keyVaultId": "https://samir-msi-keyvault.vault.azure.net/secrets/msicertificate", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2020-12-18T11:11:47+00:00", + "thumbprint": "9833D531D7A45XXXXXA85908BD3692E0BD3F", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "13.94.xxx.188" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/dfVirtualNetwork/subnets/backendSubnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External", + "disableGateway": false + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "ca1d33f7-xxxx-42ec-xxxx-d526a1ee953a", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "95194df2-9208-xxxx-xxxx-a10d2af9b5a3", + "clientId": "aaff9c7d-xxxx-4db2-xxxx-ab0e3e7806cf" + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json new file mode 100644 index 000000000000..725e3d7c0269 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "redirectUri": "https://apimService1.portal.azure-api.net:443/signin-sso?token=1%26201705301929%26eIkr3%2fnfaLs1GVJ0OVbzkJjAcwPFkEZAPM8VUXvXPf7cJ6lWsB9oUwsk2zln9x0KLkn21txCPJWWheSPq7SNeA%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json new file mode 100644 index 000000000000..f6684622edb6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json new file mode 100644 index 000000000000..f6684622edb6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json new file mode 100644 index 000000000000..5873bde3a578 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json new file mode 100644 index 000000000000..b0fc99b7ebe3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration" + }, + "responses": { + "200": { + "body": { + "branch": "master", + "commitId": "44c29c27a876372e2ea18d9c381cc493a6a89fc5", + "isExport": true, + "isSynced": false, + "isGitEnabled": true, + "syncDate": "2016-10-24T19:17:14.3641403Z", + "configurationChangeDate": "2017-06-03T00:41:30.9670873Z" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json new file mode 100644 index 000000000000..c85deb17a62d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af4ae2a6d2e0b688d7517?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5a1af4ae2a6d2e0b688d7517", + "status": "Failed", + "started": "2017-11-26T17:06:54.303Z", + "updated": "2017-11-26T17:07:21.777Z", + "error": { + "code": "ValidationError", + "message": "File not found: 'api-management/configuration.json'" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json new file mode 100644 index 000000000000..def0d09d07b4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af57d2a6d2e0b688d751b?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5cae98acb597440f487b0d78", + "status": "Succeeded", + "started": "2019-04-11T01:30:20.883Z", + "updated": "2019-04-11T01:30:41.623Z", + "resultInfo": "The configuration was successfully saved to master as commit 709678560f72e689e469cf98ba9ba6d1b7736893.", + "error": null, + "actionLog": [] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json new file mode 100644 index 000000000000..96e075ef59e7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af64e2a6d2e0b688d751e?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5a1af64e2a6d2e0b688d751e", + "status": "Succeeded", + "started": "2019-04-11T01:30:51.767Z", + "updated": "2019-04-11T01:30:57.653Z", + "resultInfo": "Validation is successfull", + "actionLog": [ + { + "objectType": "ApiSpecificationContract", + "action": "Updated", + "objectKey": "57914cb351f68a16889be190;rev=1" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768181ea40f7eb6c49f6ac7" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819c9a40f7e86289fb3e3" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819f1a40f7e86289fb6de" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a67a40f7e72b4132522" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a73a40f7e72b413281d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a7ea40f7e72b4132b18" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b88a40f7ea0f017f099" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b9fa40f7ea0f017f682" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bb5a40f7ea0f017fc6b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bcaa40f7ea0f0180254" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bdfa40f7ea0f018083d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bf5a40f7ea0f0180e26" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c0ea40f7ea0f018140f" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c26a40f7ea0f01819f8" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c83a40f7e85f44db237" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681cb2a40f7e85f44dbcd0" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681ce3a40f7e85f44dc769" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d1fa40f7e85f44dd202" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d60a40f7e85f44ddc9b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681db4a40f7e85f44de735" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e11a40f7e85f44df1ce" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e73a40f7e85f44dfc67" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681f06a40f7e74ec07785c" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768211fa40f7e74ec07a74a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576823cfa40f7e74ec07d63a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060001" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060002" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json new file mode 100644 index 000000000000..089a39404373 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Echo API New", + "serviceUrl": "http://echoapi.cloudapp.net/api2", + "path": "newecho" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json new file mode 100644 index 000000000000..34ec8191ee8f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json new file mode 100644 index 000000000000..82056fe126b5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "state": "closed" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json new file mode 100644 index 000000000000..2651ff2b92c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "operationId": "operationId", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Retrieve resource", + "method": "GET", + "urlTemplate": "/resource", + "templateParameters": [], + "request": { + "queryParameters": [ + { + "name": "param1", + "description": "A sample parameter that is required and has a default value of \"sample\".", + "type": "string", + "defaultValue": "sample", + "required": true, + "values": [ + "sample" + ] + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "Returned in all cases.", + "representations": [], + "headers": [] + }, + { + "statusCode": 500, + "description": "Server Error.", + "representations": [], + "headers": [] + } + ] + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json new file mode 100644 index 000000000000..89f88d2f0431 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "If-Match": "*", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json new file mode 100644 index 000000000000..470a29f46e5a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "api1", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json new file mode 100644 index 000000000000..e5f30ca5d35e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "update", + "clientSecret": "updated" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json new file mode 100644 index 000000000000..aecab766a724 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "If-Match": "*", + "parameters": { + "properties": { + "description": "description5308", + "tls": { + "validateCertificateChain": false, + "validateCertificateName": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json new file mode 100644 index 000000000000..d947123af871 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia", + "If-Match": "*", + "parameters": { + "properties": { + "description": "Update Cache in west India" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json new file mode 100644 index 000000000000..b3dc0d5c634c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json new file mode 100644 index 000000000000..d1c232e77a05 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "applicationApprovedNotificationMessage", + "If-Match": "*", + "parameters": { + "properties": { + "subject": "Your application $AppName is published in the gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json new file mode 100644 index 000000000000..3dc6dcc30e96 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json new file mode 100644 index 000000000000..c2b6dfcac83d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json new file mode 100644 index 000000000000..79cbfaad8b0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "updatedfacebookid", + "clientSecret": "updatedfacebooksecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json new file mode 100644 index 000000000000..a2198ff06113 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*", + "parameters": { + "properties": { + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json new file mode 100644 index 000000000000..875a34adcfa0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=204" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json new file mode 100644 index 000000000000..daefba143640 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2", + "If-Match": "*", + "parameters": { + "properties": { + "clientSecret": "updatedsecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json new file mode 100644 index 000000000000..e18a4e623344 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json new file mode 100644 index 000000000000..e912200c09ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "parameters": { + "callsCount": 0, + "kbTransferred": 2.5630078125 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json new file mode 100644 index 000000000000..5e43c0fb4956 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S", + "parameters": { + "callsCount": 0, + "kbTransferred": 0 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json new file mode 100644 index 000000000000..d11fca486730 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "false" + } + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json new file mode 100644 index 000000000000..49006089a137 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext" + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json new file mode 100644 index 000000000000..df1350c11170 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "testsub" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json new file mode 100644 index 000000000000..2f303b4499db --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "temptag", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp tag" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json new file mode 100644 index 000000000000..f5557f535861 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "If-Match": "*", + "accessName": "access", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json new file mode 100644 index 000000000000..2940dd294984 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json new file mode 100644 index 000000000000..d70945f936e4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json new file mode 100644 index 000000000000..eedfa578f37d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "200": { + "body": { + "value": "https://apimService1.portal.azure-api.net/signin-sso?token=57127d485157a511ace86ae7%26201706051624%267VY18MlwAom***********2bYr2bDQHg21OzQsNakExQ%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json new file mode 100644 index 000000000000..725308f3c6d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "userId1718", + "parameters": { + "properties": { + "keyType": "primary", + "expiry": "2019-04-21T00:44:24.2845269Z" + } + } + }, + "responses": { + "200": { + "body": { + "value": "userId1718&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/readme.go.md b/specification/apimanagement/resource-manager/readme.go.md index 0c9af5512386..13dd80276077 100644 --- a/specification/apimanagement/resource-manager/readme.go.md +++ b/specification/apimanagement/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-12 - tag: package-preview-2019-12 - tag: package-2019-01 - tag: package-2018-06-preview @@ -22,6 +23,15 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2019-12 and go + +These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(namespace) +``` + ### Tag: package-preview-2019-12 and go These settings apply only when `--tag=package-preview-2019-12 --go` is specified on the command line. diff --git a/specification/apimanagement/resource-manager/readme.java.md b/specification/apimanagement/resource-manager/readme.java.md index 05b9c45f8911..3151673d46c4 100644 --- a/specification/apimanagement/resource-manager/readme.java.md +++ b/specification/apimanagement/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-apimanagement ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-12 - tag: package-2019-01 - tag: package-2018-06-preview - tag: package-2018-01 @@ -24,6 +25,19 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2019-12 and java + +These settings apply only when `--tag=package-2019-12 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-12' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.apimanagement.v2019_12_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/apimanagement/mgmt-v2019_12_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-01 and java These settings apply only when `--tag=package-2019-01 --java` is specified on the command line. diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 294a5554411c..8898b1f52777 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -28,15 +28,56 @@ These are the global settings for the ApiManagement API. title: ApiManagementClient description: ApiManagement Client openapi-type: arm -tag: package-preview-2019-12 +tag: package-2019-12 ``` +### Tag: package-2019-12 + +These settings apply only when `--tag=package-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12' +input-file: + - Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapis.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json + - Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json + - Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json + - Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json + - Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json + - Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json + - Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json + - Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json + - Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json + - Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json + - Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json + - Microsoft.ApiManagement/stable/2019-12-01/apimissues.json + - Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json + - Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json + - Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json + - Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json + - Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json + - Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json + - Microsoft.ApiManagement/stable/2019-12-01/apimregions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimreports.json + - Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json + - Microsoft.ApiManagement/stable/2019-12-01/apimusers.json + - Microsoft.ApiManagement/stable/2019-12-01/definitions.json +``` ### Tag: package-preview-2019-12 These settings apply only when `--tag=package-preview-2019-12` is specified on the command line. -```yaml $(tag) == 'package-preview-2019-12' +``` yaml $(tag) == 'package-preview-2019-12' input-file: - Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json @@ -49,6 +90,7 @@ input-file: - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json - Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json @@ -72,11 +114,12 @@ input-file: - Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json - Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json ``` + ### Tag: package-2019-01 These settings apply only when `--tag=package-2019-01` is specified on the command line. -```yaml $(tag) == 'package-2019-01' +``` yaml $(tag) == 'package-2019-01' input-file: - Microsoft.ApiManagement/stable/2019-01-01/apimanagement.json - Microsoft.ApiManagement/stable/2019-01-01/apimapis.json @@ -341,6 +384,40 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/definitions.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json @@ -352,6 +429,7 @@ input-file: - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json + - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json index 875ac3226401..cd6accbe06d4 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json @@ -939,6 +939,26 @@ "encryption": { "$ref": "#/definitions/EncryptionProperties", "description": "The encryption settings of the configuration store." + }, + "privateEndpointConnections": { + "description": "The list of private endpoint connections that are set up for this resource.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionReference" + } + }, + "publicNetworkAccess": { + "description": "Control permission for data plane traffic coming from public networks while private endpoint is enabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } } } }, @@ -952,6 +972,32 @@ } } }, + "PrivateEndpointConnectionReference": { + "type": "object", + "description": "A reference to a related private endpoint connection.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint connection.", + "x-ms-client-flatten": true + } + } + }, "KeyVaultProperties": { "type": "object", "description": "Settings concerning key vault encryption for a configuration store.", @@ -1534,6 +1580,14 @@ "type": "string" }, "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of required DNS zone names of the private link resource." } }, "description": "Properties of a private link resource." diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json index 00828632bdc6..6142fd1b97ec 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -27,10 +27,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -52,10 +54,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json index 2b33cac0dcf9..ec154f9d56ca 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -33,10 +33,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -69,10 +71,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json index 7b235423347f..db9634cafed4 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json @@ -18,10 +18,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json index 07b7476e3fb4..95cc3ac9e372 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json @@ -18,10 +18,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -44,10 +46,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json index b661aacd4cee..09d4d871b8d5 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json @@ -19,10 +19,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -40,10 +42,12 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", "name": "contoso2", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json index dd945689d19d..f9a284969e5b 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json @@ -26,7 +26,9 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { "name": "Standard" @@ -51,7 +53,9 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { "name": "Standard" diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json index 5ef16d741c7d..56fd7887c47c 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json @@ -32,7 +32,9 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { "name": "Standard" @@ -68,7 +70,9 @@ "keyIdentifier": null, "identityClientId": null } - } + }, + "privateEndpointConnections": [], + "publicNetworkAccess": "Disabled" }, "sku": { "name": "Standard" diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json index 0f52593d85c9..bcfc29a23b24 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json @@ -16,6 +16,9 @@ "groupId": "configurationStores", "requiredMembers": [ "configurationStores" + ], + "requiredZoneNames": [ + "privatelink.azconfig.io" ] } } diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json index e652e2399b97..4cad287f7123 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json @@ -17,6 +17,9 @@ "groupId": "configurationStores", "requiredMembers": [ "configurationStores" + ], + "requiredZoneNames": [ + "privatelink.azconfig.io" ] } } diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json index 2920e1843a1d..e321e0cbe41e 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -24,7 +24,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -43,7 +43,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json index 3cbc337a1050..6e0499da6823 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -30,7 +30,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -60,7 +60,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json index d7ebe442f94c..4a224773c768 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json @@ -15,7 +15,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json index cf2acb8b5872..ec7dd6e4c3d1 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json @@ -15,7 +15,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -35,7 +35,7 @@ "endpoint": "https://contoso2.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json index cbbcd48ce240..80ca3dbf46e3 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json @@ -16,7 +16,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -31,7 +31,7 @@ "endpoint": "https://contoso2.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", "name": "contoso2", diff --git a/specification/appconfiguration/resource-manager/readme.cli.md b/specification/appconfiguration/resource-manager/readme.cli.md index 6630c86c3f9b..14cf5c954049 100644 --- a/specification/appconfiguration/resource-manager/readme.cli.md +++ b/specification/appconfiguration/resource-manager/readme.cli.md @@ -8,29 +8,56 @@ cli: namespace: azure.mgmt.appconfiguration package-name: azure-mgmt-appconfiguration debug: true - test-setup: - - name: ConfigurationStores_Create - - name: ConfigurationStores_Get - - name: ConfigurationStores_CheckNameAvailable - - name: ConfigurationStores_ListKeys - - name: ConfigurationStores_List + test-scenario: + - name: /ConfigurationStores/put/ConfigurationStores_Create + - name: /ConfigurationStores/put/ConfigurationStores_Create_WithIdentity + disabled: true + - name: /PrivateEndpointConnections/put/PrivateEndpointConnection_CreateOrUpdate + disabled: true + - name: /PrivateEndpointConnections/get/PrivateEndpointConnection_GetConnection + disabled: true + - name: /PrivateLinkResources/get/PrivateLinkResources_Get + disabled: true + - name: /PrivateEndpointConnections/get/PrivateEndpointConnection_List + disabled: true + - name: /PrivateLinkResources/get/PrivateLinkResources_ListGroupIds + disabled: true + - name: /ConfigurationStores/get/ConfigurationStores_Get + - name: /ConfigurationStores/get/ConfigurationStores_ListByResourceGroup + - name: /ConfigurationStores/get/ConfigurationStores_List + - name: /ConfigurationStores/post/ConfigurationStores_RegenerateKey + disabled: true + - name: /ConfigurationStores/post/ConfigurationStores_ListKeyValue + disabled: true + - name: /ConfigurationStores/post/ConfigurationStores_ListKeys + - name: /ConfigurationStores/patch/ConfigurationStores_Update + disabled: true + - name: /ConfigurationStores/patch/ConfigurationStores_Update_WithIdentity + disabled: true + - name: /Operations/post/ConfigurationStores_CheckNameNotAvailable + disabled: true + - name: /Operations/post/ConfigurationStores_CheckNameAvailable + disabled: true + - name: /PrivateEndpointConnections/delete/PrivateEndpointConnections_Delete + disabled: true + - name: /ConfigurationStores/delete/ConfigurationStores_Delete cli-directive: - select: 'parameter' where: - parameter: '(config_store_creation_parameter|regenerate_key_parameter|check_name_availability_parameter)' + parameter: '(configStoreCreationParameters|regenerateKeyParameters|checkNameAvailabilityParameters)' hidden: 'true' - select: 'operation' where: - operationGroup: 'configuration_stores' + operationGroup: 'ConfigurationStores' operation: 'update' hidden: 'true' - select: 'parameter' where: - parameter: 'config_store_name' + parameter: 'configStoreName' name: 'name' - select: 'operationGroup' where: - operationGroup: 'operations' + operationGroup: 'Operations' name: 'stores' ``` diff --git a/specification/appconfiguration/resource-manager/readme.python.md b/specification/appconfiguration/resource-manager/readme.python.md index 4b37490f2f0a..1a125d702381 100644 --- a/specification/appconfiguration/resource-manager/readme.python.md +++ b/specification/appconfiguration/resource-manager/readme.python.md @@ -4,7 +4,7 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml !$(track2) python-mode: create python: azure-arm: true @@ -15,13 +15,28 @@ python: package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' + +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-appconfiguration +no-namespace-folders: true +package-version: 0.1.0 +``` + +``` yaml $(python-mode) == 'update' python: no-namespace-folders: true output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration/azure/mgmt/appconfiguration +no-namespace-folders: true +output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration/azure/mgmt/appconfiguration ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python-mode) == 'create' python: basic-setup-py: true output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration +basic-setup-py: true +output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration ``` diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json index 40df5f1ff2d4..b85d005c3d56 100644 --- a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json @@ -1212,6 +1212,9 @@ "additionalProperties": { "type": "object" } + }, + "additionalProperties": { + "type": "object" } }, "customMeasurements": { @@ -1221,6 +1224,9 @@ "additionalProperties": { "type": "object" } + }, + "additionalProperties": { + "type": "object" } }, "operation": { diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json index f6ebd4cb640c..d4023de90522 100644 --- a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json @@ -1139,6 +1139,9 @@ "additionalProperties": { "type": "object" } + }, + "additionalProperties": { + "type": "object" } }, "customMeasurements": { @@ -1148,6 +1151,9 @@ "additionalProperties": { "type": "object" } + }, + "additionalProperties": { + "type": "object" } }, "operation": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json similarity index 88% rename from specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json index 60b21037da39..0402072c012c 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json @@ -40,13 +40,13 @@ "operationId": "ProactiveDetectionConfigurations_List", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -73,13 +73,13 @@ "operationId": "ProactiveDetectionConfigurations_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -107,13 +107,13 @@ "operationId": "ProactiveDetectionConfigurations_Update", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -268,28 +268,6 @@ } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The Azure subscription ID." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, "ResourceNameParameter": { "name": "resourceName", "in": "path", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/components_API.json new file mode 100644 index 000000000000..fc10d313cfce --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/components_API.json @@ -0,0 +1,697 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for Components.", + "version": "2018-05-01-preview" + }, + "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.Insights/components": { + "get": { + "description": "Gets a list of all Application Insights components within a subscription.", + "operationId": "Components_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentsList.json": { + "$ref": "./examples/ComponentsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of Application Insights components within a resource group.", + "operationId": "Components_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentListByResourceGroup": { + "$ref": "./examples/ComponentsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { + "delete": { + "description": "Deletes an Application Insights component.", + "operationId": "Components_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Application Insights component." + }, + "204": { + "description": "The specified component does not exist." + } + }, + "x-ms-examples": { + "ComponentsDelete": { + "$ref": "./examples/ComponentsDelete.json" + } + } + }, + "get": { + "description": "Returns an Application Insights component.", + "operationId": "Components_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "An Application Insights Component definition.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentGet": { + "$ref": "./examples/ComponentsGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "Components_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "InsightProperties", + "description": "Properties that need to be specified to create an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating an Application Insights component. The updated component is returned.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "201": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentCreate": { + "$ref": "./examples/ComponentsCreate.json" + }, + "ComponentUpdate": { + "$ref": "./examples/ComponentsUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing component's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "Components_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "ComponentTags", + "description": "Updated tag information to set into the component instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "201": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentUpdateTagsOnly": { + "$ref": "./examples/ComponentsUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { + "post": { + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Application Insights component.", + "schema": { + "$ref": "#/definitions/ComponentPurgeResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/operations/{purgeId}": { + "get": { + "description": "Get status for an ongoing purge operation.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/ComponentPurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } + } + }, + "definitions": { + "ComponentsResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a WebTest instance." + }, + "ApplicationInsightsComponent": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of application that this component refers to, used to customize UI. This value is a freeform string, values should typically be one of the following: web, ios, other, store, java, phone." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Application Insights component resource.", + "$ref": "#/definitions/ApplicationInsightsComponentProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ComponentsResource" + } + ], + "required": [ + "kind" + ], + "description": "An Application Insights component definition." + }, + "ApplicationInsightsComponentProperties": { + "description": "Properties that define an Application Insights component resource.", + "properties": { + "ApplicationId": { + "type": "string", + "description": "The unique ID of your application. This field mirrors the 'Name' field and cannot be changed.", + "readOnly": true + }, + "AppId": { + "type": "string", + "readOnly": true, + "description": "Application Insights Unique ID for your Application." + }, + "Application_Type": { + "type": "string", + "description": "Type of application being monitored.", + "default": "web", + "enum": [ + "web", + "other" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "Flow_Type": { + "type": "string", + "description": "Used by the Application Insights system to determine what kind of flow this component was created by. This is to be set to 'Bluefield' when creating/updating a component via the REST API.", + "default": "Bluefield", + "enum": [ + "Bluefield" + ], + "x-ms-enum": { + "name": "FlowType", + "modelAsString": true + } + }, + "Request_Source": { + "type": "string", + "description": "Describes what tool created this Application Insights component. Customers using this API should set this to the default 'rest'.", + "default": "rest", + "enum": [ + "rest" + ], + "x-ms-enum": { + "name": "RequestSource", + "modelAsString": true + } + }, + "InstrumentationKey": { + "type": "string", + "readOnly": true, + "description": "Application Insights Instrumentation key. A read-only value that applications can use to identify the destination for all telemetry sent to Azure Application Insights. This value will be supplied upon construction of each new Application Insights component." + }, + "CreationDate": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Application Insights component, in ISO 8601 format.", + "format": "date-time" + }, + "TenantId": { + "type": "string", + "readOnly": true, + "description": "Azure Tenant Id." + }, + "HockeyAppId": { + "type": "string", + "description": "The unique application ID created when a new application is added to HockeyApp, used for communications with HockeyApp.", + "externalDocs": { + "url": "https://aka.ms/ewjuel" + } + }, + "HockeyAppToken": { + "type": "string", + "description": "Token used to authenticate communications with between Application Insights and HockeyApp.", + "readOnly": true, + "externalDocs": { + "url": "https://aka.ms/sls76s" + } + }, + "provisioningState": { + "type": "string", + "description": "Current state of this component: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + }, + "SamplingPercentage": { + "type": "number", + "format": "double", + "description": "Percentage of the data produced by the application being monitored that is being sampled for Application Insights telemetry.", + "externalDocs": { + "url": "https://aka.ms/sl0yqd" + } + }, + "ConnectionString": { + "type": "string", + "readOnly": true, + "description": "Application Insights component connection string." + }, + "RetentionInDays": { + "type": "integer", + "description": "Retention period in days.", + "default": 90 + }, + "DisableIpMasking": { + "type": "boolean", + "description": "Disable IP masking." + }, + "ImmediatePurgeDataOn30Days": { + "type": "boolean", + "description": "Purge data immediately after 30 days." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Application Insights ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Application Insights query.", + "$ref": "#/definitions/PublicNetworkAccessType" + } + }, + "required": [ + "Application_Type" + ] + }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "ApplicationInsightsComponentListResult": { + "description": "Describes the list of Application Insights Resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Application Insights component definitions.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." + } + } + }, + "ComponentPurgeBody": { + "description": "Describes the body of a purge request for an App Insights component", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/ComponentPurgeBodyFilters" + } + } + } + }, + "ComponentPurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "ComponentPurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "ComponentPurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Application Insights Component. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Application Insights through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Application Insights through public DNS." + } + ] + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "ComponentPurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Application Insights component", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentPurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "ComponentPurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsCreate.json new file mode 100644 index 000000000000..17a28fdee20e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsCreate.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "properties": { + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsDelete.json new file mode 100644 index 000000000000..523972ebd3d7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsGet.json new file mode 100644 index 000000000000..3ace22b9672d --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsList.json new file mode 100644 index 000000000000..281a057d8188 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 75.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 30.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsListByResourceGroup.json new file mode 100644 index 000000000000..cee24e3764c9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsListByResourceGroup.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 50.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurge.json new file mode 100644 index 000000000000..181a3fffda45 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2015-03-20", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.insights/components/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2018-05-01-preview" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..43af39e5e253 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsPurgeStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2018-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdate.json new file mode 100644 index 000000000000..b9df659a3d3f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdateTagsOnly.json new file mode 100644 index 000000000000..9d8d07877055 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ComponentsUpdateTagsOnly.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "ComponentTags": { + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationGet.json similarity index 100% rename from specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationGet.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationGet.json diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationUpdate.json similarity index 98% rename from specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationUpdate.json index fe45f18b7301..67b1b1f8ba85 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationUpdate.json @@ -9,7 +9,6 @@ "name": "slowpageloadtime", "location": "South Central US", "properties": { - "Name": "slowpageloadtime", "Enabled": true, "SendEmailsToSubscriptionOwners": true, "CustomEmails": [ diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationsList.json similarity index 100% rename from specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationsList.json rename to specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01-preview/examples/ProactiveDetectionConfigurationsList.json diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json new file mode 100644 index 000000000000..71cb6350a36c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json @@ -0,0 +1,690 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for Components", + "version": "2020-02-02-preview" + }, + "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.Insights/components": { + "get": { + "description": "Gets a list of all Application Insights components within a subscription.", + "operationId": "Components_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentsList.json": { + "$ref": "./examples/ComponentsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of Application Insights components within a resource group.", + "operationId": "Components_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentListByResourceGroup": { + "$ref": "./examples/ComponentsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { + "delete": { + "description": "Deletes an Application Insights component.", + "operationId": "Components_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Application Insights component." + }, + "204": { + "description": "The specified component does not exist." + } + }, + "x-ms-examples": { + "ComponentsDelete": { + "$ref": "./examples/ComponentsDelete.json" + } + } + }, + "get": { + "description": "Returns an Application Insights component.", + "operationId": "Components_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "An Application Insights Component definition.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentGet": { + "$ref": "./examples/ComponentsGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "Components_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "InsightProperties", + "description": "Properties that need to be specified to create an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating an Application Insights component. The updated component is returned.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentCreate": { + "$ref": "./examples/ComponentsCreate.json" + }, + "ComponentUpdate": { + "$ref": "./examples/ComponentsUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing component's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "Components_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "ComponentTags", + "description": "Updated tag information to set into the component instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentUpdateTagsOnly": { + "$ref": "./examples/ComponentsUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { + "post": { + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Application Insights component.", + "schema": { + "$ref": "#/definitions/ComponentPurgeResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/operations/{purgeId}": { + "get": { + "description": "Get status for an ongoing purge operation.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/ComponentPurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } + } + }, + "definitions": { + "ComponentsResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a WebTest instance." + }, + "ApplicationInsightsComponent": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of application that this component refers to, used to customize UI. This value is a freeform string, values should typically be one of the following: web, ios, other, store, java, phone." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Application Insights component resource.", + "$ref": "#/definitions/ApplicationInsightsComponentProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ComponentsResource" + } + ], + "required": [ + "kind" + ], + "description": "An Application Insights component definition." + }, + "ApplicationInsightsComponentProperties": { + "description": "Properties that define an Application Insights component resource.", + "properties": { + "ApplicationId": { + "type": "string", + "description": "The unique ID of your application. This field mirrors the 'Name' field and cannot be changed.", + "readOnly": true + }, + "AppId": { + "type": "string", + "readOnly": true, + "description": "Application Insights Unique ID for your Application." + }, + "Application_Type": { + "type": "string", + "description": "Type of application being monitored.", + "default": "web", + "enum": [ + "web", + "other" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "Flow_Type": { + "type": "string", + "description": "Used by the Application Insights system to determine what kind of flow this component was created by. This is to be set to 'Bluefield' when creating/updating a component via the REST API.", + "default": "Bluefield", + "enum": [ + "Bluefield" + ], + "x-ms-enum": { + "name": "FlowType", + "modelAsString": true + } + }, + "Request_Source": { + "type": "string", + "description": "Describes what tool created this Application Insights component. Customers using this API should set this to the default 'rest'.", + "default": "rest", + "enum": [ + "rest" + ], + "x-ms-enum": { + "name": "RequestSource", + "modelAsString": true + } + }, + "InstrumentationKey": { + "type": "string", + "readOnly": true, + "description": "Application Insights Instrumentation key. A read-only value that applications can use to identify the destination for all telemetry sent to Azure Application Insights. This value will be supplied upon construction of each new Application Insights component." + }, + "CreationDate": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Application Insights component, in ISO 8601 format.", + "format": "date-time" + }, + "TenantId": { + "type": "string", + "readOnly": true, + "description": "Azure Tenant Id." + }, + "HockeyAppId": { + "type": "string", + "description": "The unique application ID created when a new application is added to HockeyApp, used for communications with HockeyApp.", + "externalDocs": { + "url": "https://aka.ms/ewjuel" + } + }, + "HockeyAppToken": { + "type": "string", + "description": "Token used to authenticate communications with between Application Insights and HockeyApp.", + "readOnly": true, + "externalDocs": { + "url": "https://aka.ms/sls76s" + } + }, + "provisioningState": { + "type": "string", + "description": "Current state of this component: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + }, + "SamplingPercentage": { + "type": "number", + "format": "double", + "description": "Percentage of the data produced by the application being monitored that is being sampled for Application Insights telemetry.", + "externalDocs": { + "url": "https://aka.ms/sl0yqd" + } + }, + "ConnectionString": { + "type": "string", + "readOnly": true, + "description": "Application Insights component connection string." + }, + "RetentionInDays": { + "type": "integer", + "description": "Retention period in days.", + "readOnly": true + }, + "DisableIpMasking": { + "type": "boolean", + "description": "Disable IP masking." + }, + "ImmediatePurgeDataOn30Days": { + "type": "boolean", + "description": "Purge data immediately after 30 days." + }, + "WorkspaceResourceId": { + "type": "string", + "description": "ResourceId of the log analytics workspace which the data will be ingested to." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Application Insights ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Application Insights query.", + "$ref": "#/definitions/PublicNetworkAccessType" + } + }, + "required": [ + "Application_Type", + "WorkspaceResourceId" + ] + }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "ApplicationInsightsComponentListResult": { + "description": "Describes the list of Application Insights Resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Application Insights component definitions.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." + } + } + }, + "ComponentPurgeBody": { + "description": "Describes the body of a purge request for an App Insights component", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/ComponentPurgeBodyFilters" + } + } + } + }, + "ComponentPurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "ComponentPurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "ComponentPurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Application Insights Component. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Application Insights through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Application Insights through public DNS." + } + ] + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "ComponentPurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Application Insights component", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentPurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "ComponentPurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json new file mode 100644 index 000000000000..b60e0da5861a --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "properties": { + "Application_Type": "web", + "Flow_Type": "Bluefield", + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "Request_Source": "rest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json new file mode 100644 index 000000000000..ad8c111fcdba --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json new file mode 100644 index 000000000000..8dc5e137725f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json new file mode 100644 index 000000000000..1a0e3d80e2eb --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 75.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 30.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json new file mode 100644 index 000000000000..93423a2b9955 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 50.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json new file mode 100644 index 000000000000..7d4def360af2 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.insights/components/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2015-05-01" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..c288ee449b8e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json new file mode 100644 index 000000000000..e02186407ca7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json new file mode 100644 index 000000000000..806476c3cf96 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "ComponentTags": { + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json new file mode 100644 index 000000000000..7bcea7f72ba3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json @@ -0,0 +1,294 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for web test results.", + "version": "2020-02-10-preview" + }, + "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": { + "/providers/microsoft.insights/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations.", + "description": "List the available operations supported by the Microsoft.EventGrid resource provider.", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.insights/webtests/{webTestName}/getTestResultFile": { + "post": { + "tags": [ + "WebTests_GetTestResultFile" + ], + "operationId": "getTestResultFile", + "description": "Returns a file test result for the matching test", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/WebTestNameParameter" + }, + { + "$ref": "#/parameters/GeolocationIdParameter" + }, + { + "$ref": "#/parameters/TimeStampParameter" + }, + { + "$ref": "#/parameters/DownloadAsParameter" + }, + { + "$ref": "#/parameters/TestSuccessfulCriteriaParameter" + }, + { + "$ref": "#/parameters/ContinuationTokenParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestResultFileResponse" + } + } + }, + "x-ms-examples": { + "Example Get call:": { + "$ref": "./examples/WebTestResultsTestResultFile.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "TestResultFileResponse": { + "description": "Test result.", + "type": "object", + "properties": { + "data": { + "description": "File contents.", + "type": "string" + }, + "nextLink": { + "description": "The URI that can be used to request the next section of the result file in the event the file is too large for a single request.", + "type": "string" + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + } + }, + "parameters": { + "WebTestNameParameter": { + "name": "webTestName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights webtest resource.", + "x-ms-parameter-location": "method" + }, + "GeolocationIdParameter": { + "name": "geoLocationId", + "in": "query", + "required": true, + "type": "string", + "description": "The location ID where the webtest was physically run.", + "x-ms-parameter-location": "method" + }, + "TimeStampParameter": { + "name": "timeStamp", + "in": "query", + "required": true, + "type": "integer", + "format": "int64", + "description": "The posix (epoch) time stamp for the webtest result.", + "x-ms-parameter-location": "method" + }, + "DownloadAsParameter": { + "name": "downloadAs", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "WebTestResult", + "Json" + ], + "x-ms-enum": { + "name": "downloadAs", + "modelAsString": true, + "values": [ + { + "value": "WebTestResult", + "description": "Returned file will be in visual studio webtestresult file format." + }, + { + "value": "Json", + "description": "Returned file will be in json file format." + } + ] + }, + "description": "The format to use when returning the webtest result.", + "x-ms-parameter-location": "method" + }, + "TestSuccessfulCriteriaParameter": { + "name": "testSuccessfulCriteria", + "in": "query", + "required": false, + "type": "boolean", + "description": "The success state criteria for the webtest result.", + "x-ms-parameter-location": "method" + }, + "ContinuationTokenParameter": { + "name": "continuationToken", + "in": "query", + "required": false, + "type": "string", + "description": "The continuation token.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/Operations_List.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/Operations_List.json new file mode 100644 index 000000000000..583aa46d8850 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/Operations_List.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-02-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "microsoft.insights/webtests/gettestresultfile", + "display": { + "provider": "Microsoft Container Instance", + "resource": "webtests", + "operation": "Get test results file", + "description": "Get the requested webtest result" + }, + "origin": "User" + } + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/WebTestResultsTestResultFile.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/WebTestResultsTestResultFile.json new file mode 100644 index 000000000000..31dc3c9e7a99 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-10-preview/examples/WebTestResultsTestResultFile.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-02-10-preview", + "subscriptionId": "123subid", + "resourceGroupName": "myresourcegroup", + "webTestName": "my-test-name", + "geoLocationId": "brs", + "timeStamp": 1566819054, + "downloadAs": "WebTestResult", + "testSuccessfulCriteria": true, + "continuationToken": "0" + }, + "responses": { + "200": { + "body": { + "data": "xxxxxxxxxx", + "nextLink": "https://management.azure.com/subscriptions/123subid/resourcegroups/myresourcegroup/providers/microsoft.insights/webtests/my-test-name/testresultfile?geoLocationId=brs×tamp=1566823240&downloadAs=webtestresult&testSuccessfulCriteria=true&continuationToken=10&api-version=2020-10-01-preview" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json index 6bdbfd715db4..22fcf9bfa10f 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json @@ -217,11 +217,11 @@ }, "definitions": { "ErrorResponse": { - "description": "Describe the format of an Error response.", + "description": "Error response indicates Insights service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { - "description": "Error code", + "description": "Error code.", "type": "string" }, "message": { @@ -282,7 +282,14 @@ "in": "path", "required": true, "type": "string", - "description": "The type of the Application Insights component linked storage account.", + "enum": [ + "ServiceProfiler" + ], + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + }, + "description": "The type of the Application Insights component data source for the linked storage account.", "x-ms-parameter-location": "method" } } diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json index b7b464c0f018..8283ea527f45 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json @@ -4,7 +4,7 @@ "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", "resourceGroupName": "someResourceGroupName", "resourceName": "myComponent", - "storageType": "serviceprofiler", + "storageType": "ServiceProfiler", "LinkedStorageAccountsProperties": { "properties": { "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json index 55cba7ebe2a9..1dfd3f4e1e99 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json @@ -4,7 +4,7 @@ "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", "resourceGroupName": "someResourceGroupName", "resourceName": "myComponent", - "storageType": "serviceprofiler" + "storageType": "ServiceProfiler" }, "responses": { "200": {}, diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json index 6f36db8d5000..dedc1b4aa6f0 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json @@ -4,7 +4,7 @@ "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", "resourceGroupName": "someResourceGroupName", "resourceName": "myComponent", - "storageType": "serviceprofiler" + "storageType": "ServiceProfiler" }, "responses": { "200": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json index 4b73bb4c01da..e73f9d2db797 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json @@ -4,7 +4,7 @@ "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", "resourceGroupName": "someResourceGroupName", "resourceName": "myComponent", - "storageType": "serviceprofiler", + "storageType": "ServiceProfiler", "LinkedStorageAccountsProperties": { "properties": { "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json index 57efc81be161..507d3910d1b1 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json @@ -504,12 +504,33 @@ "ImmediatePurgeDataOn30Days": { "type": "boolean", "description": "Purge data immediately after 30 days." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." } }, "required": [ "Application_Type" ] }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, "ApplicationInsightsComponentListResult": { "description": "Describes the list of Application Insights Resources.", "required": [ diff --git a/specification/applicationinsights/resource-manager/readme.cli.md b/specification/applicationinsights/resource-manager/readme.cli.md index 2a960a54e8f3..83a1230535f3 100644 --- a/specification/applicationinsights/resource-manager/readme.cli.md +++ b/specification/applicationinsights/resource-manager/readme.cli.md @@ -15,17 +15,17 @@ cli: - select: 'operation' where: operationGroup: 'components' - operation: '^(delete|purge|get_purge_status)$' + operation: '^(delete|purge|getPurgeStatus)$' removed: true - select: 'operation' where: - operationGroup: 'API_keys' + operationGroup: 'APIkeys' operation: 'create|delete' removed: true - select: 'operation' where: operationGorup: 'components' - operation: 'update_tags' + operation: 'updateTags' removed: true - select: 'operationGroup' where: @@ -34,11 +34,11 @@ cli: - select: 'operation' where: operationGroup: 'components' - operation: 'get|create_or_update' + operation: 'get|createOrUpdate' hidden: true - select: 'operation' where: - operatoinGroup: 'API_keys' + operatoinGroup: 'APIKeys' operation: 'get' hidden: true ``` \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 5f72c85b3d6f..b01e064aecde 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for ApplicationInsights. - - --- + ## Getting Started + To build the SDK for ApplicationInsights, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,6 +15,7 @@ To build the SDK for ApplicationInsights, simply [Install AutoRest](https://aka. To see additional help and options, run: > `autorest --help` + --- ## Configuration @@ -27,7 +28,7 @@ These are the global settings for the ApplicationInsights API. title: ApplicationInsightsManagementClient description: Composite Swagger for Application Insights Management Client openapi-type: arm -tag: package-2015-05 +tag: package-preview-2020-02 ``` ## Suppression @@ -237,6 +238,15 @@ directive: reason: There are a bug in this rule. "ExportConfigurations_Create" is a valid operation id. ``` + +### Tag: package-preview-2020-02 + +These settings apply only when `--tag=package-preview-2020-02` is specified on the command line. + +```yaml $(tag) == 'package-preview-2020-02' +input-file: + - Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json +``` ### Tag: package-2015-05 These settings apply only when `--tag=package-2015-05` is specified on the command line. @@ -281,7 +291,7 @@ input-file: These settings apply only when `--tag=package-2019-10-17-preview` is specified on the command line. -```yaml $(tag) == 'package-2019-10-17-preview' +``` yaml $(tag) == 'package-2019-10-17-preview' input-file: - Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json ``` @@ -292,7 +302,8 @@ These settings apply only when `--tag=package-2018-05-01-preview` is specified o ``` yaml $(tag) == 'package-2018-05-01-preview' input-file: -- Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json +- Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json +- Microsoft.Insights/preview/2018-05-01-preview/components_API.json ``` ### Tag: package-2019-09-01-preview @@ -305,6 +316,15 @@ input-file: - Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json ``` +### Tag: package-2020-02-02-preview + +These settings apply only when `--tag=package-2020-02-02-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02-preview' +input-file: +- Microsoft.Insights/preview/2020-02-02-preview/components_API.json +``` + ### Tag: package-2020-03-01-preview These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. @@ -314,6 +334,28 @@ input-file: - Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. For Dotnet SDK generation. + +``` yaml $(tag) == 'package-2020-04' +input-file: +- Microsoft.Insights/stable/2015-05-01/aiOperations_API.json +- Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json +- Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json +- Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json +- Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json +- Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json +- Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json +- Microsoft.Insights/stable/2015-05-01/favorites_API.json +- Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json +- Microsoft.Insights/stable/2015-05-01/webTests_API.json +- Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json +- Microsoft.Insights/stable/2015-05-01/workbooks_API.json +- Microsoft.Insights/preview/2018-05-01-preview/components_API.json +- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json +``` + --- # Code Generation @@ -327,6 +369,8 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + after_scripts: + - python ./scripts/multiapi_init_gen.py --default-api-version=2020-03-01-preview azure-mgmt-applicationinsights - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -337,6 +381,10 @@ swagger-to-sdk: See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## C# These settings apply only when `--csharp` is specified on the command line. @@ -407,6 +455,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json @@ -424,9 +473,11 @@ input-file: - $(this-folder)/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json - $(this-folder)/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json + - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json + - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/components_API.json - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json + - $(this-folder)/Microsoft.Insights/preview/2020-02-02-preview/components_API.json - $(this-folder)/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` diff --git a/specification/applicationinsights/resource-manager/readme.python.md b/specification/applicationinsights/resource-manager/readme.python.md index 6fb710f291aa..97df9d6f8c3b 100644 --- a/specification/applicationinsights/resource-manager/readme.python.md +++ b/specification/applicationinsights/resource-manager/readme.python.md @@ -1,27 +1,111 @@ ## Python +## python These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +```yaml $(python) python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: azure.mgmt.applicationinsights package-name: azure-mgmt-applicationinsights - package-version: 0.2.0 clear-output-folder: true + no-namespace-folders: true +``` +### Python multi-api + +``` yaml $(python) && $(multiapi) +batch: + - tag: package-2015-05 + - tag: package-2017-10 + - tag: package-2018-05-01-preview + - tag: package-2018-06-17-preview + - tag: package-2019-09-01-preview + - tag: package-2019-10-17-preview + - tag: package-2020-02-02-preview + - tag: package-2020-03-01-preview ``` -``` yaml $(python) && $(python-mode) == 'update' + +### Tag: package-2015-05 and python + +These settings apply only when `--tag=package-2015-05 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2015-05' && $(python) python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights + namespace: azure.mgmt.applicationinsights.v2015_05_01 + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2015_05_01 +``` + +### Tag: package-2017-10 and python + +These settings apply only when `--tag=package-2017-10 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2017-10' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2017_10_01 + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2017_10_01 ``` -``` yaml $(python) && $(python-mode) == 'create' + +### Tag: package-2018-06-17-preview and python + +These settings apply only when `--tag=package-2018-06-17-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2018-06-17-preview' && $(python) python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights + namespace: azure.mgmt.applicationinsights.v2018_06_17_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2018_06_17_preview ``` + +### Tag: package-2019-10-17-preview and python + +These settings apply only when `--tag=package-2019-10-17-preview --python` is specified on the command line. + +```yaml $(tag) == 'package-2019-10-17-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2019_10_17_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2019_10_17_preview +``` + +### Tag: package-2018-05-01-preview and python + +These settings apply only when `--tag=package-2018-05-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2018-05-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2018_05_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2018_05_01_preview +``` + +### Tag: package-2019-09-01-preview and python + +These settings apply only when `--tag=package-2019-09-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2019_09_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2019_09_01_preview +``` + +### Tag: package-2020-02-02-preview and python + +These settings apply only when `--tag=package-2020-02-02-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2020_02_02_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_02_02_preview +``` + +### Tag: package-2020-03-01-preview and python + +These settings apply only when `--tag=package-2020-03-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2020_03_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_03_01_preview +``` + + + diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json index dd653a2a7d6f..5f51a46af56f 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json @@ -88,7 +88,7 @@ ], "responses": { "201": { - "description": "Created. The response describes the new Service and contains a Location header to query the operation result.", + "description": "Created. The response describes the new Service and contains a Location header to query the\r\noperation result.", "schema": { "$ref": "#/definitions/ServiceResource" } @@ -197,7 +197,7 @@ } }, "202": { - "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location header to query the operation result.", + "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location\r\nheader to query the operation result.", "schema": { "$ref": "#/definitions/ServiceResource" } @@ -400,13 +400,6 @@ "description": "Get an App and its properties.", "operationId": "Apps_Get", "parameters": [ - { - "name": "syncStatus", - "in": "query", - "description": "Indicates whether sync status", - "required": false, - "type": "string" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -421,6 +414,13 @@ }, { "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "syncStatus", + "in": "query", + "description": "Indicates whether sync status", + "required": false, + "type": "string" } ], "responses": { @@ -743,8 +743,497 @@ } }, "x-ms-examples": { - "Bindings_Get": { - "$ref": "./examples/Bindings_Get.json" + "Bindings_Get": { + "$ref": "./examples/Bindings_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new Binding or update an exiting Binding.", + "operationId": "Bindings_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the created or updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_CreateOrUpdate": { + "$ref": "./examples/Bindings_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete a Binding.", + "operationId": "Bindings_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + } + ], + "responses": { + "204": { + "description": "Success. The response indicates the resource doesn't exist." + }, + "200": { + "description": "Success. The response indicates the resource is deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_Delete": { + "$ref": "./examples/Bindings_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting Binding.", + "operationId": "Bindings_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_Update": { + "$ref": "./examples/Bindings_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in an App.", + "operationId": "Bindings_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Bindings in the App.", + "schema": { + "$ref": "#/definitions/BindingResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Bindings_List": { + "$ref": "./examples/Bindings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the certificate resource.", + "operationId": "Certificates_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the certificate.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/Certificates_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create or update certificate resource.", + "operationId": "Certificates_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "name": "certificateResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the existed certificate updated.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/Certificates_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Delete the certificate resource.", + "operationId": "Certificates_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the certificate deleted." + }, + "204": { + "description": "No content. The response indicates the certificate doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/Certificates_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "List all the certificates of one user.", + "operationId": "Certificates_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain resource list of one application.", + "schema": { + "$ref": "#/definitions/CertificateResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Certificates_List": { + "$ref": "./examples/Certificates_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Checks that the resource name is valid and is not already in use.", + "operationId": "Services_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "the region", + "required": true, + "type": "string" + }, + { + "name": "availabilityParameters", + "in": "body", + "description": "Parameters supplied to the operation.", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_CheckNameAvailability": { + "$ref": "./examples/Services_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains/{domainName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" } } }, @@ -752,8 +1241,8 @@ "tags": [ "AppPlatform" ], - "description": "Create a new Binding or update an exiting Binding.", - "operationId": "Bindings_CreateOrUpdate", + "description": "Create or update custom domain of one lifecycle application.", + "operationId": "CustomDomains_CreateOrUpdate", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -771,23 +1260,23 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" }, { - "name": "bindingResource", + "name": "domainResource", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } } ], "responses": { "200": { - "description": "Success. The response describes the created or updated Binding.", + "description": "Success. The response describe the existed custom domain updated.", "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } }, "default": { @@ -798,8 +1287,8 @@ } }, "x-ms-examples": { - "Bindings_CreateOrUpdate": { - "$ref": "./examples/Bindings_CreateOrUpdate.json" + "CustomDomains_CreateOrUpdate": { + "$ref": "./examples/CustomDomains_CreateOrUpdate.json" } } }, @@ -807,8 +1296,8 @@ "tags": [ "AppPlatform" ], - "description": "Operation to delete a Binding.", - "operationId": "Bindings_Delete", + "description": "Delete the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -826,15 +1315,15 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" } ], "responses": { - "204": { - "description": "Success. The response indicates the resource doesn't exist." - }, "200": { - "description": "Success. The response indicates the resource is deleted." + "description": "Success. The response indicates the custom domain deleted." + }, + "204": { + "description": "No content. The response indicates the custom domain doesn't exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -844,8 +1333,8 @@ } }, "x-ms-examples": { - "Bindings_Delete": { - "$ref": "./examples/Bindings_Delete.json" + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" } } }, @@ -853,8 +1342,8 @@ "tags": [ "AppPlatform" ], - "description": "Operation to update an exiting Binding.", - "operationId": "Bindings_Update", + "description": "Update custom domain of one lifecycle application.", + "operationId": "CustomDomains_Patch", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -872,23 +1361,23 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" }, { - "name": "bindingResource", + "name": "domainResource", "in": "body", - "description": "Parameters for the update operation", + "description": "Parameters for the create or update operation", "required": true, "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } } ], "responses": { "200": { - "description": "Success. The response describes the updated Binding.", + "description": "Success. The response describe the existed custom domain updated.", "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } }, "default": { @@ -899,19 +1388,19 @@ } }, "x-ms-examples": { - "Bindings_Update": { - "$ref": "./examples/Bindings_Update.json" + "CustomDomains_Patch": { + "$ref": "./examples/CustomDomains_Patch.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains": { "get": { "tags": [ "AppPlatform" ], - "description": "Handles requests to list all resources in an App.", - "operationId": "Bindings_List", + "description": "List the custom domains of one lifecycle application.", + "operationId": "CustomDomains_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -931,9 +1420,9 @@ ], "responses": { "200": { - "description": "Success. The response describes the list of Bindings in the App.", + "description": "Success. The response describe the custom domain resource list of one application.", "schema": { - "$ref": "#/definitions/BindingResourceCollection" + "$ref": "#/definitions/CustomDomainResourceCollection" } }, "default": { @@ -947,27 +1436,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "Bindings_List": { - "$ref": "./examples/Bindings_List.json" + "CustomDomains_List": { + "$ref": "./examples/CustomDomains_List.json" } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/locations/{location}/checkNameAvailability": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains/validate": { "post": { "tags": [ "AppPlatform" ], - "description": "Checks that the resource name is valid and is not already in use.", - "operationId": "Services_CheckNameAvailability", + "description": "Check the resource name is valid as well as not in use.", + "operationId": "CustomDomains_Validate", "parameters": [ - { - "name": "location", - "in": "path", - "description": "the region", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -975,20 +1457,28 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "availabilityParameters", + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "validatePayload", "in": "body", - "description": "Parameters supplied to the operation.", "required": true, "schema": { - "$ref": "#/definitions/NameAvailabilityParameters" + "$ref": "#/definitions/CustomDomainValidatePayload" } } ], "responses": { "200": { - "description": "Success. The response describes the name availability.", + "description": "Success. The response describe the name is available.", "schema": { - "$ref": "#/definitions/NameAvailability" + "$ref": "#/definitions/CustomDomainValidateResult" } }, "default": { @@ -999,8 +1489,8 @@ } }, "x-ms-examples": { - "Services_CheckNameAvailability": { - "$ref": "./examples/Services_CheckNameAvailability.json" + "CustomDomains_Validate": { + "$ref": "./examples/CustomDomains_Validate.json" } } } @@ -1237,18 +1727,6 @@ "description": "Handles requests to list all resources in an App.", "operationId": "Deployments_List", "parameters": [ - { - "name": "version", - "in": "query", - "description": "Version of the deployments to be listed", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "uniqueItems": false - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1263,6 +1741,18 @@ }, { "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false } ], "responses": { @@ -1297,18 +1787,6 @@ "description": "List deployments for a certain service", "operationId": "Deployments_ListClusterAllDeployments", "parameters": [ - { - "name": "version", - "in": "query", - "description": "Version of the deployments to be listed", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "uniqueItems": false - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1320,6 +1798,18 @@ }, { "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false } ], "responses": { @@ -2043,6 +2533,10 @@ "$ref": "#/definitions/AppResourceProperties", "description": "Properties of the App resource", "x-ms-client-flatten": false + }, + "location": { + "description": "The GEO location of the application, always the same with its parent resource", + "type": "string" } } }, @@ -2088,6 +2582,14 @@ "description": "Name of the active deployment of the App", "type": "string" }, + "fqdn": { + "description": "Fully qualified dns Name.", + "type": "string" + }, + "httpsOnly": { + "description": "Indicate if only https is allowed.", + "type": "boolean" + }, "createdTime": { "format": "date-time", "description": "Date time when the resource is created", @@ -2256,6 +2758,101 @@ } } }, + "CertificateResource": { + "description": "Certificate resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties", + "description": "Properties of the certificate resource payload.", + "x-ms-client-flatten": false + } + } + }, + "CertificateProperties": { + "description": "Certificate resource payload.", + "required": [ + "vaultUri", + "keyVaultCertName" + ], + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of certificate.", + "type": "string", + "readOnly": true + }, + "vaultUri": { + "description": "The vault uri of user key vault.", + "type": "string" + }, + "keyVaultCertName": { + "description": "The certificate name of key vault.", + "type": "string" + }, + "certVersion": { + "description": "The certificate version of key vault.", + "type": "string" + }, + "issuer": { + "description": "The issuer of certificate.", + "type": "string", + "readOnly": true + }, + "issuedDate": { + "description": "The issue date of certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "The expiration date of certificate.", + "type": "string", + "readOnly": true + }, + "activateDate": { + "description": "The activate date of certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "The subject name of certificate.", + "type": "string", + "readOnly": true + }, + "dnsNames": { + "description": "The domain list of certificate.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "CertificateResourceCollection": { + "description": "Collection compose of certificate resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The certificate resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CertificateResource" + } + }, + "nextLink": { + "description": "The link to next page of certificate list.", + "type": "string" + } + } + }, "NameAvailabilityParameters": { "description": "Name availability parameters payload", "required": [ @@ -2293,6 +2890,85 @@ }, "readOnly": true }, + "CustomDomainResource": { + "description": "Custom domain resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomDomainProperties", + "description": "Properties of the custom domain resource.", + "x-ms-client-flatten": false + } + } + }, + "CustomDomainProperties": { + "description": "Custom domain of app resource payload.", + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of bound certificate.", + "type": "string" + }, + "appName": { + "description": "The app name of domain.", + "type": "string" + }, + "certName": { + "description": "The bound certificate name of domain.", + "type": "string" + } + } + }, + "CustomDomainResourceCollection": { + "description": "Collection compose of a custom domain resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The custom domain resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "nextLink": { + "description": "The link to next page of custom domain list.", + "type": "string" + } + } + }, + "CustomDomainValidatePayload": { + "description": "Custom domain validate payload.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Name to be validated", + "type": "string" + } + } + }, + "CustomDomainValidateResult": { + "description": "Validation result for custom domain.", + "type": "object", + "properties": { + "isValid": { + "description": "Indicates if domain name is valid.", + "type": "boolean" + }, + "message": { + "description": "Message of why domain name is invalid.", + "type": "string" + } + } + }, "DeploymentResource": { "description": "Deployment resource payload", "type": "object", @@ -2322,6 +2998,10 @@ "type": "string", "readOnly": true }, + "deploymentSettings": { + "$ref": "#/definitions/DeploymentSettings", + "description": "Deployment settings of the Deployment" + }, "provisioningState": { "description": "Provisioning state of the Deployment", "enum": [ @@ -2337,10 +3017,6 @@ "modelAsString": true } }, - "deploymentSettings": { - "$ref": "#/definitions/DeploymentSettings", - "description": "Deployment settings of the Deployment" - }, "status": { "description": "Status of the Deployment", "enum": [ @@ -2565,7 +3241,7 @@ "description": "Name of the operation", "type": "string" }, - "dataAction": { + "isDataAction": { "description": "Indicates whether the operation is a data action", "type": "boolean" }, @@ -2819,6 +3495,22 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "CustomDomainNameParameter": { + "name": "domainName", + "in": "path", + "description": "The name of the custom domain resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CertificateNameParameter": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json index 3953ce2d62dd..8145e8e44747 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json @@ -4,6 +4,8 @@ "properties": { "public": true, "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -12,7 +14,8 @@ "sizeInGB": 2, "mountPath": "mypersistentdisk" } - } + }, + "location": "eastus" }, "api-version": "2019-05-01-preview", "subscriptionId": "00000000-0000-0000-0000-000000000000", @@ -28,6 +31,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -39,6 +44,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } @@ -50,6 +56,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Creating", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -61,6 +69,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json index 68283a0f5fcc..abdcd6fbd998 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json @@ -14,6 +14,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -25,6 +27,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json index 723ee8f81eaa..0e9002ad0c77 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json @@ -15,6 +15,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -26,6 +28,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json index 61098e74fccf..2ad43819f26f 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json @@ -4,6 +4,8 @@ "properties": { "public": true, "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -12,7 +14,8 @@ "sizeInGB": 2, "mountPath": "mypersistentdisk" } - } + }, + "location": "eastus" }, "api-version": "2019-05-01-preview", "subscriptionId": "00000000-0000-0000-0000-000000000000", @@ -28,6 +31,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -39,6 +44,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } @@ -50,6 +56,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Updating", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -61,6 +69,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json new file mode 100644 index 000000000000..b25bf2082651 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "certificateResource": { + "properties": { + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json new file mode 100644 index 000000000000..6c22ffd192b4 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json new file mode 100644 index 000000000000..7b39fefc11bf --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json new file mode 100644 index 000000000000..7e234639163e --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json new file mode 100644 index 000000000000..213fb3296173 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..3aa0a88d3b06 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..767c3f6ab672 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json new file mode 100644 index 000000000000..5bce55c10283 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json new file mode 100644 index 000000000000..213fb3296173 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json new file mode 100644 index 000000000000..ee7e015c7316 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "validatePayload": { + "name": "mydomain.io" + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "isValid": false, + "message": "Certificate is invalid, please check if it is a self signed cert or if it contains a suitable dns name" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json index ffd1595b373f..0204c12e6e2b 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json @@ -39,7 +39,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Updating", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -50,7 +49,8 @@ }, "runtimeVersion": "Java_8" }, - "status": "Compiling", + "provisioningState": "Creating", + "status": "Running", "active": false, "instances": [ { @@ -75,7 +75,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -86,6 +85,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json index 62c9eb162cfe..e574a0dea582 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json @@ -18,7 +18,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -29,6 +28,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json index d5760260e674..221113ccf649 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json @@ -19,7 +19,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -30,6 +29,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json index d5760260e674..221113ccf649 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json @@ -19,7 +19,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -30,6 +29,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json index 6cb1ff97128e..4a778752688a 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json @@ -29,7 +29,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -40,6 +39,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ @@ -65,7 +65,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Updating", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -76,6 +75,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Updating", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Operations_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Operations_List.json index d80cd6b14ce0..bc83e3c0e539 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Operations_List.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Operations_List.json @@ -8,7 +8,7 @@ "value": [ { "name": "Microsoft.AppPlatform/Spring/read", - "dataAction": false, + "isDataAction": false, "display": { "provider": "Microsoft Azure Distributed Managed Service for Spring", "resource": "Managed Applications", diff --git a/specification/attestation/resource-manager/readme.cli.md b/specification/attestation/resource-manager/readme.cli.md index c1990d90a9d8..539d9cf67e00 100644 --- a/specification/attestation/resource-manager/readme.cli.md +++ b/specification/attestation/resource-manager/readme.cli.md @@ -7,11 +7,12 @@ cli: cli-name: attestation package-name: azure-mgmt-attestation namespace: azure.mgmt.attestation - test-setup: - - name: Operations_List - - name: AttestationProviders_Create - - name: AttestationProviders_Get - - name: AttestationProviders_List - - name: AttestationProviders_ListByResourceGroup - - name: AttestationProviders_Delete + test-scenario: + - name: /AttestationProviders/put/AttestationProviders_Create + - name: /AttestationProviders/get/AttestationProviders_Get + - name: /AttestationProviders/get/AttestationProviders_ListByResourceGroup + - name: /AttestationProviders/get/AttestationProviders_List + - name: /Operations/get/Operations_List + - name: /AttestationProviders/patch/AttestationProviders_Update + - name: /AttestationProviders/delete/AttestationProviders_Delete ``` diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..0a12a7daefb3 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..063308a536f8 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..d369f2f02cf0 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..ab7309b28b43 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json new file mode 100644 index 000000000000..9f0d825a6fcb --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Automation/automationAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Automation/automationAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ] + } + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json new file mode 100644 index 000000000000..cac55a5b8014 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Automation/automationAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Automation/automationAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json new file mode 100644 index 000000000000..e64fc7f3e707 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json @@ -0,0 +1,311 @@ +{ + "swagger": "2.0", + "info": { + "title": "AutomationManagement", + "version": "2020-01-13-preview" + }, + "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.Automation/automationAccounts/{automationAccountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Automation account.", + "operationId": "PrivateEndpointConnections_ListByAutomationAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json new file mode 100644 index 000000000000..cb88076c1c14 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json @@ -0,0 +1,175 @@ +{ + "swagger": "2.0", + "info": { + "title": "AutomationManagement", + "version": "2020-01-13-preview" + }, + "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.Automation/automationAccounts/{automationAccountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for Automation account.", + "operationId": "PrivateLinkResources_Automation", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Automation account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/automation/resource-manager/readme.cli.md b/specification/automation/resource-manager/readme.cli.md new file mode 100644 index 000000000000..b506e9f82761 --- /dev/null +++ b/specification/automation/resource-manager/readme.cli.md @@ -0,0 +1,178 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: automation + package-name: azure-mgmt-automation + namespace: azure.mgmt.automation + test-scenario: + - name: Create or update automation account + - name: Create job + - name: Create or update a module + - name: Create or update webhook + - name: Create runbook as draft + - name: Create or update runbook and publish it + - name: Create or update watcher + - name: Create or update a schedule + - name: Create or update a variable + - name: Create a credential + - name: Create or update connection + - name: Create or update a certificate + - name: Create a job schedule + - name: Create or Update Configuration + - name: Create or update a source control + - name: Create or update a python 2 package + - name: Create or update a DSC Compilation job + - name: Create or update connection type + - name: Create node configuration + - name: Create or update runbook draft + - name: Create test job + - name: Create software update configuration + - name: Create or update a source control sync job + - name: Get a sync job stream identified by sync job stream id. + - name: Get a list of sync job streams identified by sync job id + - name: Get a source control sync job by job id + - name: Get software update configuration machine run + - name: Get test job stream + - name: Get software update configuration runs by Id + - name: Get a list of fields of a given type + - name: Get software update configuration by name + - name: Get a DSC Compilation job stream by job stream id + - name: Get a hybrid worker group + - name: Get a list of source control sync jobs + - name: List job streams by job name + - name: Get Activity in a module + - name: Get content of node + - name: Get a list of fields of a given type + - name: Get a list of fields of a given type across all accessible modules + - name: Get runbook draft content + - name: Get test job + - name: List DSC Compilation job streams + - name: Get a DSC node configuration + - name: Get DSC Configuration content + - name: Get Dsc node report data by node id and report id. + - name: Get job stream + - name: Get connection type + - name: Get a DSC Compilation job + - name: Get a python 2 package + - name: Get a source control + - name: Get a DSC Configuration + - name: List software update configuration machine runs for a specific software update configuration run + - name: List software update configuration machine runs + - name: List activities by a module + - name: Get a job schedule + - name: Get runbook content + - name: Get a certificate + - name: Get Job Runbook Content + - name: Get runbook draft + - name: Get a connection + - name: Get a credential + - name: Get node's status counts + - name: Get node's node configuration counts + - name: List software update configuration machine run with status equal to 'Failed' + - name: List software update configuration machine runs + - name: List DSC reports by node id. + - name: Get a variable + - name: Get a schedule + - name: Get the agent registration information + - name: List software update configurations Targeting a specific azure virtual machine + - name: List software update configurations + - name: Get runbook + - name: List job streams by job name + - name: Get watcher + - name: Get webhook + - name: Get Job Output + - name: List hybrid worker groups by Automation Account + - name: Get a module + - name: Get a node + - name: Get job + - name: List Paged DSC node configurations by Automation Account with name filter + - name: List DSC node configurations by Automation Account + - name: List Paged DSC node configurations by Automation Account with no filter + - name: List python 2 packages by automation account + - name: Get connection types, first 100 + - name: List DSC Compilation job in Automation Account + - name: Get connection types, next 100 + - name: Get the linked workspace of an automation account + - name: Get DSC Configuration + - name: List Paged DSC Configurations with name filter + - name: List sourceControls + - name: List Paged DSC Configurations with no filter + - name: List certificates + - name: List all job schedules by automation account + - name: List credentials by automation account, next 100 + - name: List credentials by automation account, first 100 + - name: List connections by automation account, next 100 + - name: List connections by automation account, first 100 + - name: Get statistics of an automation account + - name: List variables, First 100 + - name: List variables, Next 100 + - name: List schedules by automation account, first 100 + - name: List schedules by automation account, next 100 + - name: List watchers by Automation Account + - name: List runbooks by automation account + - name: List webhooks by Automation Account + - name: List modules by automation account + - name: Get usages of an automation account + - name: List Paged DSC nodes by Automation Account with version filter + - name: List Paged DSC nodes by Automation Account with name filter + - name: List Paged DSC nodes by Automation Account with no filters + - name: List DSC nodes by Automation Account + - name: List Paged DSC nodes by Automation Account with node status filter + - name: List Paged DSC nodes by Automation Account with Node Configuration Custom filter + - name: List Paged DSC nodes by Automation Account where Node Configurations are not assigned filter + - name: List Paged DSC nodes with filters separated by 'and' + - name: List jobs by automation account + - name: Get automation account + - name: List automation accounts by resource group + - name: List automation accounts by resource group + - name: Regenerate registration key + - name: Update hybrid worker group + - name: Suspend test job + - name: Resume test job + - name: Stop test job + - name: Undo draft edit to last known published state + - name: Update a module + - name: Update a source control + - name: Create or Update Configuration + - name: Update a certificate + - name: Publish runbook draft + - name: Update a credential + - name: Update a connection + - name: Start Watcher + - name: Start Watcher + - name: Update a variable + - name: Update a schedule + - name: Update runbook + - name: Update watcher + - name: Suspend job + - name: Update webhook + - name: Generate webhook uri + - name: Resume job + - name: Update a module + - name: Stop job + - name: Update a node + - name: Get lists of an automation account + - name: Update an automation account + - name: Delete software update configuration + - name: Delete a hybrid worker group + - name: Delete a DSC node configuration + - name: Delete an existing connection type + - name: Delete a python 2 package + - name: Delete a source control + - name: Delete DSC Configuration + - name: Delete a job schedule + - name: Delete a certificate + - name: Delete a credential + - name: Delete an existing connection + - name: Delete schedule + - name: Delete a variable + - name: Delete webhook + - name: Delete a runbook + - name: Delete watcher + - name: Delete a module + - name: Delete a DSC Node + - name: Delete automation account +``` \ No newline at end of file diff --git a/specification/automation/resource-manager/readme.md b/specification/automation/resource-manager/readme.md index 94ff48b474e3..e3416d6946aa 100644 --- a/specification/automation/resource-manager/readme.md +++ b/specification/automation/resource-manager/readme.md @@ -156,6 +156,43 @@ input-file: - Microsoft.Automation/stable/2018-06-30/python2package.json ``` +### Tag: package-2020-01-13-preview + +These settings apply only when `--tag=package-2020-01-13-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01-13-preview' +input-file: +- Microsoft.Automation/stable/2015-10-31/account.json +- Microsoft.Automation/stable/2015-10-31/certificate.json +- Microsoft.Automation/stable/2015-10-31/connection.json +- Microsoft.Automation/stable/2015-10-31/connectionType.json +- Microsoft.Automation/stable/2015-10-31/credential.json +- Microsoft.Automation/stable/2015-10-31/dscConfiguration.json +- Microsoft.Automation/stable/2015-10-31/hybridRunbookWorkerGroup.json +- Microsoft.Automation/stable/2015-10-31/jobSchedule.json +- Microsoft.Automation/stable/2015-10-31/linkedWorkspace.json +- Microsoft.Automation/stable/2015-10-31/module.json +- Microsoft.Automation/stable/2015-10-31/schedule.json +- Microsoft.Automation/stable/2015-10-31/variable.json +- Microsoft.Automation/stable/2015-10-31/webhook.json +- Microsoft.Automation/stable/2015-10-31/watcher.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfiguration.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationMachineRun.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControl.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJob.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJobStreams.json +- Microsoft.Automation/preview/2017-05-15-preview/job.json +- Microsoft.Automation/stable/2018-01-15/dscNode.json +- Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json +- Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json +- Microsoft.Automation/stable/2018-01-15/dscNodeCounts.json +- Microsoft.Automation/stable/2018-06-30/runbook.json +- Microsoft.Automation/stable/2018-06-30/python2package.json +- Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json +- Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json +``` + --- ## Suppression ``` yaml @@ -306,6 +343,8 @@ input-file: - $(this-folder)/Microsoft.Automation/stable/2018-01-15/dscNodeCounts.json - $(this-folder)/Microsoft.Automation/stable/2018-06-30/runbook.json - $(this-folder)/Microsoft.Automation/stable/2018-06-30/python2package.json + - $(this-folder)/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json + - $(this-folder)/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json ``` diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json index fd8ff97174fc..578460a3f5cd 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json @@ -181,6 +181,20 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "TopParameter": { + "description": "OData top parameter.", + "name": "$top", + "in": "query", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SkipParameter": { + "description": "OData skip parameter.", + "name": "$skip", + "in": "query", + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json index 0ff6e617dd72..2b28908cb974 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { "get": { "x-ms-examples": { "Returns the list of backup locations.": { @@ -37,6 +37,12 @@ }, { "$ref": "Backup.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Backup.json#/parameters/TopParameter" + }, + { + "$ref": "Backup.json#/parameters/SkipParameter" } ], "responses": { @@ -52,7 +58,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { "get": { "x-ms-examples": { "Returns a specific backup location based on name.": { @@ -129,10 +135,13 @@ } } }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { "post": { "x-ms-examples": { "Back up a specific location.": { @@ -140,6 +149,9 @@ } }, "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, "description": "Back up a specific location.", "tags": [ "BackupLocations" diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json index b5f2abbb75a4..a8ca7a93d59b 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { "get": { "x-ms-examples": { "Returns a list of backups from a location.": { @@ -40,6 +40,12 @@ }, { "$ref": "Backup.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Backup.json#/parameters/TopParameter" + }, + { + "$ref": "Backup.json#/parameters/SkipParameter" } ], "responses": { @@ -55,7 +61,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { "get": { "x-ms-examples": { "Returns a backup from a location based on name.": { @@ -94,7 +100,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { "post": { "x-ms-examples": { "Restore a backup.": { @@ -137,7 +143,10 @@ "description": "ACCEPTED" } }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } } }, diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json deleted file mode 100644 index 2e1306b80a80..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json +++ /dev/null @@ -1,204 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/providers/Microsoft.Backup.Admin/operations": { - "get": { - "x-ms-examples": { - "Returns the list of support REST operations.": { - "$ref": "./examples/Operations/List.json" - } - }, - "description": "Returns the list of support REST operations.", - "tags": [ - "Backup" - ], - "operationId": "Operations_List", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/OperationList" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - } - }, - "definitions": { - "Resource": { - "description": "Base Resource Object", - "type": "object", - "properties": { - "id": { - "description": "URI of the resource.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of resource.", - "type": "string", - "readOnly": true - }, - "location": { - "description": "Location of the resource.", - "type": "string", - "readOnly": false - }, - "tags": { - "description": "List of key value pairs.", - "type": "object", - "readOnly": false, - "additionalProperties": { - "type": "string" - } - } - }, - "x-ms-azure-resource": true - }, - "Operation": { - "description": "Describes the supported REST operation.", - "properties": { - "name": { - "description": "The name of the operation being performed on this particular object. This name should match the name that appears in RBAC or the event service.", - "type": "string", - "readOnly": true - }, - "display": { - "description": "Contains the localized display information for this particular operation / action.", - "$ref": "#/definitions/Display", - "readOnly": true - } - } - }, - "Display": { - "description": "Contains the localized display information for this particular operation / action.", - "properties": { - "provider": { - "description": "The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "The localized, friendly version of the resource type related to this action or operation; the resource type should match the public documentation for the resource provider.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "The localized, friendly name for the operation. Use the name as it will displayed to the user.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "The localized, friendly description for the operation. The description will be displayed to the user. It should be thorough and concise for used in both tooltips and detailed views.", - "type": "string", - "readOnly": true - } - } - }, - "OperationList": { - "description": "List of Operations", - "properties": { - "value": { - "description": "Array of operations", - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - }, - "readOnly": true - }, - "nextLink": { - "description": "URI to the next page of operations.", - "type": "string", - "readOnly": true - } - } - }, - "LongRunningOperationStatus": { - "description": "Status of a long running operation.", - "type": "object", - "properties": { - "code": { - "description": "Operation result code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Description of the operation status.", - "type": "string", - "readOnly": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", - "required": true, - "type": "string" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "Client API version.", - "required": true, - "type": "string", - "default": "2016-05-01" - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "description": "Name of the resource group.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json deleted file mode 100644 index 555c6e4fae3b..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json +++ /dev/null @@ -1,317 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { - "get": { - "x-ms-examples": { - "Returns the list of backup locations.": { - "$ref": "./examples/BackupLocations/List.json" - } - }, - "description": "Returns the list of backup locations.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_List", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocationList" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { - "get": { - "x-ms-examples": { - "Returns a specific backup location based on name.": { - "$ref": "./examples/BackupLocations/Get.json" - } - }, - "description": "Returns a specific backup location based on name.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_Get", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "404": { - "description": "NOT FOUND" - } - } - }, - "put": { - "x-ms-examples": { - "Update new backup location.": { - "$ref": "./examples/BackupLocations/Update.json" - } - }, - "description": "Update a backup location.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_Update", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/BackupLocationObjectParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "202": { - "description": "ACCEPTED", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { - "post": { - "x-ms-examples": { - "Back up a specific location.": { - "$ref": "./examples/BackupLocations/Backup.json" - } - }, - "x-ms-long-running-operation": true, - "description": "Back up a specific location.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_CreateBackup", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "Backups.json#/definitions/Backup" - } - }, - "202": { - "description": "ACCEPTED", - "schema": { - "$ref": "Backups.json#/definitions/Backup" - } - } - } - } - } - }, - "definitions": { - "BackupLocation": { - "description": "Information about the backup location.", - "type": "object", - "properties": { - "properties": { - "description": "Properties of a backup location.", - "$ref": "#/definitions/BackupLocationModel", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "Backup.json#/definitions/Resource" - } - ] - }, - "BackupLocationModel": { - "type": "object", - "description": "Properties of a backup location.", - "properties": { - "externalStoreDefault": { - "description": "Information about an external storage location.", - "$ref": "#/definitions/ExternalStore", - "x-ms-client-flatten": true - } - } - }, - "ExternalStore": { - "type": "object", - "description": "Information about an external storage location.", - "properties": { - "path": { - "description": "Path to the update location", - "type": "string" - }, - "userName": { - "description": "Username to access the location.", - "type": "string" - }, - "password": { - "description": "Password to access the location.", - "type": "string" - }, - "encryptionKeyBase64": { - "description": "Encryption key.", - "type": "string" - }, - "backupFrequencyInHours": { - "description": "The interval, in hours, for the frequency that the scheduler takes a backup.", - "type": "integer" - }, - "availableCapacity": { - "description": "Free space at the backup location.", - "type": "string" - }, - "isBackupSchedulerEnabled": { - "description": "True if the backup scheduler is enabled.", - "type": "boolean" - }, - "nextBackupTime": { - "description": "The scheduled time of the next backup.", - "type": "string", - "format": "date-time" - }, - "lastBackupTime": { - "description": "Time of backup.", - "type": "string", - "format": "date-time" - }, - "backupRetentionPeriodInDays": { - "description": "The retention period, in days, for backs in the storage location.", - "type": "integer" - } - } - }, - "BackupLocationList": { - "type": "object", - "description": "List of backup locations.", - "properties": { - "value": { - "description": "List of backup locations.", - "type": "array", - "items": { - "$ref": "#/definitions/BackupLocation" - } - }, - "nextLink": { - "description": "URI to the next page.", - "type": "string" - } - } - } - }, - "parameters": { - "BackupLocationParameter": { - "name": "location", - "in": "path", - "description": "Name of the backup location.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "BackupLocationObjectParameter": { - "name": "backup", - "in": "body", - "description": "Backup location object.", - "required": true, - "schema": { - "$ref": "#/definitions/BackupLocation" - }, - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json deleted file mode 100644 index 56c214548f3a..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json +++ /dev/null @@ -1,310 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { - "get": { - "x-ms-examples": { - "Returns a list of backups from a location.": { - "$ref": "./examples/Backups/List.json" - } - }, - "description": "Returns a list of backups from a location.", - "tags": [ - "Backups" - ], - "operationId": "Backups_List", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupList" - } - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { - "get": { - "x-ms-examples": { - "Returns a backup from a location based on name.": { - "$ref": "./examples/Backups/Get.json" - } - }, - "description": "Returns a backup from a location based on name.", - "tags": [ - "Backups" - ], - "operationId": "Backups_Get", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "#/parameters/BackupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Backup" - } - }, - "404": { - "description": "NOT FOUND" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { - "post": { - "x-ms-examples": { - "Restore a backup.": { - "$ref": "./examples/Backups/Restore.json" - } - }, - "description": "Restore a backup.", - "tags": [ - "Backups" - ], - "operationId": "Backups_Restore", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "ACCEPTED" - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-long-running-operation": true - } - } - }, - "definitions": { - "Backup": { - "description": "Information related to a backup.", - "type": "object", - "properties": { - "properties": { - "description": "Properties for a backup.", - "$ref": "#/definitions/BackupModel", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "Backup.json#/definitions/Resource" - } - ] - }, - "BackupModel": { - "description": "Properties for a backup.", - "properties": { - "backupInfo": { - "description": "Holds information for a backup.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/BackupInfo" - } - } - }, - "BackupInfo": { - "type": "object", - "description": "Holds information for a backup.", - "properties": { - "backupDataVersion": { - "description": "Version of the backup data.", - "type": "string", - "readOnly": true - }, - "backupId": { - "description": "Unique GUID for the backup.", - "type": "string", - "readOnly": true - }, - "roleStatus": { - "description": "Backup status for each role.", - "$ref": "#/definitions/RoleOperationStatusList", - "readOnly": true - }, - "status": { - "description": "Current status of the backup.", - "$ref": "#/definitions/OperationStatus", - "readOnly": true - }, - "createdDateTime": { - "description": "Creation time of the backup.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "timeTakenToCreate": { - "description": "Duration to create the backup.", - "type": "string", - "readOnly": true - }, - "deploymentID": { - "description": "Deployment Id of the stamp.", - "type": "string", - "readOnly": true - }, - "stampVersion": { - "description": "Current version.", - "type": "string", - "readOnly": true - }, - "oemVersion": { - "description": "OEM version.", - "type": "string", - "readOnly": true - } - } - }, - "OperationStatus": { - "description": "Status of an operation.", - "type": "string", - "enum": [ - "Creating", - "Queued", - "Running", - "Deleted", - "Failed", - "PartialSucceeded", - "Succeeded" - ], - "x-ms-enum": { - "name": "OperationStatus", - "modelAsString": false - } - }, - "RoleOperationStatusList": { - "description": "object", - "type": "array", - "items": { - "$ref": "#/definitions/RoleOperationStatus" - } - }, - "RoleOperationStatus": { - "description": "Backup status for a role.", - "type": "object", - "properties": { - "roleName": { - "description": "Name of the role.", - "type": "string" - }, - "status": { - "description": "Status of the role.", - "$ref": "#/definitions/OperationStatus" - } - } - }, - "BackupList": { - "type": "object", - "description": "List of backups.", - "properties": { - "value": { - "description": "List of backups.", - "type": "array", - "items": { - "$ref": "#/definitions/Backup" - } - }, - "nextLink": { - "description": "URI to the next page.", - "type": "string" - } - } - } - }, - "parameters": { - "BackupParameter": { - "name": "backup", - "in": "path", - "description": "Name of the backup.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json deleted file mode 100644 index 4af9dafe6c33..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json +++ /dev/null @@ -1,144 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/system.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/290b4726-a9a1-40ba-a837-895a1173dc73", - "name": "290b4726-a9a1-40ba-a837-895a1173dc73", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupId": "290b4726-a9a1-40ba-a837-895a1173dc73", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T23:01:56.2015457Z", - "timeTakenToCreate": "PT4M54.5150429S" - } - } - } - }, - "202": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/system.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/290b4726-a9a1-40ba-a837-895a1173dc73", - "name": "290b4726-a9a1-40ba-a837-895a1173dc73", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupId": "290b4726-a9a1-40ba-a837-895a1173dc73", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T23:01:56.2015457Z", - "timeTakenToCreate": "PT4M54.5150429S" - } - } - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json deleted file mode 100644 index 5aaefbf84e1e..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\\\\\100.68.88.192\\\\C$\\\\backup_test", - "userName": "AzureStack\\\\Administrator", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json deleted file mode 100644 index ca868479ec5f..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\\\\\100.68.88.192\\\\C$\\\\backup_test", - "userName": "AzureStack\\\\Administrator", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - ] - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json deleted file mode 100644 index 9c14a0c5360a..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": { - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "secretPassword", - "encryptionKeyBase64": "YVVOa0J3S2xTamhHZ1lyRU9wQ1pKQ0xWanhjaHlkaU5ZQnNDeHRPTGFQenJKdWZsRGtYT25oYmlaa1RMVWFKeQ==", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - }, - "location": "local", - "tags": {} - }, - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourcegroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "", - "encryptionKeyBase64": "", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "202": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourcegroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "", - "encryptionKeyBase64": "", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json deleted file mode 100644 index 8e7a67e2033c..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/de038ae0-294d-468d-90a1-fbe5ae028ce2", - "name": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupDataVersion": "", - "backupId": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T16:06:10.1160531Z", - "timeTakenToCreate": "PT5M1.5611298S", - "stampVersion": "", - "oemVersion": "", - "deploymentID": "" - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json deleted file mode 100644 index e9a6530d6d79..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/de038ae0-294d-468d-90a1-fbe5ae028ce2", - "name": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupDataVersion": "", - "backupId": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T16:06:10.1160531Z", - "timeTakenToCreate": "PT5M1.5611298S", - "stampVersion": "", - "oemVersion": "", - "deploymentID": "" - } - } - } - ], - "nextLink": null - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json deleted file mode 100644 index bf9ad301b24e..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "api-version": "2016-05-01" - }, - "responses": { - "200": {}, - "202": {}, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json deleted file mode 100644 index 9a6f651b6097..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [], - "nextLink": null - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/readme.md b/specification/azsadmin/resource-manager/backup/readme.md index 75cdc00310dc..75d721d5948e 100644 --- a/specification/azsadmin/resource-manager/backup/readme.md +++ b/specification/azsadmin/resource-manager/backup/readme.md @@ -24,7 +24,7 @@ These are the global settings for the Backup Admin API. title: BackupAdminClient description: Backup Admin Client openapi-type: arm -tag: package-2016-05-01 +tag: package-2018-09-01 ``` ### Tag: package-2018-09-01 @@ -38,17 +38,6 @@ input-file: - Microsoft.Backup.Admin/preview/2018-09-01/Backups.json ``` -### Tag: package-2016-05-01 - -These settings apply only when `--tag=package-2016-05-01` is specified on the command line. - -``` yaml $(tag) == 'package-2016-05-01' -input-file: - - Microsoft.Backup.Admin/stable/2016-05-01/Backup.json - - Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json - - Microsoft.Backup.Admin/stable/2016-05-01/Backups.json -``` - --- # Code Generation @@ -64,11 +53,10 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. +This block is updated by an automatic script. Edits may be lost! ``` yaml $(tag) == 'all-api-versions' /* autogenerated */ # include the azure profile definitions from the standard location @@ -79,17 +67,13 @@ input-file: - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json - -``` -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. +``` +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json index c34915e2be14..890c3b5b8fda 100644 --- a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json +++ b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json @@ -198,7 +198,8 @@ }, "quantity": { "description": "The amount of the resource consumption that occurred in this time frame.", - "type": "string" + "type": "number", + "format": "double" }, "meterId": { "description": "Unique ID for the resource that was consumed, for example, the Resource ID.", diff --git a/specification/azsadmin/resource-manager/commerce/readme.azsautogen.md b/specification/azsadmin/resource-manager/commerce/readme.azsautogen.md new file mode 100644 index 000000000000..77f54f1348bb --- /dev/null +++ b/specification/azsadmin/resource-manager/commerce/readme.azsautogen.md @@ -0,0 +1,8 @@ +# AutoRest v3 generators + +> see https://aka.ms/autorest + +``` yaml +input-file: + - Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json +``` diff --git a/specification/azsadmin/resource-manager/commerce/readme.md b/specification/azsadmin/resource-manager/commerce/readme.md index 1676a911714f..7e36302807ea 100644 --- a/specification/azsadmin/resource-manager/commerce/readme.md +++ b/specification/azsadmin/resource-manager/commerce/readme.md @@ -84,4 +84,3 @@ uncomment the `exclude-file` section below and add the file paths. #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json index a682c9357128..2456dcf23c55 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json @@ -114,6 +114,12 @@ { "$ref": "DiskMigrationJobs.json#/parameters/TargetShareParameter" }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetScaleUnitParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetVolumeLabelParameter" + }, { "$ref": "DiskMigrationJobs.json#/parameters/DiskListParameter" }, @@ -378,7 +384,23 @@ "description": "The target share name.", "name": "targetShare", "in": "query", - "required": true, + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetScaleUnitParameter": { + "description": "The target scale unit name.", + "name": "targetScaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetVolumeLabelParameter": { + "description": "The target volume label.", + "name": "targetVolumeLabel", + "in": "query", + "required": false, "type": "string", "x-ms-parameter-location": "method" }, diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json index 17f577faa01c..b0bfd8aa99e9 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json @@ -44,6 +44,12 @@ { "$ref": "Disks.json#/parameters/SourceSharePathParameter" }, + { + "$ref": "Disks.json#/parameters/SourceScaleUnitParameter" + }, + { + "$ref": "Disks.json#/parameters/SourceVolumeLabelParameter" + }, { "$ref": "Disks.json#/parameters/DiskCountParameter" }, @@ -267,13 +273,29 @@ "x-ms-parameter-location": "method" }, "SourceSharePathParameter": { - "description": "The source share which the resource belongs to.", + "description": "The share which the resource belongs to.", "name": "sharePath", "in": "query", "required": false, "type": "string", "x-ms-parameter-location": "method" }, + "SourceScaleUnitParameter": { + "description": "The scale unit which the resource belongs to.", + "name": "scaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceVolumeLabelParameter": { + "description": "The volume label of the volume which the resource belongs to.", + "name": "volumeLabel", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, "DiskCountParameter": { "description": "The maximum number of disks to return.", "name": "count", diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md b/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md new file mode 100644 index 000000000000..f0222d2c36dc --- /dev/null +++ b/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md @@ -0,0 +1,12 @@ +# AutoRest v3 generators + +> see https://aka.ms/autorest + +``` yaml +input-file: + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/readme.md b/specification/azsadmin/resource-manager/infrastructureinsights/readme.md index 27c9a298d00f..090ab2c84dcc 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/readme.md +++ b/specification/azsadmin/resource-manager/infrastructureinsights/readme.md @@ -60,9 +60,11 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +> see https://aka.ms/autorest This block is updated by an automatic script. Edits may be lost! @@ -80,11 +82,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/keyvault/readme.azsautogen.md b/specification/azsadmin/resource-manager/keyvault/readme.azsautogen.md new file mode 100644 index 000000000000..46257a0daf5d --- /dev/null +++ b/specification/azsadmin/resource-manager/keyvault/readme.azsautogen.md @@ -0,0 +1,9 @@ +# AutoRest v3 generators + +> see https://aka.ms/autorest + +``` yaml +input-file: + - $(this-folder)/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/KeyVault.json + - $(this-folder)/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/Quotas.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/keyvault/readme.md b/specification/azsadmin/resource-manager/keyvault/readme.md index a1804bffd6a2..0f0dcdf22372 100644 --- a/specification/azsadmin/resource-manager/keyvault/readme.md +++ b/specification/azsadmin/resource-manager/keyvault/readme.md @@ -52,7 +52,7 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -73,7 +73,6 @@ If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json index c0db8740613a..32e5f07c938b 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json @@ -19,14 +19,14 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.Network.Admin/adminPublicIpAddresses": { "get": { "x-ms-examples": { - "List of public ip addresses": { + "List of public IP addresses": { "$ref": "./examples/PublicIpAddresses/List.json" } }, "tags": [ "PublicIpAddresses" ], - "description": "List of public ip addresses.", + "description": "List of public IP addresses.", "operationId": "PublicIPAddresses_List", "parameters": [ { diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json index adb8d7713fc4..68e78a682ab6 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json @@ -48,9 +48,6 @@ "schema": { "$ref": "#/definitions/QuotaList" } - }, - "404": { - "description": "Not Found" } }, "x-ms-pageable": { @@ -91,9 +88,6 @@ "schema": { "$ref": "#/definitions/Quota" } - }, - "404": { - "description": "Not Found" } } }, diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/Get.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/Get.json index 9e69055d8579..d5e8a568242a 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/Get.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/Get.json @@ -24,7 +24,6 @@ }, "id": "/subscriptions/fc8456aa-4843-4079-a152-f3497c63aa73/providers/Microsoft.Network.Admin/locations/local/quotas/Default Quota" } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/List.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/List.json index e852472afccb..175702564e6a 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/List.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Quota/List.json @@ -27,7 +27,6 @@ } ] } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/network/readme.md b/specification/azsadmin/resource-manager/network/readme.md index 82e85487c204..cdf14bc0b3bd 100644 --- a/specification/azsadmin/resource-manager/network/readme.md +++ b/specification/azsadmin/resource-manager/network/readme.md @@ -27,17 +27,13 @@ openapi-type: arm tag: package-2015-06-15 ``` -### Tag: package-2015-06-15 - -These settings apply only when `--tag=package-2015-06-15` is specified on the command line. - -``` yaml $(tag) == 'package-2015-06-15' +``` yaml input-file: - - "Microsoft.Network.Admin/preview/2015-06-15/Network.json" - - "Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json" - - "Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json" - - "Microsoft.Network.Admin/preview/2015-06-15/Quotas.json" - - "Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json" + - Microsoft.Network.Admin/preview/2015-06-15/Network.json + - Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json + - Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json + - Microsoft.Network.Admin/preview/2015-06-15/Quotas.json + - Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json ``` --- @@ -58,7 +54,7 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -78,11 +74,11 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: + +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json index c4a30491f691..51713d045a6f 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json @@ -7,11 +7,7 @@ "summary": "false" }, "responses": { - "200": { - "body": { - "accountId": "80d458ce4ecd47888b54aaa277800748" - } - }, + "200": {}, "202": {} } } diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json index 9f8a9e4bc325..626252ba8783 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json @@ -121,8 +121,7 @@ "properties": { "description": "Properties of the storage account.", "x-ms-client-flatten": true, - "$ref": "#/definitions/SettingProperties", - "readOnly": true + "$ref": "#/definitions/SettingProperties" } }, "allOf": [ diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json index 7f09a86f4239..bd30cc8babdf 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json @@ -91,7 +91,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.Storage.Admin/storageServices": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Storage.Admin/storageServices": { "get": { "x-ms-examples": { "Returns the storage services list under the specified resource group and subscription.": { @@ -166,7 +166,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.Storage.Admin/storageServices/{serviceName}": { + "/subscriptions/{subscriptionId}resourceGroups/{resourceGroup}/providers/Microsoft.Storage.Admin/storageServices/{serviceName}": { "get": { "x-ms-examples": { "Returns the specified storage service.": { diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json index ec8df91cef15..93288e309e6d 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json @@ -137,10 +137,7 @@ ], "responses": { "200": { - "description": "OK -- Undelete either has been performed or account was not deleted.", - "schema": { - "$ref": "#/definitions/UndeleteStorageAccount" - } + "description": "OK -- Undelete either has been performed or account was not deleted." }, "202": { "description": "Accepted -- undelete operation trigged; operation will complete asynchronously." @@ -195,7 +192,10 @@ } } }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } } }, @@ -377,6 +377,7 @@ }, "primaryEndpoints": { "description": "The URLs that are used to perform a retrieval of a public BLOB, queue, or table object.", + "type": "object", "additionalProperties": { "type": "string" }, @@ -543,7 +544,8 @@ "in": "query", "required": false, "type": "boolean", - "x-ms-parameter-location": "method" + "x-ms-parameter-location": "method", + "default": false }, "FilterParameter": { "description": "Filter string", diff --git a/specification/azsadmin/resource-manager/storage/readme.azsautogen.md b/specification/azsadmin/resource-manager/storage/readme.azsautogen.md new file mode 100644 index 000000000000..d6a523515d44 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/readme.azsautogen.md @@ -0,0 +1,55 @@ +# Storage Admin + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Storage Admin. + +--- +## Getting Started +To build the SDK for Storage Admin, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the Storage API. + +``` yaml +title: StorageAdminClient +description: Storage Admin Client +openapi-type: arm +tag: package-2019-08-08 +``` + +``` yaml +input-file: + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/settings.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/storage.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json +``` + +--- +# Code Generation + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.AzureStack.Management.Storage.Admin + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Generated + clear-output-folder: true +``` diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json index d853d4a06a40..04acfa702958 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json @@ -146,7 +146,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewAcquiredPlanParameter" + "$ref": "#/parameters/AcquiredPlanDefinitionParameter" } ], "responses": { @@ -268,8 +268,8 @@ "type": "string", "x-ms-parameter-location": "method" }, - "NewAcquiredPlanParameter": { - "name": "newAcquiredPlan", + "AcquiredPlanDefinitionParameter": { + "name": "acquiredPlanDefinition", "in": "body", "description": "The new acquired plan.", "required": true, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json index e8596ab11404..a9eeb6578fb2 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json @@ -76,7 +76,7 @@ "200": { "description": "OK", "schema": { - "$ref": "Subscriptions.json#/definitions/Subscription" + "$ref": "Subscriptions.json#/definitions/SubscriptionDefinition" } } } diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json index e50ff99934f4..0c672375780e 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json @@ -146,7 +146,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewDirectoryTenantParameter" + "$ref": "#/parameters/DirectoryTenantDefinitionParameter" } ], "responses": { @@ -220,9 +220,9 @@ "in": "path", "x-ms-parameter-location": "method" }, - "NewDirectoryTenantParameter": { + "DirectoryTenantDefinitionParameter": { "description": "New directory tenant properties.", - "name": "newTenant", + "name": "tenantDefinition", "required": true, "in": "body", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json index 9a8274ee999d..7bc9a7d831c5 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json @@ -49,7 +49,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers": { "get": { "x-ms-examples": { "Get the list of offers under a resource group.": { @@ -85,7 +85,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}": { "get": { "x-ms-examples": { "Get the specified offer.": { @@ -145,7 +145,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewOfferParameter" + "$ref": "#/parameters/OfferDefinitionParameter" } ], "responses": { @@ -198,7 +198,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metrics": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metrics": { "get": { "x-ms-examples": { "Get the offer metrics.": { @@ -234,7 +234,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metricDefinitions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metricDefinitions": { "get": { "x-ms-examples": { "Get the metric definitions.": { @@ -270,7 +270,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/link": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/link": { "post": { "x-ms-examples": { "Links a plan to an offer.": { @@ -309,7 +309,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/unlink": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/unlink": { "post": { "x-ms-examples": { "Unlink a plan from an offer.": { @@ -508,9 +508,9 @@ } }, "parameters": { - "NewOfferParameter": { + "OfferDefinitionParameter": { "description": "New offer.", - "name": "newOffer", + "name": "offerDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json index 0ec96a0839dc..5835126620fc 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json @@ -121,7 +121,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewOfferDelegationParameter" + "$ref": "#/parameters/OfferDelegationDefinitionParameter" } ], "responses": { @@ -231,9 +231,9 @@ "type": "string", "x-ms-parameter-location": "method" }, - "NewOfferDelegationParameter": { + "OfferDelegationDefinitionParameter": { "description": "New offer delegation parameter.", - "name": "newOfferDelegation", + "name": "offerDelegationDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json index bfb93fd89323..b07d900df529 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json @@ -49,7 +49,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans": { "get": { "x-ms-examples": { "Get the list of plans under a resource group.": { @@ -85,7 +85,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans/{plan}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans/{plan}": { "get": { "x-ms-examples": { "Get the specified plan.": { @@ -145,7 +145,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewPlanParameter" + "$ref": "#/parameters/PlanDefinitionParameter" } ], "responses": { @@ -346,9 +346,9 @@ } }, "parameters": { - "NewPlanParameter": { + "PlanDefinitionParameter": { "description": "New plan.", - "name": "newPlan", + "name": "planDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json index bffa0b590686..144731619848 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json @@ -238,7 +238,7 @@ "x-ms-pageable": { "nextLinkName": null }, - "x-ms-odata": "#/definitions/Subscription" + "x-ms-odata": "#/definitions/SubscriptionDefinition" } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/checkNameAvailability": { @@ -274,7 +274,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{subscription}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{targetSubscriptionId}": { "get": { "x-ms-examples": { "Get a specified subscription.": { @@ -291,7 +291,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -301,7 +301,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } } } @@ -322,10 +322,10 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { - "$ref": "#/parameters/NewSubscriptionParameter" + "$ref": "#/parameters/SubscriptionDefinitionParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -335,13 +335,13 @@ "201": { "description": "Created", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } }, "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } } } @@ -362,7 +362,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -767,8 +767,8 @@ } } }, - "Subscription": { - "description": "List of supported operations.", + "SubscriptionDefinition": { + "description": "Subscription object properties.", "type": "object", "properties": { "delegatedProviderSubscriptionId": { @@ -820,7 +820,7 @@ "type": "array", "description": "Subscription definition.", "items": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } }, "nextLink": { @@ -1215,20 +1215,20 @@ "required": true, "x-ms-parameter-location": "method" }, - "SubscriptionParameter": { - "description": "Subscription parameter.", - "name": "subscription", + "TargetSubscriptionIdParameter": { + "description": "The target subscription ID.", + "name": "targetSubscriptionId", "in": "path", "type": "string", "required": true, "x-ms-parameter-location": "method" }, - "NewSubscriptionParameter": { + "SubscriptionDefinitionParameter": { "description": "Subscription parameter.", - "name": "newSubscription", + "name": "subscriptionDefinition", "in": "body", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" }, "required": true, "x-ms-parameter-location": "method" diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json index 3629ea547bcc..09af66ca6cf8 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "targetSubscriptionId": "8158498d-27b1-4ccf-9aa1-de0f925731e6", "planAcquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", - "newAcquiredPlan": { + "acquiredPlanDefinition": { "properties": { "acquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/acquiredPlans/718c7f7c-4868-479a-98ce-5caaa8f158c8", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json index 78c1da71c188..89ba4e050b7c 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json @@ -4,7 +4,7 @@ "location": "local", "api-version": "2015-11-01", "tenant": "azurestackci05.onmicrosoft.in", - "newTenant": "eb90516e-65d7-4bf6-8537-8322e9172832", + "tenantDefinition": "eb90516e-65d7-4bf6-8537-8322e9172832", "resourceGroupName": "system.local" }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json index a81a46bd97e9..8f73119a60ca 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "offer": "sampleoffer1", "resourceGroupName": "RG1", - "newOffer": { + "offerDefinition": { "properties": { "name": "testOffer1", "displayName": "Test Offer", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json index 8b65b440a217..7efb2b09b1e1 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json @@ -6,7 +6,7 @@ "resourceGroupName": "cnur9852subscrrg374", "offer": "cnur9852tenantoffer374", "offerDelegationName": "testOfferDelegation", - "newOfferDelegation": "newDelegationName" + "offerDelegationDefinition": "newDelegationName" }, "responses": { "200": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json index 61e372ba6245..3eeaed973ed1 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "resourceGroupName": "plans", "plan": "testplan", - "newPlan": { + "planDefinition": { "properties": { "description": "test plan", "displayName": "testplans", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json index e6620268b6ca..79b1d17af5eb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json @@ -9,7 +9,7 @@ "body": { "reportStartTimeUtc": "2017-08-01T00:00:00.00Z", "reportEndTimeUtc": "2017-08-01T00:00:00.00Z", - "status": "", + "status": "Unknown", "directoryTenants": [ { "tenantId": "", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json index 9483e0fb3aad..f41b199e3eeb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json @@ -1,10 +1,11 @@ { "parameters": { "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "location": "local", "api-version": "2015-11-01", "subscription": "test", - "newSubscription": { + "subscriptionDefinition": { "properties": { "delegatedProviderSubscriptionId": "d16dfcf0-44cc-4498-9937-08b94159d27b", "displayName": "Test Subscription", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json index 27950c5e6166..e3007779f242 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "local", "api-version": "2015-11-01", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json index 4c078bbbd22d..e6d44d1815e6 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json @@ -1,6 +1,7 @@ { "parameters": { "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "location": "local", "api-version": "2015-11-01", "subscription": "test" diff --git a/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md b/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md new file mode 100644 index 000000000000..e8ff380981cf --- /dev/null +++ b/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md @@ -0,0 +1,114 @@ +# Subscriptions Admin + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Subscriptions Admin. + +--- +## Getting Started +To build the SDK for Subscriptions Admin, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the Subscriptions API. + +``` yaml +title: SubscriptionsAdminClient +description: Subscriptions Admin Client +openapi-type: arm +tag: package-2015-11-01 +``` + + +## Suppression +``` yaml +directive: + - suppress: XmsResourceInPutResponse + reason: Subscription and Location are not modelled as ARM resources in azure for legacy reasons. In Azure stack as well, Subscription and Location are not modelled as ARM resource for azure consistency + where: + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{subscription}"].put + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{targetSubscriptionId}/acquiredPlans/{planAcquisitionId}"].put + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/locations/{location}"].put + + - suppress: SubscriptionIdParameterInOperations + reason: Subscription is the main resource in the API spec and it should not be masked in global parameters. + where: + - $.paths[\"/subscriptions/{subscriptionId}\"].get.parameters[0] + - $.paths[\"/subscriptions/{subscriptionId}\"].put.parameters[0] + - $.paths[\"/subscriptions/{subscriptionId}\"].delete.parameters[0] + + - suppress: BodyTopLevelProperties + reason: Subscription is not modelled as ARM resource in azure for legacy reasons. In Azure stack as well, Subscription is not modelled as ARM resource for azure consistency. + where: + - $.definitions.Subscription.properties + - $.definitions.PlanAcquisition.properties + - $.definitions.Location.properties + + - suppress: RequiredPropertiesMissingInResourceModel + reason: Subscription is not modelled as ARM resource in azure for legacy reasons. In Azure stack as well, Subscription is not modelled as ARM resource for azure consistency. + where: + - $.definitions.Subscription + - $.definitions.PlanAcquisition + - $.definitions.Location + + - suppress: OperationIdNounVerb + reason: Subscriptions is both the name of the module and the operation action name. + where: + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/moveSubscriptions"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/validateMoveSubscriptions"].post.operationId +``` + +--- +# Code Generation + +## C# + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.AzureStack.Management.Subscriptions.Admin + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Generated + clear-output-folder: true +``` +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` diff --git a/specification/azsadmin/resource-manager/subscriptions/readme.md b/specification/azsadmin/resource-manager/subscriptions/readme.md index b6d75aaad964..4909aff7c0fd 100644 --- a/specification/azsadmin/resource-manager/subscriptions/readme.md +++ b/specification/azsadmin/resource-manager/subscriptions/readme.md @@ -64,6 +64,7 @@ directive: where: - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/moveSubscriptions"].post.operationId - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/validateMoveSubscriptions"].post.operationId + ``` ### Tag: package-2015-11-01 @@ -99,13 +100,14 @@ csharp: output-folder: $(csharp-sdks-folder)/Generated clear-output-folder: true ``` + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. This block is updated by an automatic script. Edits may be lost! -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +``` yaml # include the azure profile definitions from the standard location require: $(this-folder)/../../../../profiles/readme.md @@ -122,14 +124,12 @@ input-file: - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json - ``` If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json index c474da053be9..c40ab71d298d 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/": { "get": { "x-ms-examples": { "Get the list of update locations.": { @@ -52,7 +52,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}": { "get": { "x-ms-examples": { "Get an update location based on name.": { diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json index 717dd3144f28..fabb4bcb7f4c 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns": { "get": { "x-ms-examples": { "Get the list of update runs.": { @@ -58,7 +58,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}": { "get": { "x-ms-examples": { "Get an update run.": { @@ -100,7 +100,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns": { "get": { "x-ms-examples": { "Get the list of update runs.": { @@ -139,7 +139,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns/{runName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns/{runName}": { "get": { "x-ms-examples": { "Get an update run.": { @@ -178,7 +178,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}/rerun": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}/rerun": { "post": { "x-ms-examples": { "Rerun an update.": { diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json index 5f6b22fc4060..1225b865c1ed 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates": { "get": { "x-ms-examples": { "Get the list of updates at an update locations.": { @@ -55,7 +55,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}": { "get": { "x-ms-examples": { "Get a specific update at an update location.": { @@ -94,7 +94,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/Apply": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/Apply": { "post": { "x-ms-examples": { "Apply a specific update at an update location.": { diff --git a/specification/azsadmin/resource-manager/update/readme.azsautogen.md b/specification/azsadmin/resource-manager/update/readme.azsautogen.md new file mode 100644 index 000000000000..9707ee20776d --- /dev/null +++ b/specification/azsadmin/resource-manager/update/readme.azsautogen.md @@ -0,0 +1,73 @@ +# Update Admin + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Update Admin. + +--- +## Getting Started +To build the SDK for Update Admin, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the Update API. + +``` yaml +title: UpdateAdminClient +description: Update Admin Client +openapi-type: arm +tag: package-2016-05-01 +``` + +--- +# Code Generation + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.AzureStack.Management.Update.Admin + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Generated + clear-output-folder: true +``` + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/Update.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/Updates.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` diff --git a/specification/azsadmin/resource-manager/update/readme.md b/specification/azsadmin/resource-manager/update/readme.md index f03971bc99a0..8ffadfe459b3 100644 --- a/specification/azsadmin/resource-manager/update/readme.md +++ b/specification/azsadmin/resource-manager/update/readme.md @@ -57,13 +57,13 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. This block is updated by an automatic script. Edits may be lost! -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +``` yaml # include the azure profile definitions from the standard location require: $(this-folder)/../../../../profiles/readme.md @@ -76,11 +76,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json new file mode 100644 index 000000000000..032ec96f12a0 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json new file mode 100644 index 000000000000..b75e864846b3 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json new file mode 100644 index 000000000000..5d0b38669a54 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "databaseName": "*", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json new file mode 100644 index 000000000000..1640a6fb48eb --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json new file mode 100644 index 000000000000..f7b438b3704e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "languageExtensionsToAdd": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json new file mode 100644 index 000000000000..8ee2863113ef --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "followerDatabaseToRemove": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4", + "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json new file mode 100644 index 000000000000..428916d153c2 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1", + "databaseName": "*" + }, + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration2", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4", + "databaseName": "db1" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json new file mode 100644 index 000000000000..1c7920445825 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..09b10f72e619 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/principalAssignments" + }, + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..f4124a9b8721 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..b2e069bd900a --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json new file mode 100644 index 000000000000..e77e66be82db --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json new file mode 100644 index 000000000000..46ceefc8b90e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json new file mode 100644 index 000000000000..da6f93dd0dc2 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "languageExtensionsToRemove": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json new file mode 100644 index 000000000000..c3a14ad41382 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15", + "location": "wus", + "clusterName": { + "name": "kuskusprod", + "type": "Microsoft.Kusto/clusters" + } + }, + "responses": { + "200": { + "body": { + "name": "kuskusprod", + "nameAvailable": false, + "message": "Name 'kuskusprod' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json new file mode 100644 index 000000000000..0ddcdb588603 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json new file mode 100644 index 000000000000..498d485fdf7b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json new file mode 100644 index 000000000000..c46672779ffd --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "findings": [ + "Outbound dependency 'Storage:443' might not be satisfied (Outbound)" + ] + } + }, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json new file mode 100644 index 000000000000..3dd856deb200 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": false, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json new file mode 100644 index 000000000000..77e787c18d18 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json new file mode 100644 index 000000000000..d568019b13ae --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json new file mode 100644 index 000000000000..5b93af3b7158 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D13_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D14_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L8s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L16s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json new file mode 100644 index 000000000000..93104d1b236b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_D13_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "Standard_D14_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L8", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L16", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json new file mode 100644 index 000000000000..89c9da5f4b5e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json new file mode 100644 index 000000000000..89c9da5f4b5e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json new file mode 100644 index 000000000000..2c870ec034fd --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "parameters": { + "location": "westus" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json new file mode 100644 index 000000000000..1465771cab96 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "dataConnectionName": "DataConnections8", + "properties": { + "kind": "EventHub", + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": [ + { + "errorMessage": "event hub namespace does not exist" + }, + { + "errorMessage": "database does not exist" + } + ] + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json new file mode 100644 index 000000000000..020b25b0fd50 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-02-15", + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "databaseName": "KustoDatabase8", + "dataConnectionName": { + "name": "DataConnections8", + "type": "Microsoft.Kusto/clusters/databases/dataConnections" + } + }, + "responses": { + "200": { + "body": { + "name": "DataConnections8", + "nameAvailable": false, + "message": "Name 'DataConnections8' is already taken. Please specify a different name.", + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json new file mode 100644 index 000000000000..0e9aec30c518 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json new file mode 100644 index 000000000000..d12d685ccafa --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "kustoeventhubconnection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json new file mode 100644 index 000000000000..b32b1cefeea8 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json new file mode 100644 index 000000000000..a8e786180da4 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8", + "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9", + "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2", + "consumerGroup": "testConsumerGroup2" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json new file mode 100644 index 000000000000..0e9aec30c518 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json new file mode 100644 index 000000000000..cdf63446194c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15", + "databasePrincipalsToAdd": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json new file mode 100644 index 000000000000..96330ed3a794 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..6c33147e40da --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/databases/principalAssignments" + }, + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..f31f3e85ab49 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..a625d8427a78 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json new file mode 100644 index 000000000000..725149ddf37f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json new file mode 100644 index 000000000000..46ceefc8b90e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json new file mode 100644 index 000000000000..32bbf1c9fa1c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15", + "databasePrincipalsToRemove": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json new file mode 100644 index 000000000000..b0934aa707e7 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "resourceName": { + "name": "kustoresourcename1", + "type": "Microsoft.Kusto/clusters/databases" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoresourcename1", + "nameAvailable": false, + "message": "Name 'kuskus' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json new file mode 100644 index 000000000000..dabdaeccd13e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "properties": { + "softDeletePeriod": "P1D" + }, + "kind": "ReadWrite" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json new file mode 100644 index 000000000000..34a4d8cddd72 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json new file mode 100644 index 000000000000..9ceceb81e750 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json new file mode 100644 index 000000000000..3876612de72d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json new file mode 100644 index 000000000000..50082dcd98ab --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "softDeletePeriod": "P1D" + }, + "kind": "ReadWrite" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json new file mode 100644 index 000000000000..ad5bf9d072d8 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "provider": "providerName", + "resource": "resourceName", + "operation": "operationName", + "description": "operation description" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json new file mode 100644 index 000000000000..9f6452aaae4a --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json @@ -0,0 +1,4238 @@ +{ + "swagger": "2.0", + "info": { + "title": "KustoManagementClient", + "version": "2020-02-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Get", + "x-ms-examples": { + "KustoClustersGet": { + "$ref": "./examples/KustoClustersGet.json" + } + }, + "description": "Gets a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CreateOrUpdate", + "x-ms-examples": { + "KustoClustersCreateOrUpdate": { + "$ref": "./examples/KustoClustersCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create or update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The Kusto cluster parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully created the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Update", + "x-ms-examples": { + "KustoClustersUpdate": { + "$ref": "./examples/KustoClustersUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdate" + }, + "description": "The Kusto cluster parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Delete", + "x-ms-examples": { + "KustoClustersDelete": { + "$ref": "./examples/KustoClustersDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- cluster deleted successfully." + }, + "202": { + "description": "Accepted the delete cluster request." + }, + "204": { + "description": "NoContent -- cluster does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/stop": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Stop", + "x-ms-examples": { + "KustoClustersStop": { + "$ref": "./examples/KustoClustersStop.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Stops a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/start": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Start", + "x-ms-examples": { + "KustoClustersStart": { + "$ref": "./examples/KustoClustersStart.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Starts a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCheckNameAvailability": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the principal assignment name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the principal assignment." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Get", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsGet": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster principal assignment object.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The Kusto cluster principalAssignment's parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Delete", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsDelete": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of databases that are owned by this cluster and were followed by another cluster.", + "operationId": "Clusters_ListFollowerDatabases", + "x-ms-examples": { + "KustoClusterListFollowerDatabases": { + "$ref": "./examples/KustoClusterListFollowerDatabases.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of followed databases.", + "schema": { + "$ref": "#/definitions/FollowerDatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/detachFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Detaches all followers of a database owned by this cluster.", + "operationId": "Clusters_DetachFollowerDatabases", + "x-ms-examples": { + "KustoClusterDetachFollowerDatabases": { + "$ref": "./examples/KustoClusterDetachFollowerDatabases.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "followerDatabaseToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The follower databases properties to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/diagnoseVirtualNetwork": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Diagnoses network connectivity status for external resources on which the service is dependent on.", + "operationId": "Clusters_DiagnoseVirtualNetwork", + "x-ms-examples": { + "KustoClusterDiagnoseVirtualNetwork": { + "$ref": "./examples/KustoClustersDiagnoseVirtualNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DiagnoseVirtualNetworkResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListByResourceGroup", + "x-ms-examples": { + "KustoClustersListByResourceGroup": { + "$ref": "./examples/KustoClustersListByResourceGroup.json" + } + }, + "description": "Lists all Kusto clusters within a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_List", + "x-ms-examples": { + "KustoClustersList": { + "$ref": "./examples/KustoClustersList.json" + } + }, + "description": "Lists all Kusto clusters within a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/skus": { + "get": { + "description": "Lists eligible SKUs for Kusto resource provider.", + "x-ms-examples": { + "KustoClustersListSkus": { + "$ref": "./examples/KustoClustersListSkus.json" + } + }, + "operationId": "Clusters_ListSkus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CheckNameAvailability", + "x-ms-examples": { + "KustoClustersCheckNameAvailability": { + "$ref": "./examples/KustoClustersCheckNameAvailability.json" + } + }, + "description": "Checks that the cluster name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "Azure location.", + "required": true, + "type": "string" + }, + { + "name": "clusterName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterCheckNameRequest" + }, + "description": "The name of the cluster." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkNameAvailability": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasesCheckNameAvailability.json" + } + }, + "description": "Checks that the database name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/skus": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListSkusByResource", + "x-ms-examples": { + "KustoClustersListResourceSkus": { + "$ref": "./examples/KustoClustersListResourceSkus.json" + } + }, + "description": "Returns the SKUs available for the provided resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ListResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns the list of databases of the given Kusto cluster.", + "operationId": "Databases_ListByCluster", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDatabasesListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns a database.", + "operationId": "Databases_Get", + "x-ms-examples": { + "KustoDatabasesGet": { + "$ref": "./examples/KustoDatabasesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates or updates a database.", + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasesCreateOrUpdate": { + "$ref": "./examples/KustoDatabasesCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates a database.", + "operationId": "Databases_Update", + "x-ms-examples": { + "KustoDatabasesUpdate": { + "$ref": "./examples/KustoDatabasesUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the update database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database with the given name.", + "operationId": "Databases_Delete", + "x-ms-examples": { + "KustoDatabasesDelete": { + "$ref": "./examples/KustoDatabasesDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the database principal assignment is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Get", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsGet": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster database principal assignment object.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The Kusto principalAssignments parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Delete", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsDelete": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster database principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/listPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "description": "Returns a list of database principals of the given Kusto cluster and database.", + "operationId": "Databases_ListPrincipals", + "x-ms-examples": { + "KustoDatabaseListPrincipals": { + "$ref": "./examples/KustoDatabaseListPrincipals.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/addPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_AddPrincipals", + "x-ms-examples": { + "KustoDatabaseAddPrincipals": { + "$ref": "./examples/KustoDatabaseAddPrincipals.json" + } + }, + "description": "Add Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to add." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully added the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns the list of attached database configurations of the given Kusto cluster.", + "operationId": "AttachedDatabaseConfigurations_ListByCluster", + "x-ms-examples": { + "KustoAttachedDatabaseConfigurationsListByCluster": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of attached database configurations.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations/{attachedDatabaseConfigurationName}": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_Get", + "x-ms-examples": { + "AttachedDatabaseConfigurationsGet": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified attached database configuration.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Creates or updates an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_CreateOrUpdate", + "x-ms-examples": { + "AttachedDatabaseConfigurationsCreateOrUpdate": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Deletes the attached database configuration with the given name.", + "operationId": "AttachedDatabaseConfigurations_Delete", + "x-ms-examples": { + "AttachedDatabaseConfigurationsDelete": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/removePrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_RemovePrincipals", + "x-ms-examples": { + "KustoDatabaseRemovePrincipals": { + "$ref": "./examples/KustoDatabaseRemovePrincipals.json" + } + }, + "description": "Remove Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to remove." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully removed the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns the list of data connections of the given Kusto database.", + "operationId": "DataConnections_ListByDatabase", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDataConnectionsListByDatabase.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of data connections.", + "schema": { + "$ref": "#/definitions/DataConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnectionValidation": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_dataConnectionValidation", + "x-ms-examples": { + "KustoDataConnectionValidation": { + "$ref": "./examples/KustoDataConnectionValidation.json" + } + }, + "description": "Checks that the data connection parameters are valid.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionValidation" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/DataConnectionValidationListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkNameAvailability": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_CheckNameAvailability", + "x-ms-examples": { + "KustoDataConnectionsCheckNameAvailability": { + "$ref": "./examples/KustoDataConnectionsCheckNameAvailability.json" + } + }, + "description": "Checks that the data connection name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "dataConnectionName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionCheckNameRequest" + }, + "description": "The name of the data connection." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the Kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections/{dataConnectionName}": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns a data connection.", + "operationId": "DataConnections_Get", + "x-ms-examples": { + "KustoDataConnectionsGet": { + "$ref": "./examples/KustoDataConnectionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DataConnections" + ], + "description": "Creates or updates a data connection.", + "operationId": "DataConnections_CreateOrUpdate", + "x-ms-examples": { + "KustoDataConnectionsCreateOrUpdate": { + "$ref": "./examples/KustoDataConnectionsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully created the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the create data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DataConnections" + ], + "description": "Updates a data connection.", + "operationId": "DataConnections_Update", + "x-ms-examples": { + "KustoDataConnectionsUpdate": { + "$ref": "./examples/KustoDataConnectionsUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the update data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DataConnections" + ], + "description": "Deletes the data connection with the given name.", + "operationId": "DataConnections_Delete", + "x-ms-examples": { + "KustoDataConnectionsDelete": { + "$ref": "./examples/KustoDataConnectionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the data connection." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified data connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.Kusto/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "KustoOperationsList": { + "$ref": "./examples/KustoOperationsList.json" + } + }, + "description": "Lists available operations for the Microsoft.Kusto provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_ListLanguageExtensions", + "x-ms-examples": { + "KustoClusterListLanguageExtensions": { + "$ref": "./examples/KustoClusterListLanguageExtensions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of language extensions.", + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/addLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Add a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_AddLanguageExtensions", + "x-ms-examples": { + "KustoClusterAddLanguageExtensions": { + "$ref": "./examples/KustoClusterAddLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to add." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/removeLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Remove a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_RemoveLanguageExtensions", + "x-ms-examples": { + "KustoClusterRemoveLanguageExtensions": { + "$ref": "./examples/KustoClusterRemoveLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "uri": { + "type": "string", + "readOnly": true, + "description": "The cluster URI." + }, + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The cluster data ingestion URI." + }, + "stateReason": { + "type": "string", + "readOnly": true, + "description": "The reason for the cluster's current state." + }, + "trustedExternalTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/TrustedExternalTenant" + }, + "description": "The cluster's external tenants." + }, + "optimizedAutoscale": { + "type": "object", + "$ref": "#/definitions/OptimizedAutoscale", + "description": "Optimized auto scale definition." + }, + "enableDiskEncryption": { + "description": "A boolean value that indicates if the cluster's disks are encrypted.", + "type": "boolean" + }, + "enableStreamingIngest": { + "description": "A boolean value that indicates if the streaming ingest is enabled.", + "default": false, + "type": "boolean" + }, + "virtualNetworkConfiguration": { + "type": "object", + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network definition." + }, + "keyVaultProperties": { + "type": "object", + "$ref": "#/definitions/KeyVaultProperties", + "description": "KeyVault properties for the cluster encryption." + }, + "enablePurge": { + "description": "A boolean value that indicates if the purge operations are enabled.", + "default": false, + "type": "boolean" + }, + "languageExtensions": { + "type": "object", + "$ref": "#/definitions/LanguageExtensionsList", + "description": "List of the cluster's language extensions." + } + }, + "description": "Class representing the Kusto cluster properties." + }, + "TrustedExternalTenant": { + "properties": { + "value": { + "type": "string", + "description": "GUID representing an external tenant." + } + }, + "description": "Represents a tenant ID that is trusted by the cluster." + }, + "AzureResourceSku": { + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU details." + }, + "capacity": { + "$ref": "#/definitions/AzureCapacity", + "description": "The number of instances of the cluster." + } + }, + "description": "Azure resource SKU definition." + }, + "AzureCapacity": { + "type": "object", + "required": [ + "minimum", + "maximum", + "default", + "scaleType" + ], + "properties": { + "scaleType": { + "description": "Scale type.", + "type": "string", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "AzureScaleType", + "modelAsString": true + } + }, + "minimum": { + "description": "Minimum allowed capacity.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed capacity.", + "type": "integer" + }, + "default": { + "description": "The default capacity that would be used.", + "type": "integer" + } + }, + "description": "Azure capacity definition." + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The Kusto SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The locations and zones info for SKU.", + "type": "object", + "required": [ + "location" + ], + "properties": { + "location": { + "description": "The available location of the SKU.", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2", + "Standard_E2a_v4", + "Standard_E4a_v4", + "Standard_E8a_v4", + "Standard_E16a_v4", + "Standard_E8as_v4+1TB_PS", + "Standard_E8as_v4+2TB_PS", + "Standard_E16as_v4+3TB_PS", + "Standard_E16as_v4+4TB_PS", + "Dev(No SLA)_Standard_E2a_v4" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } + }, + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer" + }, + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "Zones": { + "description": "An array represents the availability zones of the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "OptimizedAutoscale": { + "type": "object", + "required": [ + "version", + "isEnabled", + "minimum", + "maximum" + ], + "properties": { + "version": { + "description": "The version of the template defined, for instance 1.", + "type": "integer" + }, + "isEnabled": { + "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", + "type": "boolean" + }, + "minimum": { + "description": "Minimum allowed instances count.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed instances count.", + "type": "integer" + } + }, + "description": "A class that contains the optimized auto scale definition." + }, + "VirtualNetworkConfiguration": { + "type": "object", + "required": [ + "subnetId", + "enginePublicIpId", + "dataManagementPublicIpId" + ], + "properties": { + "subnetId": { + "description": "The subnet resource id.", + "type": "string" + }, + "enginePublicIpId": { + "description": "Engine service's public IP address resource id.", + "type": "string" + }, + "dataManagementPublicIpId": { + "description": "Data management's service public IP address resource id.", + "type": "string" + } + }, + "description": "A class that contains virtual network definition." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "AttachedDatabaseConfigurationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "databaseName": { + "type": "string", + "description": "The name of the database which you would like to attach, use * if you want to follow all current and future databases." + }, + "clusterResourceId": { + "type": "string", + "description": "The resource id of the cluster where the databases you would like to attach reside." + }, + "attachedDatabaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of databases from the clusterResourceId which are currently attached to the cluster." + }, + "defaultPrincipalsModificationKind": { + "type": "string", + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "DefaultPrincipalsModificationKind", + "modelAsString": true + }, + "description": "The default principals modification kind" + } + }, + "description": "Class representing the an attached database configuration properties of kind specific.", + "required": [ + "databaseName", + "clusterResourceId", + "defaultPrincipalsModificationKind" + ] + }, + "ReadWriteDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "isFollowed": { + "type": "string", + "readOnly": true, + "description": "Indicates whether the database is followed." + } + }, + "description": "Class representing the Kusto database properties." + }, + "ReadOnlyFollowingDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "readOnly": true, + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "leaderClusterResourceId": { + "type": "string", + "readOnly": true, + "description": "The name of the leader cluster" + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "readOnly": true, + "description": "The name of the attached database configuration cluster" + }, + "principalsModificationKind": { + "type": "string", + "readOnly": true, + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "PrincipalsModificationKind", + "modelAsString": true + }, + "description": "The principals modification kind of the database" + } + }, + "description": "Class representing the Kusto database properties." + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the event hub" + }, + "compression": { + "$ref": "#/definitions/Compression", + "description": "The event hub messages compression type" + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/IotHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy" + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto Iot hub connection properties." + }, + "EventHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventHubDataFormat", + "modelAsString": true + } + }, + "IotHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "iotHubDataFormat", + "modelAsString": true + } + }, + "EventGridDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventGridDataFormat", + "modelAsString": true + } + }, + "Compression": { + "description": "The compression type", + "type": "string", + "enum": [ + "None", + "GZip" + ], + "x-ms-enum": { + "name": "compression", + "modelAsString": true + } + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventGridDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup", + "tableName", + "dataFormat" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "Cluster": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "zones": { + "$ref": "#/definitions/Zones", + "description": "The availability zones of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto cluster." + }, + "ClusterUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The cluster properties.", + "$ref": "#/definitions/ClusterProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto cluster." + }, + "AttachedDatabaseConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The list of attached database configurations." + } + }, + "description": "The list attached database configurations operation response." + }, + "AttachedDatabaseConfiguration": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the attached database configuration.", + "$ref": "#/definitions/AttachedDatabaseConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an attached database configuration." + }, + "Database": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the database", + "enum": [ + "ReadWrite", + "ReadOnlyFollowing" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database.", + "discriminator": "kind" + }, + "ReadWriteDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadWriteDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read write database.", + "x-ms-discriminator-value": "ReadWrite" + }, + "ReadOnlyFollowingDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadOnlyFollowingDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read only following database.", + "x-ms-discriminator-value": "ReadOnlyFollowing" + }, + "DatabasePrincipal": { + "type": "object", + "required": [ + "name", + "role", + "type" + ], + "properties": { + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "name": { + "description": "Database principal name.", + "type": "string" + }, + "type": { + "description": "Database principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "DatabasePrincipalType", + "modelAsString": true + } + }, + "fqn": { + "description": "Database principal fully qualified name.", + "type": "string" + }, + "email": { + "description": "Database principal email if exists.", + "type": "string" + }, + "appId": { + "description": "Application id - relevant only for application principal type.", + "type": "string" + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + } + }, + "description": "A class representing database principal entity." + }, + "DatabasePrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the database principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing database principal property." + }, + "ClusterPrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Cluster principal role.", + "type": "string", + "enum": [ + "AllDatabasesAdmin", + "AllDatabasesViewer" + ], + "x-ms-enum": { + "name": "ClusterPrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing cluster principal property." + }, + "DatabasePrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabasePrincipalProperties", + "description": "The database principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database principal assignment." + }, + "ClusterPrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPrincipalProperties", + "description": "The cluster principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a cluster principal assignment." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "The list of Kusto clusters." + } + }, + "description": "The list Kusto clusters operation response." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "DatabasePrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The list of Kusto database principal assignments." + } + }, + "description": "The list Kusto database principal assignments operation response." + }, + "ClusterPrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The list of Kusto cluster principal assignments." + } + }, + "description": "The list Kusto cluster principal assignments operation response." + }, + "DatabasePrincipalListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation response." + }, + "FollowerDatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The list of follower database result." + } + }, + "description": "The list Kusto database principals operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an data connection.", + "discriminator": "kind" + }, + "DataConnectionValidationResult": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "A message which indicates a problem in data connection validation." + } + }, + "description": "The result returned from a data connection validation request." + }, + "DatabasePrincipalListRequest": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation request." + }, + "FollowerDatabaseDefinition": { + "type": "object", + "required": [ + "clusterResourceId", + "attachedDatabaseConfigurationName" + ], + "properties": { + "clusterResourceId": { + "type": "string", + "description": "Resource id of the cluster that follows a database owned by this cluster." + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "description": "Resource name of the attached database configuration in the follower cluster." + }, + "databaseName": { + "type": "string", + "readOnly": true, + "description": "The database name owned by this cluster that was followed. * in case following all databases." + } + }, + "description": "A class representing follower database request." + }, + "DiagnoseVirtualNetworkResult": { + "properties": { + "findings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of network connectivity diagnostic finding" + } + } + }, + "DataConnectionValidation": { + "properties": { + "dataConnectionName": { + "type": "string", + "description": "The name of the data connection." + }, + "properties": { + "$ref": "#/definitions/DataConnection", + "description": "The data connection properties to validate." + } + }, + "description": "Class representing an data connection validation." + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "DataConnectionValidationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnectionValidationResult" + }, + "description": "The list of Kusto data connection validation errors." + } + }, + "description": "The list Kusto data connection validation result." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from Kusto." + } + }, + "description": "An error response from Kusto." + }, + "ClusterCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Cluster name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a cluster check name availability request." + }, + "CheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases", + "Microsoft.Kusto/clusters/attachedDatabaseConfigurations" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, for instance Microsoft.Kusto/clusters/databases." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a database check name availability request." + }, + "ClusterPrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "DataConnectionCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data Connection name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/dataConnections" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." + } + }, + "required": [ + "name", + "type" + ], + "description": "A data connection check name availability request." + }, + "DatabasePrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + }, + "ListResourceSkusResult": { + "description": "List of available SKUs for a Kusto Cluster.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureResourceSku" + }, + "description": "The collection of available SKUs for an existing resource." + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Kusto." + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation.", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Kusto cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "KeyVaultProperties": { + "description": "Properties of the key vault.", + "required": [ + "keyName", + "keyVersion", + "keyVaultUri" + ], + "properties": { + "keyName": { + "type": "string", + "description": "The name of the key vault key.", + "x-ms-client-name": "KeyName" + }, + "keyVersion": { + "type": "string", + "description": "The version of the key vault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The Uri of the key vault.", + "x-ms-client-name": "KeyVaultUri" + } + } + }, + "LanguageExtensionName": { + "description": "Language extension that can run within KQL query.", + "type": "string", + "enum": [ + "PYTHON", + "R" + ], + "x-ms-enum": { + "name": "languageExtensionName", + "modelAsString": true + } + }, + "LanguageExtension": { + "type": "object", + "description": "The language extension object.", + "properties": { + "languageExtensionName": { + "$ref": "#/definitions/LanguageExtensionName", + "description": "The language extension name." + } + } + }, + "LanguageExtensionsList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageExtension" + }, + "description": "The list of language extensions." + } + }, + "description": "The list of language extension objects." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AttachedDatabaseConfigurationNameParameter": { + "name": "attachedDatabaseConfigurationName", + "in": "path", + "description": "The name of the attached database configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group containing the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database in the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnectionNameParameter": { + "name": "dataConnectionName", + "in": "path", + "description": "The name of the data connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrincipalAssignmentNameParameter": { + "name": "principalAssignmentName", + "in": "path", + "description": "The name of the Kusto principalAssignment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/readme.az.md b/specification/azure-kusto/resource-manager/readme.az.md new file mode 100644 index 000000000000..16ed7b113692 --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.az.md @@ -0,0 +1,27 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: kusto + namespace: azure.mgmt.kusto + package-name: azure-mgmt-kusto +az-output-folder: $(azure-cli-extension-folder)/src/kusto +python-sdk-output-folder: "$(az-output-folder)/azext_kusto/vendored_sdks/kusto" + + +cli: + cli-directive: + - where: + group: 'DataConnections' + op: 'CreateOrUpdate|Update' + param: 'parameters' + poly-resource: true + - where: + group: 'DataConnections' + op: 'dataConnectionValidation' + param: 'properties' + poly-resource: true + +``` diff --git a/specification/azure-kusto/resource-manager/readme.go.md b/specification/azure-kusto/resource-manager/readme.go.md index 6e4e9e08e8e5..15474d8a5833 100644 --- a/specification/azure-kusto/resource-manager/readme.go.md +++ b/specification/azure-kusto/resource-manager/readme.go.md @@ -18,6 +18,7 @@ batch: - tag: package-2019-05-15 - tag: package-2019-09-07 - tag: package-2019-11-09 + - tag: package-2020-02-15 ``` ### Tag: package-2018-09-07-preview and go @@ -64,3 +65,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-02-15' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-15/$(namespace) +``` diff --git a/specification/azure-kusto/resource-manager/readme.md b/specification/azure-kusto/resource-manager/readme.md index 475e0ce20892..ef252e846aa8 100644 --- a/specification/azure-kusto/resource-manager/readme.md +++ b/specification/azure-kusto/resource-manager/readme.md @@ -28,7 +28,16 @@ These are the global settings for the Kusto API. title: KustoManagementClient description: 'The Azure Kusto management API provides a RESTful set of web services that interact with Azure Kusto services to manage your clusters and databases. The API enables you to create, update, and delete clusters and databases.' openapi-type: arm -tag: package-2019-11-09 +tag: package-2020-02-15 +``` + +### Tag: package-2020-02-15 + +These settings apply only when `--tag=package-2020-02-15` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-15' +input-file: + - Microsoft.Kusto/stable/2020-02-15/kusto.json ``` ### Tag: package-2019-11-09 @@ -153,6 +162,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-go - repo: azure-sdk-for-java + - repo: azure-cli-extensions ``` ## C# @@ -185,6 +195,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Kusto/stable/2020-02-15/kusto.json - $(this-folder)/Microsoft.Kusto/stable/2019-11-09/kusto.json - $(this-folder)/Microsoft.Kusto/stable/2019-09-07/kusto.json - $(this-folder)/Microsoft.Kusto/stable/2019-05-15/kusto.json diff --git a/specification/azure-kusto/resource-manager/readme.typescript.md b/specification/azure-kusto/resource-manager/readme.typescript.md index c61a03a02d5f..5f0eff880c2b 100644 --- a/specification/azure-kusto/resource-manager/readme.typescript.md +++ b/specification/azure-kusto/resource-manager/readme.typescript.md @@ -7,7 +7,7 @@ Please also specify `--typescript-sdks-folder=`. +### Go multi-api -```yaml $(tag) == 'package-2017-03-01-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-03-01-preview/$(namespace) +``` yaml $(go) && $(multiapi) +batch: + - tag: package-preview-2019-07 ``` + +### Tag: package-preview-2019-07 and go + +These settings apply only when `--tag=package-preview-2019-07 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-preview-2019-07' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-07-24-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/azuredata/resource-manager/readme.md b/specification/azuredata/resource-manager/readme.md index a785db2a1117..4ecacc7c3f4c 100644 --- a/specification/azuredata/resource-manager/readme.md +++ b/specification/azuredata/resource-manager/readme.md @@ -24,18 +24,27 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the azuredata. -```yaml +``` yaml openapi-type: arm -tag: package-2017-03-01-preview +tag: package-preview-2019-07 ``` + +### Tag: package-preview-2019-07 + +These settings apply only when `--tag=package-preview-2019-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2019-07' +input-file: + - Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json +``` ### Tag: package-2017-03-01-preview -These settings apply only when `--tag=package-2017-03-01-preview` is specified on the command line. +These settings apply only when `--tag=package-2019-07-24` is specified on the command line. -```yaml $(tag) == 'package-2017-03-01-preview' +``` yaml $(tag) == 'package-2017-03-01-preview' input-file: - - Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json + - Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json ``` --- @@ -47,7 +56,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -```yaml $(swagger-to-sdk) +``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java @@ -79,7 +88,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -91,15 +100,14 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json + - $(this-folder)/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - +``` \ No newline at end of file diff --git a/specification/azuredata/resource-manager/readme.python.md b/specification/azuredata/resource-manager/readme.python.md index bf6a13faa44e..dfc534e650b1 100644 --- a/specification/azuredata/resource-manager/readme.python.md +++ b/specification/azuredata/resource-manager/readme.python.md @@ -10,7 +10,7 @@ python: payload-flattening-threshold: 2 namespace: Microsoft.AzureData package-name: azuredata - package-version: 2017-03-01-preview + package-version: 2019-07-24 clear-output-folder: true ``` @@ -18,4 +18,4 @@ python: python: no-namespace-folders: true output-folder: $(python-sdks-folder)/azure-mgmt/azuredata -``` +``` \ No newline at end of file diff --git a/specification/azuredata/resource-manager/readme.ruby.md b/specification/azuredata/resource-manager/readme.ruby.md index 29cb0b76fa8f..93221f0c2e2d 100644 --- a/specification/azuredata/resource-manager/readme.ruby.md +++ b/specification/azuredata/resource-manager/readme.ruby.md @@ -4,16 +4,16 @@ These settings apply only when `--ruby` is specified on the command line. ```yaml package-name: azure_mgmt_azuredata -package-version: 2017-03-01-preview +package-version: 2019-07-24 azure-arm: true ``` -### Tag: package-2017-03-01-preview and ruby +### Tag: package-2019-07-24 and ruby -These settings apply only when `--tag=package-2017-03-01-preview --ruby` is specified on the command line. +These settings apply only when `--tag=package-2019-07-24 --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -```yaml $(tag) == 'package-2017-03-01-preview' && $(ruby) +```yaml $(tag) == 'package-2019-07-24' && $(ruby) namespace: Microsoft.AzureData output-folder: $(ruby-sdks-folder)/azuredata -``` +``` \ No newline at end of file diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json index a483a44e5b74..3e929c5056f6 100644 --- a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json @@ -49,8 +49,8 @@ "BatchAccountCreate_BYOS": { "$ref": "./examples/BatchAccountCreate_BYOS.json" }, - "BatchAccountCreate_PrivateLink": { - "$ref": "./examples/BatchAccountCreate_Private.json" + "PrivateBatchAccountCreate": { + "$ref": "./examples/PrivateBatchAccountCreate.json" } }, "description": "Creates a new Batch account with the specified parameters. Existing accounts cannot be updated with this API and should instead be updated with the Update Batch Account API.", @@ -226,6 +226,9 @@ "x-ms-examples": { "BatchAccountGet": { "$ref": "./examples/BatchAccountGet.json" + }, + "PrivateBatchAccountGet": { + "$ref": "./examples/PrivateBatchAccountGet.json" } }, "description": "Gets information about the specified Batch account.", @@ -2236,6 +2239,7 @@ }, "publicNetworkAccess": { "title": "The network access type for accessing Azure Batch account.", + "description": "If not specified, the default value is 'enabled'.", "$ref": "#/definitions/PublicNetworkAccessType" }, "encryption": { @@ -2391,6 +2395,15 @@ "description": "If not specified, the default value is 'enabled'.", "$ref": "#/definitions/PublicNetworkAccessType" }, + "privateEndpointConnections": { + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connections associated with the Batch account" + }, "autoStorage": { "title": "The properties and status of any auto-storage account associated with the Batch account.", "readOnly": true, @@ -3098,6 +3111,14 @@ }, "title": "The list of required members that are used to establish the private link connection.", "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of required zone names for the private DNS resource name", + "readOnly": true } }, "description": "Private link resource properties." @@ -3185,6 +3206,9 @@ "readOnly": true } }, + "required": [ + "status" + ], "description": "The private link service connection state of the private endpoint connection" }, "PrivateLinkServiceConnectionStatus": { @@ -3512,13 +3536,13 @@ "type": "integer", "format": "int32", "title": "The desired number of dedicated compute nodes in the pool.", - "description": "At least one of targetDedicatedNodes, targetLowPriority nodes must be set." + "description": "At least one of targetDedicatedNodes, targetLowPriorityNodes must be set." }, "targetLowPriorityNodes": { "type": "integer", "format": "int32", "title": "The desired number of low-priority compute nodes in the pool.", - "description": "At least one of targetDedicatedNodes, targetLowPriority nodes must be set." + "description": "At least one of targetDedicatedNodes, targetLowPriorityNodes must be set." }, "nodeDeallocationOption": { "title": "Determines what to do with a node and its running task(s) if the pool size is decreasing.", diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_Private.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountCreate.json similarity index 100% rename from specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_Private.json rename to specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountCreate.json diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json new file mode 100644 index 000000000000..dab89f66207d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateEndpointConnections/testprivateEndpointConnection", + "name": "testprivateEndpointConnection", + "type": "Microsoft.Batch/batchAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Network/privateEndpoints/testprivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + ] + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json index 26d5fd55f07a..cb44db083e6e 100644 --- a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json @@ -16,6 +16,9 @@ "groupId": "batchAccount", "requiredMembers": [ "batchAccount" + ], + "requiredZoneNames": [ + "privatelink.japaneast.batch.azure.com" ] } } diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json index eb40377bb095..e3baf7bcfa61 100644 --- a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json @@ -18,6 +18,9 @@ "groupId": "batchAccount", "requiredMembers": [ "batchAccount" + ], + "requiredZoneNames": [ + "privatelink.japaneast.batch.azure.com" ] } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index 6ddd185c5de4..474087d42ac9 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -33,14 +33,14 @@ } }, "operationId": "BillingAccounts_List", - "description": "Lists all billing accounts for a user which he has access to.", + "description": "Lists the billing accounts that a user has access to.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" }, { "name": "$expand", - "description": "May be used to expand the address, invoiceSections and billingProfiles.", + "description": "May be used to expand the address, invoice sections and billing profiles.", "in": "query", "required": false, "type": "string" @@ -76,7 +76,7 @@ } }, "operationId": "BillingAccounts_Get", - "description": "Get the billing account by id.", + "description": "Gets a billing account by its ID.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -86,7 +86,7 @@ }, { "name": "$expand", - "description": "May be used to expand the address, invoiceSections and billingProfiles.", + "description": "May be used to expand the address, invoice sections and billing profiles.", "in": "query", "required": false, "type": "string" @@ -116,7 +116,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "azure-async-operation" }, - "description": "The operation to update a billing account.", + "description": "Updates the properties of a billing account. Currently, displayName and address can be updated. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateBillingAccount": { "$ref": "./examples/UpdateBillingAccount.json" @@ -136,7 +136,7 @@ "schema": { "$ref": "#/definitions/BillingAccountUpdateRequest" }, - "description": "Request parameters supplied to the update billing account operation." + "description": "Request parameters that are provided to the update billing account operation." } ], "responses": { @@ -169,7 +169,7 @@ } }, "operationId": "BillingAccounts_ListInvoiceSectionsByCreateSubscriptionPermission", - "description": "Lists all invoice sections with create subscription permission for a user.", + "description": "Lists the invoice sections for which the user has permission to create Azure subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -203,7 +203,7 @@ "PaymentMethods" ], "operationId": "PaymentMethods_ListByBillingAccount", - "description": "Lists the Payment Methods by billing account Id.", + "description": "Lists the payment Methods for a billing account. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/2019-10-01-preview/paymentmethods" }, @@ -253,7 +253,7 @@ } }, "operationId": "Address_Validate", - "description": "Validates the address.", + "description": "Validates an address. Use the operation to validate an address before using it as a billing account or a billing profile address.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -289,7 +289,7 @@ "AvailableBalances" ], "operationId": "AvailableBalances_GetByBillingProfile", - "description": "The latest available credit balance for a given billingAccountName and billingProfileName.", + "description": "The available credit balance for a billing profile. This is the balance that can be used for pay now to settle due or past due invoices. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AvailableBalanceByBillingProfile": { "$ref": "./examples/AvailableBalanceByBillingProfile.json" @@ -378,7 +378,7 @@ } }, "operationId": "Instructions_Get", - "description": "Get the instruction by name.", + "description": "Get the instruction by name. These are custom billing instructions and are only applicable for certain customers.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -413,7 +413,7 @@ "Instructions" ], "operationId": "Instructions_Put", - "description": "The operation to create or update a instruction.", + "description": "Creates or updates an instruction. These are custom billing instructions and are only applicable for certain customers.", "x-ms-examples": { "PutInstruction": { "$ref": "./examples/PutInstruction.json" @@ -464,7 +464,7 @@ "PaymentMethods" ], "operationId": "PaymentMethods_ListByBillingProfile", - "description": "Lists the Payment Methods by billing profile Id.", + "description": "Lists the payment Methods for a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -517,7 +517,7 @@ } }, "operationId": "BillingProfiles_ListByBillingAccount", - "description": "Lists all billing profiles for a user which that user has access to.", + "description": "Lists the billing profiles that a user has access to. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -527,7 +527,7 @@ }, { "name": "$expand", - "description": "May be used to expand the invoiceSections.", + "description": "May be used to expand the invoice sections.", "in": "query", "required": false, "type": "string" @@ -563,7 +563,7 @@ } }, "operationId": "BillingProfiles_Get", - "description": "Get the billing profile by id.", + "description": "Gets a billing profile by its ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -576,7 +576,7 @@ }, { "name": "$expand", - "description": "May be used to expand the invoiceSections.", + "description": "May be used to expand the invoice sections.", "in": "query", "required": false, "type": "string" @@ -603,7 +603,7 @@ ], "operationId": "BillingProfiles_Create", "x-ms-long-running-operation": true, - "description": "The operation to create a BillingProfile.", + "description": "Creates a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "x-ms-examples": { "CreateBillingProfile": { "$ref": "./examples/CreateBillingProfile.json" @@ -626,7 +626,7 @@ "schema": { "$ref": "#/definitions/BillingProfileCreationRequest" }, - "description": "Request parameters supplied to the Create BillingProfile operation." + "description": "Request parameters that are provided to the create billing profile operation." } ], "responses": { @@ -644,7 +644,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -663,7 +663,7 @@ ], "operationId": "BillingProfiles_Update", "x-ms-long-running-operation": true, - "description": "The operation to update a billing profile.", + "description": "Updates the properties of a billing profile. Currently, displayName, poNumber, bill-to address and invoiceEmailOptIn can be updated. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "x-ms-examples": { "UpdateBillingProfile": { "$ref": "./examples/UpdateBillingProfile.json" @@ -729,7 +729,7 @@ } }, "operationId": "Customers_ListByBillingProfile", - "description": "Lists customers by billing profile which the current user can work with on-behalf of a partner.", + "description": "Lists the customers that are billed to a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -785,7 +785,7 @@ } }, "operationId": "InvoiceSections_ListByBillingProfile", - "description": "Lists all invoice sections for a user which he has access to.", + "description": "Lists the invoice sections that a user has access to. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -824,7 +824,7 @@ } }, "operationId": "InvoiceSections_Get", - "description": "Get the InvoiceSection by id.", + "description": "Gets an invoice section by its ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -860,7 +860,7 @@ ], "operationId": "InvoiceSections_Create", "x-ms-long-running-operation": true, - "description": "The operation to create an invoice section.", + "description": "Creates an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "CreateInvoiceSection": { "$ref": "./examples/CreateInvoiceSection.json" @@ -886,7 +886,7 @@ "schema": { "$ref": "#/definitions/InvoiceSectionCreationRequest" }, - "description": "Request parameters supplied to the Create InvoiceSection operation." + "description": "Request parameters that are provided to the create invoice section operation." } ], "responses": { @@ -904,7 +904,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -923,7 +923,7 @@ ], "operationId": "InvoiceSections_Update", "x-ms-long-running-operation": true, - "description": "The operation to update a InvoiceSection.", + "description": "Updates an invoice section. Currently, only displayName can be updated. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateInvoiceSection": { "$ref": "./examples/UpdateInvoiceSection.json" @@ -949,7 +949,7 @@ "schema": { "$ref": "#/definitions/InvoiceSection" }, - "description": "Request parameters supplied to the Create InvoiceSection operation." + "description": "Request parameters that are provided to the update invoice section operation." } ], "responses": { @@ -992,7 +992,7 @@ } }, "operationId": "Customers_ListByBillingAccount", - "description": "Lists customers which the current user can work with on-behalf of a partner.", + "description": "Lists the customers that are billed to a billing account. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1048,7 +1048,7 @@ } }, "operationId": "Customers_Get", - "description": "Gets a customer by its id.", + "description": "Gets a customer by its ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1061,7 +1061,7 @@ }, { "name": "$expand", - "description": "May be used to expand enabledAzurePlans, resellers.", + "description": "May be used to expand enabledAzurePlans and resellers", "in": "query", "required": false, "type": "string" @@ -1094,7 +1094,7 @@ } }, "operationId": "BillingPermissions_ListByCustomer", - "description": "Lists all billing permissions the caller has for a customer.", + "description": "Lists the billing permissions the caller has for a customer.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1128,9 +1128,9 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByCustomer", - "description": "Lists billing subscription by customer id.", + "description": "Lists the subscriptions for a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "BillingSubscriptionsListByCustomer": { @@ -1173,9 +1173,9 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_GetByCustomer", - "description": "Get a single billing subscription by id.", + "description": "Gets a subscription by its ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "BillingSubscriptionByCustomer": { @@ -1218,7 +1218,7 @@ "Products" ], "operationId": "Products_ListByCustomer", - "description": "Lists products by customer id.", + "description": "Lists the products for a customer. These don't include products billed based on usage.The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1239,7 +1239,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1267,7 +1267,7 @@ "Products" ], "operationId": "Products_GetByCustomer", - "description": "Get a customer's product by name.", + "description": "Gets a product by ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1314,7 +1314,7 @@ "operationId": "Transactions_ListByCustomer", "description": "Lists the billed and unbilled transactions by customer id for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "TransactionsListByCustomer": { @@ -1337,20 +1337,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1389,7 +1389,7 @@ } }, "operationId": "Departments_ListByBillingAccountName", - "description": "Lists all departments for a user which he has access to.", + "description": "Lists the departments that a user has access to. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1399,14 +1399,14 @@ }, { "name": "$expand", - "description": "May be used to expand the enrollmentAccounts.", + "description": "May be used to expand the enrollment accounts.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by department name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1442,7 +1442,7 @@ } }, "operationId": "Departments_Get", - "description": "Get the department by id.", + "description": "Gets a department by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1455,14 +1455,14 @@ }, { "name": "$expand", - "description": "May be used to expand the enrollmentAccounts.", + "description": "May be used to expand the enrollment accounts.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by department name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1498,7 +1498,7 @@ } }, "operationId": "EnrollmentAccounts_ListByBillingAccountName", - "description": "Lists all Enrollment Accounts for a user which he has access to.", + "description": "Lists the enrollment accounts for a billing account. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1515,7 +1515,7 @@ }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by account name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1551,7 +1551,7 @@ } }, "operationId": "EnrollmentAccounts_GetByEnrollmentAccountId", - "description": "Get the enrollment account by id.", + "description": "Gets an enrollment account by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1564,14 +1564,14 @@ }, { "name": "$expand", - "description": "May be used to expand the Department.", + "description": "May be used to expand the department.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by account name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1604,7 +1604,7 @@ } }, "operationId": "Invoices_ListByBillingAccount", - "description": "List of invoices for a billing account.", + "description": "Lists the invoices for a billing account for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1614,14 +1614,14 @@ }, { "name": "periodStartDate", - "description": "Invoice period start date.", + "description": "The start date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" }, { "name": "periodEndDate", - "description": "Invoice period end date.", + "description": "The end date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" @@ -1658,7 +1658,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "location" }, - "description": "Download price sheet for an invoice.", + "description": "Gets a URL to download the pricesheet for an invoice. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1721,7 +1721,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "location" }, - "description": "Download price sheet for a billing profile.", + "description": "Gets a URL to download the current month's pricesheet for a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1777,7 +1777,7 @@ } }, "operationId": "Invoices_ListByBillingProfile", - "description": "List of invoices for a billing profile.", + "description": "Lists the invoices for a billing profile for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1790,14 +1790,14 @@ }, { "name": "periodStartDate", - "description": "Invoice period start date.", + "description": "The start date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" }, { "name": "periodEndDate", - "description": "Invoice period end date.", + "description": "The end date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" @@ -1830,7 +1830,7 @@ } }, "operationId": "Invoices_Get", - "description": "Get the invoice by name.", + "description": "Gets an invoice by ID. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1867,7 +1867,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByBillingAccount", - "description": "Lists billing subscriptions by billing account name.", + "description": "Lists the subscriptions for a billing account. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1909,7 +1909,7 @@ "Invoices" ], "operationId": "Invoices_ListByBillingSubscription", - "description": "Lists invoices by billing subscriptions name.", + "description": "Lists the invoices for a subscription.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1968,7 +1968,7 @@ "Invoices" ], "operationId": "Invoices_GetById", - "description": "Gets the invoice by name.", + "description": "Gets an invoice by ID.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2013,7 +2013,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByBillingProfile", - "description": "Lists billing subscriptions by billing profile name.", + "description": "Lists the subscriptions that are billed to a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2055,7 +2055,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByInvoiceSection", - "description": "Lists billing subscription by invoice section name.", + "description": "Lists the subscriptions that are billed to an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2100,7 +2100,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_Get", - "description": "Get a single billing subscription by name.", + "description": "Gets a subscription by its ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2144,7 +2144,7 @@ }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingSubscriptions/{billingSubscriptionName}/transfer": { "post": { - "description": "Transfers the subscription from one invoice section to another within a billing account.", + "description": "Moves a subscription's charges to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "BillingSubscriptions_Transfer", "x-ms-long-running-operation": true, "x-ms-examples": { @@ -2172,7 +2172,7 @@ "schema": { "$ref": "#/definitions/TransferBillingSubscriptionRequestProperties" }, - "description": "Request parameters supplied to the Transfer Billing Subscription operation." + "description": "Request parameters that are provided to the transfer product operation." } ], "responses": { @@ -2190,7 +2190,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -2215,7 +2215,7 @@ } }, "operationId": "BillingSubscriptions_ValidateTransfer", - "description": "Validates the transfer of billing subscriptions across invoice sections.", + "description": "Validates if a subscription's charges can be moved to a new invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/billingAccountNameParameter" @@ -2236,7 +2236,7 @@ "schema": { "$ref": "#/definitions/TransferBillingSubscriptionRequestProperties" }, - "description": "Parameters supplied to the Transfer Billing Subscription operation." + "description": "Request parameters that are provided to the validate transfer eligibility operation." } ], "responses": { @@ -2261,7 +2261,7 @@ "Products" ], "operationId": "Products_ListByBillingAccount", - "description": "Lists products by billing account name.", + "description": "Lists the products for a billing account. These don't include products billed based on usage. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2279,7 +2279,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2310,7 +2310,7 @@ "Products" ], "operationId": "Products_ListByInvoiceSection", - "description": "Lists products by invoice section name.", + "description": "Lists the products for an invoice section. These don't include products billed based on usage. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2334,7 +2334,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2362,7 +2362,7 @@ "Products" ], "operationId": "Products_Get", - "description": "Get a single product by name.", + "description": "Gets a product by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2410,7 +2410,7 @@ "Products" ], "operationId": "Products_Transfer", - "description": "The operation to transfer a Product to another invoice section.", + "description": "Moves a product's charges to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "TransferProduct": { "$ref": "./examples/TransferProduct.json" @@ -2439,7 +2439,7 @@ "schema": { "$ref": "#/definitions/TransferProductRequestProperties" }, - "description": "Parameters supplied to the Transfer Product operation." + "description": "Request parameters that are provided to the transfer product operation." } ], "responses": { @@ -2457,7 +2457,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -2482,7 +2482,7 @@ } }, "operationId": "Products_ValidateTransfer", - "description": "Validates the transfer of products across invoice sections.", + "description": "Validates if a product's charges can be moved to a new invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/billingAccountNameParameter" @@ -2503,7 +2503,7 @@ "schema": { "$ref": "#/definitions/TransferProductRequestProperties" }, - "description": "Parameters supplied to the Transfer Products operation." + "description": "Request parameters that are provided to the validate transfer eligibility operation." } ], "responses": { @@ -2550,20 +2550,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2619,20 +2619,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2688,20 +2688,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2729,7 +2729,7 @@ "Transactions" ], "operationId": "Transactions_ListByInvoice", - "description": "Lists the transactions by invoice. Transactions include purchases, refunds and Azure usage charges.", + "description": "Lists the transactions for an invoice. Transactions include purchases, refunds and Azure usage charges.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2777,7 +2777,7 @@ "Transactions" ], "operationId": "Transactions_Get", - "description": "Get the transaction.", + "description": "Gets a transaction by ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2799,14 +2799,14 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, @@ -2836,7 +2836,7 @@ "Policies" ], "operationId": "Policies_GetByBillingProfile", - "description": "The policy for a given billing account name and billing profile name.", + "description": "Lists the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2876,7 +2876,7 @@ "Policies" ], "operationId": "Policies_Update", - "description": "The operation to update a policy.", + "description": "Updates the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateBillingProfile": { "$ref": "./examples/UpdatePolicy.json" @@ -2899,7 +2899,7 @@ "schema": { "$ref": "#/definitions/Policy" }, - "description": "Parameters supplied to the update policy operation." + "description": "Request parameters that are provided to the update policies operation." } ], "responses": { @@ -2924,7 +2924,7 @@ "Policies" ], "operationId": "Policies_GetByCustomer", - "description": "The policy for a given billing account name and customer name.", + "description": "Lists the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2964,7 +2964,7 @@ "Policies" ], "operationId": "Policies_UpdateCustomer", - "description": "The operation to update a Customer policy.", + "description": "Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "x-ms-examples": { "UpdateCustomer": { "$ref": "./examples/UpdateCustomerPolicy.json" @@ -2987,7 +2987,7 @@ "schema": { "$ref": "#/definitions/CustomerPolicy" }, - "description": "Parameters supplied to the update customer policy operation." + "description": "Request parameters that are provided to the update policies operation." } ], "responses": { @@ -3012,7 +3012,7 @@ "BillingProperties" ], "operationId": "BillingProperty_Get", - "description": "Get billing property by subscription Id.", + "description": "Get the billing properties for a subscription. This operation is not supported for billing accounts with agreement type Enterprise Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -3098,7 +3098,7 @@ "tags": [ "InvoiceSections" ], - "description": "Elevates the caller's access to match their billing profile access.", + "description": "Gives the caller permissions on an invoice section based on their billing profile access. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "InvoiceSections_ElevateToBillingProfile", "x-ms-examples": { "Elevate": { @@ -3134,7 +3134,7 @@ "tags": [ "Transfers" ], - "description": "Initiates the request to transfer the legacy subscriptions or RIs.", + "description": "Sends a request to a user in another billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Initiate", "x-ms-examples": { "InitiateTransfer": { @@ -3158,7 +3158,7 @@ "schema": { "$ref": "#/definitions/InitiateTransferRequest" }, - "description": "Parameters supplied to initiate the transfer." + "description": "Request parameters that are provided to the initiate transfer operation." } ], "responses": { @@ -3182,7 +3182,7 @@ "tags": [ "Transfers" ], - "description": "Gets the transfer details for given transfer Id.", + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Get", "x-ms-examples": { "TransferGet": { @@ -3222,7 +3222,7 @@ "tags": [ "Transfers" ], - "description": "Cancels the transfer for given transfer Id.", + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Cancel", "x-ms-examples": { "TransferCancel": { @@ -3264,7 +3264,7 @@ "tags": [ "Transfers" ], - "description": "Lists all transfer's details initiated from given invoice section.", + "description": "Lists the transfer requests for an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_List", "x-ms-examples": { "TransfersList": { @@ -3306,7 +3306,7 @@ "tags": [ "Transfers" ], - "description": "Initiates the request to transfer the legacy subscriptions or RIs.", + "description": "Sends a request to a user in a customer's billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Initiate", "x-ms-examples": { "InitiatePartnerTransfer": { @@ -3330,7 +3330,7 @@ "schema": { "$ref": "#/definitions/InitiateTransferRequest" }, - "description": "Parameters supplied to initiate the transfer." + "description": "Request parameters that are provided to the initiate transfer operation." } ], "responses": { @@ -3354,7 +3354,7 @@ "tags": [ "Transfers" ], - "description": "Gets the transfer details for given transfer Id.", + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Get", "x-ms-examples": { "TransferGet": { @@ -3394,7 +3394,7 @@ "tags": [ "Transfers" ], - "description": "Cancels the transfer for given transfer Id.", + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Cancel", "x-ms-examples": { "TransferCancel": { @@ -3436,7 +3436,7 @@ "tags": [ "Transfers" ], - "description": "Lists all transfer's details initiated from given invoice section.", + "description": "Lists the transfer requests sent to a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_List", "x-ms-examples": { "TransfersList": { @@ -3478,7 +3478,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Accepts the transfer with given transfer Id.", + "summary": "Accepts a transfer request.", "operationId": "RecipientTransfers_Accept", "x-ms-examples": { "AcceptTransfer": { @@ -3496,7 +3496,7 @@ "schema": { "$ref": "#/definitions/AcceptTransferRequest" }, - "description": "Parameters supplied to accept the transfer." + "description": "Request parameters that are provided to the accept transfer operation." } ], "responses": { @@ -3520,7 +3520,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Validates if the products can be transferred in the context of the given transfer name.", + "summary": "Validates if a subscription or a reservation can be transferred. Use this operation to validate your subscriptions or reservation before using the accept transfer operation.", "operationId": "RecipientTransfers_Validate", "x-ms-examples": { "ValidateTransfer": { @@ -3538,7 +3538,7 @@ "schema": { "$ref": "#/definitions/AcceptTransferRequest" }, - "description": "Parameters supplied to validate the transfer." + "description": "Request parameters that are provided to the validate transfer operation." } ], "responses": { @@ -3562,7 +3562,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Declines the transfer with given transfer Id.", + "summary": "Declines a transfer request.", "operationId": "RecipientTransfers_Decline", "x-ms-examples": { "DeclineTransfer": { @@ -3595,7 +3595,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Gets the transfer with given transfer Id.", + "summary": "Gets a transfer request by ID. The caller must be the recipient of the transfer request.", "operationId": "RecipientTransfers_Get", "x-ms-examples": { "RecipientTransferGet": { @@ -3628,7 +3628,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Lists the transfers received by caller.", + "summary": "Lists the transfer requests received by the caller.", "operationId": "RecipientTransfers_List", "x-ms-examples": { "RecipientTransfersList": { @@ -3660,7 +3660,7 @@ "Operations" ], "operationId": "Operations_List", - "description": "Lists all of the available billing REST API operations.", + "description": "Lists the available billing REST API operations.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3696,7 +3696,7 @@ } }, "operationId": "BillingPermissions_ListByBillingAccount", - "description": "Lists all billing permissions for the caller under a billing account.", + "description": "Lists the billing permissions the caller has on a billing account.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3732,7 +3732,7 @@ } }, "operationId": "BillingPermissions_ListByInvoiceSections", - "description": "Lists all billing permissions for the caller under invoice section.", + "description": "Lists the billing permissions the caller has on an invoice section.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3774,7 +3774,7 @@ } }, "operationId": "BillingPermissions_ListByBillingProfile", - "description": "Lists all billing permissions the caller has for a billing account.", + "description": "Lists the billing permissions the caller has on a billing profile.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3813,7 +3813,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByBillingAccount", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3852,7 +3852,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByInvoiceSection", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3897,7 +3897,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByBillingProfile", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3939,7 +3939,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByBillingAccount", - "description": "Lists the role definition for a billing account", + "description": "Lists the role definitions for a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3975,7 +3975,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByInvoiceSection", - "description": "Lists the role definition for an invoice Section", + "description": "Lists the role definitions for an invoice section. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4017,7 +4017,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByBillingProfile", - "description": "Lists the role definition for a Billing Profile", + "description": "Lists the role definitions for a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4056,7 +4056,7 @@ } }, "operationId": "BillingRoleAssignments_GetByBillingAccount", - "description": "Get the role assignment for the caller", + "description": "Gets a role assignment for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4093,7 +4093,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByBillingAccount", - "description": "Delete the role assignment on this billing account", + "description": "Deletes a role assignment for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4132,7 +4132,7 @@ } }, "operationId": "BillingRoleAssignments_GetByInvoiceSection", - "description": "Get the role assignment for the caller on the invoice Section", + "description": "Gets a role assignment for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4175,7 +4175,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByInvoiceSection", - "description": "Delete the role assignment on the invoice Section", + "description": "Deletes a role assignment for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4220,7 +4220,7 @@ } }, "operationId": "BillingRoleAssignments_GetByBillingProfile", - "description": "Get the role assignment for the caller on the Billing Profile", + "description": "Gets a role assignment for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4260,7 +4260,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByBillingProfile", - "description": "Delete the role assignment on this Billing Profile", + "description": "Deletes a role assignment for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4302,7 +4302,7 @@ } }, "operationId": "BillingRoleAssignments_ListByBillingAccount", - "description": "Get the role assignments on the Billing Account", + "description": "Lists the role assignments for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4333,7 +4333,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByBillingAccount", - "description": "The operation to add a role assignment to a billing account.", + "description": "Adds a role assignment on a billing account. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToBillingAccount": { "$ref": "./examples/AddRoleAssignmentToBillingAccount.json" @@ -4353,7 +4353,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4383,7 +4383,7 @@ } }, "operationId": "BillingRoleAssignments_ListByInvoiceSection", - "description": "Get the role assignments on the invoice Section", + "description": "Lists the role assignments for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4420,7 +4420,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByInvoiceSection", - "description": "The operation to add a role assignment to a invoice Section.", + "description": "Adds a role assignment on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToInvoiceSection": { "$ref": "./examples/AddRoleAssignmentToInvoiceSection.json" @@ -4446,7 +4446,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4476,7 +4476,7 @@ } }, "operationId": "BillingRoleAssignments_ListByBillingProfile", - "description": "Get the role assignments on the Billing Profile", + "description": "Lists the role assignments for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4510,7 +4510,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByBillingProfile", - "description": "The operation to add a role assignment to a billing profile.", + "description": "Adds a role assignment on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToBillingProfile": { "$ref": "./examples/AddRoleAssignmentToBillingProfile.json" @@ -4533,7 +4533,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4563,7 +4563,7 @@ } }, "operationId": "Agreements_ListByBillingAccount", - "description": "Lists all agreements for a billing account.", + "description": "Lists the agreements for a billing account.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4606,7 +4606,7 @@ } }, "operationId": "Agreements_Get", - "description": "Get the agreement by name.", + "description": "Gets an agreement by ID.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4644,7 +4644,7 @@ }, "definitions": { "CustomerListResult": { - "description": "Result of listing customers.", + "description": "The list of customers.", "properties": { "value": { "description": "The list of customers.", @@ -4685,14 +4685,14 @@ "type": "string" }, "enabledAzurePlans": { - "description": "Information about the product.", + "description": "Azure plans enabled for the customer.", "type": "array", "items": { "$ref": "#/definitions/AzurePlan" } }, "resellers": { - "description": "The resellers which are allowed to provide service to this customer.", + "description": "The list of resellers for which an Azure plan is enabled for the customer.", "type": "array", "items": { "$ref": "#/definitions/Reseller" @@ -4720,7 +4720,7 @@ "$ref": "#/definitions/AddressValidationStatus" }, "suggestedAddresses": { - "description": "list of suggested addresses.", + "description": "The list of suggested addresses.", "type": "array", "items": { "$ref": "#/definitions/AddressDetails" @@ -4734,7 +4734,7 @@ }, "AddressValidationStatus": { "type": "string", - "description": "Status of the address validation response.", + "description": "Status of the address validation.", "enum": [ "Valid", "Invalid" @@ -4750,11 +4750,11 @@ "properties": { "recipientEmailId": { "type": "string", - "description": "Email Id of recipient for transfer." + "description": "The email ID of the recipient to whom the transfer request is sent." }, "resellerId": { "type": "string", - "description": "Optional reseller Id for transfer." + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account." } } }, @@ -4784,21 +4784,21 @@ }, "ProductDetails": { "type": "object", - "description": "Details of the product to be transferred.", + "description": "Details of the product that is transferred.", "properties": { "productType": { - "description": "Type of the product to be transferred.", + "description": "Type of the product that is transferred.", "$ref": "#/definitions/ProductType" }, "productId": { "type": "string", - "description": "Id of product to be transferred." + "description": "The ID of the product that is transferred." } } }, "ProductType": { "type": "string", - "description": "Type of the product to be transferred.", + "description": "The type of product that is transferred.", "enum": [ "AzureSubscription", "AzureReservation" @@ -4838,12 +4838,12 @@ "type": "string", "$ref": "#/definitions/ProductType", "readOnly": true, - "description": "Type of product being transferred." + "description": "Type of product that is transferred." }, "productId": { "type": "string", "readOnly": true, - "description": "Id of product being transferred." + "description": "The ID of the product that is transferred." }, "transferStatus": { "type": "string", @@ -4892,43 +4892,43 @@ "creationTime": { "type": "string", "format": "date-time", - "description": "Transfer creation time.", + "description": "The time at which the transfer request was created.", "readOnly": true }, "expirationTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer expiration time." + "description": "The time at which the transfer request expires." }, "invoiceSectionId": { "type": "string", - "description": "Target invoice section Id.", + "description": "The ID of the invoice section to which the product is billed after the transfer request is completed.", "readOnly": true }, "billingAccountId": { "type": "string", - "description": "Target billing account Id.", + "description": "The ID of the billing account to which the product is billed after the transfer request is completed.", "readOnly": true }, "resellerId": { "type": "string", - "description": "Reseller Id for transfer.", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", "readOnly": true }, "resellerName": { "type": "string", - "description": "Reseller name for transfer.", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", "readOnly": true }, "initiatorCustomerType": { "type": "string", - "description": "Customer type of the initiator.", + "description": "The type of customer who sent the transfer request.", "readOnly": true }, "billingProfileId": { "type": "string", - "description": "Target billing profile Id.", + "description": "The ID of the billing profile to which the product will be billed after the transfer.", "readOnly": true }, "transferStatus": { @@ -4940,23 +4940,23 @@ "recipientEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of recipient of transfer." + "description": "The email ID of the user to whom the transfer request was sent." }, "initiatorEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of initiator of transfer." + "description": "The email ID of the user who sent the transfer request." }, "canceledBy": { "type": "string", "readOnly": true, - "description": "Email Id who user canceled the transfer." + "description": "The email ID of the user who canceled the transfer request." }, "lastModifiedTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer last modification time." + "description": "The time at which the transfer request was last modified." }, "detailedTransferStatus": { "type": "array", @@ -4975,14 +4975,14 @@ "creationTime": { "type": "string", "format": "date-time", - "description": "Transfer creation time.", + "description": "The time at which the transfer request was created.", "readOnly": true }, "expirationTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer expiration time." + "description": "The time at which the transfer request expires." }, "allowedProductType": { "type": "array", @@ -5001,38 +5001,38 @@ "recipientEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of recipient of transfer." + "description": "The email ID of the user to whom the transfer request was sent." }, "initiatorEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of initiator of transfer." + "description": "The email ID of the user who sent the transfer request." }, "resellerId": { "type": "string", - "description": "Reseller Id for transfer.", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", "readOnly": true }, "resellerName": { "type": "string", - "description": "Reseller name for transfer.", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", "readOnly": true }, "initiatorCustomerType": { "type": "string", - "description": "Customer type of the initiator.", + "description": "The type of customer who sent the transfer request.", "readOnly": true }, "canceledBy": { "type": "string", "readOnly": true, - "description": "Email Id who user canceled the transfer." + "description": "The email ID of the user who canceled the transfer request." }, "lastModifiedTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer last modification time." + "description": "The time at which the transfer request was last modified." }, "detailedTransferStatus": { "type": "array", @@ -5046,7 +5046,7 @@ }, "TransferStatus": { "type": "string", - "description": "Possible transfer status.", + "description": "The status of a transfer.", "enum": [ "Pending", "InProgress", @@ -5063,7 +5063,7 @@ }, "ProductTransferStatus": { "type": "string", - "description": "Possible transfer status.", + "description": "The status of a transfer.", "enum": [ "NotStarted", "InProgress", @@ -5076,7 +5076,7 @@ } }, "RecipientTransferDetailsListResult": { - "description": "Result of listing details of the transfer received by caller.", + "description": "The list of transfers received by caller.", "properties": { "value": { "description": "The list of transfers received by caller.", @@ -5094,7 +5094,7 @@ } }, "TransferDetailsListResult": { - "description": "Result of listing details of the transfer initiated by caller.", + "description": "The list of transfers initiated by caller.", "properties": { "value": { "description": "The list of transfers initiated by caller.", @@ -5126,10 +5126,10 @@ }, "TransferBillingSubscriptionResult": { "type": "object", - "description": "Request parameters to transfer billing subscription.", + "description": "Result of the transfer billing subscription operation.", "properties": { "properties": { - "description": "Request parameters to transfer billing subscription.", + "description": "Properties of the transfer billing subscription operation result.", "x-ms-client-flatten": true, "$ref": "#/definitions/TransferBillingSubscriptionResultProperties" } @@ -5137,7 +5137,7 @@ }, "TransferBillingSubscriptionResultProperties": { "type": "object", - "description": "Transfer billing subscription result properties.", + "description": "Properties of the transfer billing subscription operation result.", "properties": { "billingSubscriptionName": { "type": "string", @@ -5175,7 +5175,7 @@ "description": "Result of the transfer eligibility validation.", "properties": { "isTransferEligible": { - "description": "Specifies whether the transfer is eligible or not.", + "description": "Specifies whether the subscription is eligible to be transferred.", "type": "boolean", "readOnly": true }, @@ -5223,7 +5223,7 @@ }, "UpdateAutoRenewOperation": { "type": "object", - "description": "Summary of cancel product operation", + "description": "Result of the update auto renew operation", "properties": { "properties": { "description": "Summary of update auto renew operation properties", @@ -5234,17 +5234,17 @@ }, "UpdateAutoRenewOperationProperties": { "type": "object", - "description": "update auto renew operation properties", + "description": "Summary of update auto renew operation properties", "properties": { "endDate": { "type": "string", "format": "date-time", - "description": "The end date of this asset" + "description": "The date at which the product will be canceled." } } }, "BillingAccountListResult": { - "description": "Result of listing billing accounts.", + "description": "The list of billing accounts.", "properties": { "value": { "description": "The list of billing accounts.", @@ -5262,7 +5262,7 @@ } }, "BillingAccount": { - "description": "A billing account resource.", + "description": "A billing account.", "type": "object", "allOf": [ { @@ -5271,7 +5271,7 @@ ], "properties": { "properties": { - "description": "A billing account.", + "description": "The properties of the billing account.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingAccountProperties" } @@ -5286,7 +5286,7 @@ "readOnly": true }, "address": { - "description": "The address associated with billing account.", + "description": "The address associated with the billing account.", "$ref": "#/definitions/AddressDetails" }, "agreementType": { @@ -5333,7 +5333,7 @@ } }, "billingProfiles": { - "description": "The billing profiles associated to the billing account. By default this is not populated, unless it's specified in $expand.", + "description": "The billing profiles associated with the billing account. By default this is not populated, unless it's specified in $expand.", "type": "array", "items": { "$ref": "#/definitions/BillingProfile" @@ -5376,7 +5376,7 @@ } }, "BillingProperty": { - "description": "A billing property resource.", + "description": "A billing property.", "type": "object", "allOf": [ { @@ -5395,27 +5395,27 @@ "description": "The billing property.", "properties": { "billingTenantId": { - "description": "Billing tenant Id.", + "description": "The Azure AD tenant ID of the billing account for the subscription.", "type": "string", "readOnly": true }, "billingAccountId": { - "description": "Billing account Id.", + "description": "The ID of the billing account to which the subscription is billed.", "type": "string", "readOnly": true }, "billingAccountDisplayName": { - "description": "Billing account display name.", + "description": "The name of the billing account to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing profile Id.", + "description": "The ID of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing profile display name.", + "description": "The name of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, @@ -5426,6 +5426,7 @@ "Disabled", "Warned" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "BillingProfileStatus", @@ -5458,119 +5459,119 @@ } }, "costCenter": { - "description": "Cost center name.", + "description": "The cost center applied to the subscription.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice Section Id.", + "description": "The ID of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice Section display name.", + "description": "The name of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "productId": { - "description": "Product Id.", + "description": "The product ID of the Azure plan.", "type": "string", "readOnly": true }, "productName": { - "description": "Product name.", + "description": "The product name of the Azure plan.", "type": "string", "readOnly": true }, "skuId": { - "description": "SKU Id.", + "description": "The sku ID of the Azure plan for the subscription.", "type": "string", "readOnly": true }, "skuDescription": { - "description": "SKU description.", + "description": "The sku description of the Azure plan for the subscription.", "type": "string", "readOnly": true } } }, "Enrollment": { - "description": "Current entity level details", + "description": "The properties of an enrollment.", "properties": { "startDate": { - "description": "Enrollment Start Date", + "description": "The start date of the enrollment.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Enrollment End Date", + "description": "The end date of the enrollment.", "type": "string", "format": "date-time" }, "currency": { - "description": "The currency associated with enrollment", + "description": "The billing currency for the enrollment.", "type": "string", "readOnly": true }, "channel": { - "description": "The channel for Enrollment", + "description": "The channel type of the enrollment.", "type": "string", "readOnly": true }, "policies": { - "description": "The attributes associated with legacy enrollment.", + "description": "The policies for Enterprise Agreement enrollments.", "$ref": "#/definitions/EnrollmentPolicies", "readOnly": true }, "language": { - "description": "The language for Enrollment", + "description": "The language for the enrollment.", "type": "string", "readOnly": true }, "countryCode": { - "description": "The countryCode for Enrollment", + "description": "The country code of the enrollment.", "type": "string", "readOnly": true }, "status": { - "description": "Enrollment status", + "description": "The current status of the enrollment.", "type": "string", "readOnly": true }, "billingCycle": { - "description": "Enrollment billing cycle", + "description": "The billing cycle for the enrollment.", "type": "string", "readOnly": true } } }, "EnrollmentPolicies": { - "description": "The attributes associated with legacy enrollment", + "description": "The policies for Enterprise Agreement enrollments.", "properties": { "accountOwnerViewCharges": { - "description": "The accountOwnerViewCharges flag for Enrollment", + "description": "The policy that controls whether Account Owners can view charges.", "type": "boolean", "readOnly": true }, "departmentAdminViewCharges": { - "description": "The departmentAdminViewCharges flag for Enrollment", + "description": "The policy that controls whether Department Administrators can view charges.", "type": "boolean", "readOnly": true }, "marketplacesEnabled": { - "description": "The marketplaces flag for Enrollment", + "description": "The policy that controls whether Azure marketplace purchases are allowed in the enrollment.", "type": "boolean", "readOnly": true }, "reservedInstancesEnabled": { - "description": "The reserved instances flag for Enrollment", + "description": "The policy that controls whether Azure reservation purchases are allowed in the enrollment.", "type": "boolean", "readOnly": true } } }, "DepartmentListResult": { - "description": "Result of listing departments.", + "description": "The list of departments.", "properties": { "value": { "description": "The list of departments.", @@ -5588,7 +5589,7 @@ } }, "Department": { - "description": "A department resource.", + "description": "A department.", "type": "object", "allOf": [ { @@ -5604,18 +5605,18 @@ } }, "DepartmentProperties": { - "description": "The properties of the department.", + "description": "The properties of a department.", "properties": { "departmentName": { - "description": "The name for department.", + "description": "The name of the department.", "type": "string" }, "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the department.", "type": "string" }, "status": { - "description": "The status for department.", + "description": "The status of the department.", "type": "string" }, "enrollmentAccounts": { @@ -5628,7 +5629,7 @@ } }, "EnrollmentAccountListResult": { - "description": "Result of listing enrollment accounts.", + "description": "The list of enrollment accounts.", "properties": { "value": { "description": "The list of enrollment accounts.", @@ -5646,7 +5647,7 @@ } }, "EnrollmentAccount": { - "description": "An account resource.", + "description": "An enrollment account.", "type": "object", "allOf": [ { @@ -5655,38 +5656,38 @@ ], "properties": { "properties": { - "description": "An account.", + "description": "The properties of an enrollment account.", "x-ms-client-flatten": true, "$ref": "#/definitions/EnrollmentAccountProperties" } } }, "EnrollmentAccountProperties": { - "description": "The properties of the account.", + "description": "The properties of an enrollment account.", "properties": { "accountName": { - "description": "The account name.", + "description": "The name of the enrollment account.", "type": "string" }, "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the enrollment account.", "type": "string" }, "accountOwner": { - "description": "The account owner", + "description": "The owner of the enrollment account.", "type": "string" }, "status": { - "description": "The status for account.", + "description": "The status of the enrollment account.", "type": "string" }, "startDate": { - "description": "Account Start Date", + "description": "The start date of the enrollment account.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Account End Date", + "description": "The end date of the enrollment account.", "type": "string", "format": "date-time" }, @@ -5697,10 +5698,10 @@ } }, "InstructionListResult": { - "description": "Result of listing instructions.", + "description": "The list of billing instructions used during invoice generation.", "properties": { "value": { - "description": "The list of instructions.", + "description": "The list of billing instructions used during invoice generation.", "type": "array", "readOnly": true, "items": { @@ -5715,7 +5716,7 @@ } }, "BillingProfileListResult": { - "description": "Result of listing billing profiles.", + "description": "The list of billing profiles.", "properties": { "value": { "description": "The list of billing profiles.", @@ -5733,7 +5734,7 @@ } }, "BillingProfile": { - "description": "A billing profile resource.", + "description": "A billing profile.", "type": "object", "allOf": [ { @@ -5742,14 +5743,14 @@ ], "properties": { "properties": { - "description": "A billing profile.", + "description": "The properties of the billing profile.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingProfileProperties" } } }, "Instruction": { - "description": "A instruction resource.", + "description": "An instruction.", "type": "object", "allOf": [ { @@ -5758,7 +5759,7 @@ ], "properties": { "properties": { - "description": "A billing instruction.", + "description": "A billing instruction used during invoice generation.", "x-ms-client-flatten": true, "$ref": "#/definitions/InstructionProperties" } @@ -5797,11 +5798,11 @@ "description": "The request parameters for creating a new billing profile.", "properties": { "displayName": { - "description": "The billing profile name.", + "description": "The name of the billing profile.", "type": "string" }, "poNumber": { - "description": "Purchase order number.", + "description": "The purchase order name that will appear on the invoices generated for the billing profile.", "type": "string" }, "address": { @@ -5809,11 +5810,11 @@ "$ref": "#/definitions/AddressDetails" }, "invoiceEmailOptIn": { - "description": "If the billing profile is opted in to receive invoices via email.", + "description": "Flag controlling whether the invoices for the billing profile are sent through email.", "type": "boolean" }, "enabledAzurePlans": { - "description": "Enabled azure plans for this billing profile.", + "description": "Enabled azure plans for the billing profile.", "type": "array", "items": { "$ref": "#/definitions/AzurePlan" @@ -5825,11 +5826,11 @@ "description": "The properties of the billing profile.", "properties": { "displayName": { - "description": "The billing profile name.", + "description": "The name of the billing profile.", "type": "string" }, "poNumber": { - "description": "Purchase order number.", + "description": "The purchase order name that will appear on the invoices generated for the billing profile.", "type": "string" }, "address": { @@ -5837,16 +5838,16 @@ "$ref": "#/definitions/AddressDetails" }, "invoiceEmailOptIn": { - "description": "If the billing profile is opted in to receive invoices via email.", + "description": "Flag controlling whether the invoices for the billing profile are sent through email.", "type": "boolean" }, "invoiceDay": { - "description": "Invoice day.", + "description": "The day of the month when the invoice for the billing profile is generated.", "type": "integer", "readOnly": true }, "currency": { - "description": "The currency associated with the billing profile.", + "description": "The currency in which the charges for the billing profile are billed.", "type": "string", "readOnly": true }, @@ -5884,6 +5885,7 @@ "SpendingLimitReached", "SpendingLimitExpired" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "StatusReasonCode", @@ -5896,6 +5898,7 @@ "Off", "On" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "SpendingLimit", @@ -5908,35 +5911,35 @@ "description": "Address details.", "properties": { "firstName": { - "description": "First Name.", + "description": "First name.", "type": "string" }, "lastName": { - "description": "Last Name.", + "description": "Last name.", "type": "string" }, "companyName": { - "description": "Company Name.", + "description": "Company name.", "type": "string" }, "addressLine1": { - "description": "Address Line1.", + "description": "Address line 1.", "type": "string" }, "addressLine2": { - "description": "Address Line2.", + "description": "Address line 2.", "type": "string" }, "addressLine3": { - "description": "Address Line3.", + "description": "Address line 3.", "type": "string" }, "city": { - "description": "Address City.", + "description": "Address city.", "type": "string" }, "region": { - "description": "Address Region.", + "description": "Address region.", "type": "string" }, "country": { @@ -5944,22 +5947,22 @@ "type": "string" }, "postalCode": { - "description": "Address Postal Code.", + "description": "Postal code.", "type": "string" } } }, "InvoiceSectionCreationRequest": { - "description": "The properties of an InvoiceSection.", + "description": "The properties of the invoice section.", "properties": { "displayName": { - "description": "The name of the InvoiceSection.", + "description": "The name of the invoice section.", "type": "string" } } }, "InvoiceSectionListResult": { - "description": "Result of listing invoice sections.", + "description": "The list of invoice sections.", "properties": { "value": { "description": "The list of invoice sections.", @@ -5977,7 +5980,7 @@ } }, "InvoiceSection": { - "description": "An InvoiceSection resource.", + "description": "An invoice section.", "type": "object", "allOf": [ { @@ -5986,24 +5989,24 @@ ], "properties": { "properties": { - "description": "The InvoiceSection.", + "description": "The properties of an invoice section.", "x-ms-client-flatten": true, "$ref": "#/definitions/InvoiceSectionProperties" } } }, "InvoiceSectionProperties": { - "description": "The properties of an InvoiceSection.", + "description": "The properties of an invoice section.", "properties": { "displayName": { - "description": "The name of the InvoiceSection.", + "description": "The name of the invoice section.", "type": "string" } } }, "InvoiceSectionListWithCreateSubPermissionResult": { "type": "object", - "description": "Result of listing invoice section properties with create subscription permission.", + "description": "The list of invoice section properties with create subscription permission.", "properties": { "value": { "description": "The list of invoice section properties with create subscription permission.", @@ -6023,22 +6026,22 @@ "description": "Invoice section properties with create subscription permission.", "properties": { "invoiceSectionId": { - "description": "Invoice Section Id.", + "description": "The ID of the invoice section.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice Section display name.", + "description": "The name of the invoice section.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing profile Id.", + "description": "The ID of the billing profile for the invoice section.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing profile display name.", + "description": "The name of the billing profile for the invoice section.", "type": "string", "readOnly": true }, @@ -6062,6 +6065,7 @@ "SpendingLimitReached", "SpendingLimitExpired" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "BillingProfileStatusReasonCode", @@ -6075,6 +6079,7 @@ "On" ], "readOnly": true, + "type": "string", "x-ms-enum": { "name": "BillingProfileSpendingLimit", "modelAsString": true @@ -6090,7 +6095,7 @@ } }, "AzurePlan": { - "description": "Details about the azure plan.", + "description": "Details of the Azure plan.", "properties": { "skuId": { "description": "The sku id.", @@ -6107,7 +6112,7 @@ "description": "A secure URL that can be used to download a an entity until the URL expires.", "properties": { "expiryTime": { - "description": "The time in UTC at which this download URL will expire.", + "description": "The time in UTC when the download URL will expire.", "type": "string", "format": "date-time", "readOnly": true @@ -6150,15 +6155,15 @@ } }, "Reseller": { - "description": "Details about a reseller.", + "description": "Details of the reseller.", "properties": { "resellerId": { - "description": "The reseller id.", + "description": "The MPN ID of the reseller.", "type": "string", "readOnly": true }, "description": { - "description": "A description of the reseller.", + "description": "The name of the reseller.", "type": "string", "readOnly": true } @@ -6186,7 +6191,7 @@ "x-ms-azure-resource": true }, "InvoiceListResult": { - "description": "Result of listing invoices.", + "description": "The list of invoices.", "properties": { "value": { "description": "The list of invoices.", @@ -6204,7 +6209,7 @@ } }, "Invoice": { - "description": "An invoice resource.", + "description": "An invoice.", "type": "object", "allOf": [ { @@ -6223,19 +6228,19 @@ "description": "The properties of the invoice.", "properties": { "dueDate": { - "description": "The due date for invoice.", + "description": "The due date for the invoice.", "type": "string", "format": "date-time", "readOnly": true }, "invoiceDate": { - "description": "The date when invoice was created.", + "description": "The date when the invoice was generated.", "type": "string", "format": "date-time", "readOnly": true }, "status": { - "description": "Invoice status.", + "description": "The current status of the invoice.", "type": "string", "enum": [ "Due", @@ -6289,13 +6294,13 @@ "$ref": "#/definitions/Amount" }, "invoicePeriodStartDate": { - "description": "The start date of the billing period.", + "description": "The start date of the billing period for which the invoice is generated.", "type": "string", "format": "date-time", "readOnly": true }, "invoicePeriodEndDate": { - "description": "The end date of the billing period.", + "description": "The end date of the billing period for which the invoice is generated.", "type": "string", "format": "date-time", "readOnly": true @@ -6307,6 +6312,7 @@ "AzureMarketplace", "AzureSupport" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "InvoiceType", @@ -6319,22 +6325,22 @@ "readOnly": true }, "billingProfileId": { - "description": "The billing profile id this invoice belongs to.", + "description": "The ID of the billing profile for which the invoice is generated.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "The billing profile display name this invoice belongs to.", + "description": "The name of the billing profile for which the invoice is generated.", "type": "string", "readOnly": true }, "purchaseOrderNumber": { - "description": "An optional purchase order number used for the invoice.", + "description": "An optional purchase order number for the invoice.", "type": "string", "readOnly": true }, "documents": { - "description": "List of documents available to download including invoice and tax documents.", + "description": "List of documents available to download such as invoice and tax receipt.", "type": "array", "readOnly": true, "items": { @@ -6350,14 +6356,14 @@ } }, "subscriptionId": { - "description": "The subscription id this invoice belongs to.", + "description": "The ID of the subscription for which the invoice is generated.", "type": "string", "readOnly": true } } }, "PaymentProperties": { - "description": "The properties of the payment.", + "description": "The properties of a payment.", "properties": { "paymentType": { "description": "The type of payment.", @@ -6370,13 +6376,13 @@ "$ref": "#/definitions/Amount" }, "date": { - "description": "The date of the payment.", + "description": "The date when the payment was made.", "type": "string", "format": "date-time", "readOnly": true }, "paymentMethodFamily": { - "description": "The payment method family.", + "description": "The family of payment method.", "type": "string", "enum": [ "Credits", @@ -6397,10 +6403,10 @@ } }, "Document": { - "description": "The properties of the invoice download.", + "description": "The properties of a document.", "properties": { "kind": { - "description": "Document type.", + "description": "The type of the document.", "type": "string", "enum": [ "Invoice", @@ -6422,7 +6428,7 @@ } }, "ProductsListResult": { - "description": "Result of listing products. It contains a list of available products summaries in reverse chronological order by purchase date.", + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", "properties": { "value": { "description": "The list of products.", @@ -6440,7 +6446,7 @@ } }, "Product": { - "description": "A product resource.", + "description": "A product.", "type": "object", "allOf": [ { @@ -6456,7 +6462,7 @@ } }, "ProductProperties": { - "description": "The properties of the product.", + "description": "The properties of a product.", "properties": { "displayName": { "description": "The display name of the product.", @@ -6464,23 +6470,23 @@ "readOnly": true }, "purchaseDate": { - "description": "The date of purchase.", + "description": "The date when the product was purchased.", "type": "string", "format": "date-time", "readOnly": true }, "productTypeId": { - "description": "The product type id.", + "description": "The ID of the type of product.", "type": "string", "readOnly": true }, "productType": { - "description": "The type of product.", + "description": "The description of the type of product.", "type": "string", "readOnly": true }, "status": { - "description": "Product status.", + "description": "The current status of the product.", "type": "string", "enum": [ "Active", @@ -6498,13 +6504,13 @@ } }, "endDate": { - "description": "end date.", + "description": "The date when the product will be renewed or canceled.", "type": "string", "format": "date-time", "readOnly": true }, "billingFrequency": { - "description": "Billing frequency.", + "description": "The frequency at which the product will be billed.", "type": "string", "enum": [ "OneTime", @@ -6517,7 +6523,7 @@ } }, "lastCharge": { - "description": "Last month charges.", + "description": "The last month charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, @@ -6528,17 +6534,17 @@ "readOnly": true }, "quantity": { - "description": "The purchased product quantity.", + "description": "The quantity purchased for the product.", "type": "number", "readOnly": true }, "skuId": { - "description": "Sku Id.", + "description": "The sku ID of the product.", "type": "string", "readOnly": true }, "skuDescription": { - "description": "Sku description.", + "description": "The sku description of the product.", "type": "string", "readOnly": true }, @@ -6548,42 +6554,42 @@ "readOnly": true }, "availabilityId": { - "description": "Availability Id.", + "description": "The availability of the product.", "type": "string", "readOnly": true }, "parentProductId": { - "description": "Parent Product Id.", + "description": "Parent product Id.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section to which the product is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section to which the product is billed.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile to which the product is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile to which the product is billed.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, @@ -6647,7 +6653,7 @@ } }, "BillingSubscriptionsListResult": { - "description": "Result of listing billing subscriptions.", + "description": "The list of billing subscriptions.", "properties": { "value": { "description": "The list of billing subscriptions.", @@ -6665,7 +6671,7 @@ } }, "BillingSubscription": { - "description": "A billing Subscription resource.", + "description": "A billing subscription.", "type": "object", "allOf": [ { @@ -6681,21 +6687,21 @@ } }, "BillingSubscriptionProperties": { - "description": "The usage context properties.", + "description": "The billing properties of a subscription.", "properties": { "displayName": { - "description": "display name.", + "description": "The name of the subscription.", "type": "string", "readOnly": true }, "subscriptionId": { - "description": "Subscription Id.", + "description": "The ID of the subscription.", "type": "string", "format": "uuid", "readOnly": true }, "subscriptionBillingStatus": { - "description": "Subscription billing status.", + "description": "The current billing status of the subscription.", "type": "string", "enum": [ "Active", @@ -6710,42 +6716,42 @@ } }, "lastMonthCharges": { - "description": "Last month charges.", + "description": "The last month charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, "monthToDateCharges": { - "description": "Month to date charges.", + "description": "The current month to date charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for whom the subscription was created. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for whom the subscription was created. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, @@ -6755,44 +6761,44 @@ "$ref": "#/definitions/Reseller" }, "skuId": { - "description": "The sku id.", + "description": "The sku ID of the Azure plan for the subscription.", "type": "string" }, "skuDescription": { - "description": "The sku description.", + "description": "The sku description of the Azure plan for the subscription.", "type": "string", "readOnly": true } } }, "EnrollmentAccountContext": { - "description": "The rating context.", + "description": "The enrollment account context", "properties": { "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the enrollment account.", "type": "string" }, "startDate": { - "description": "Account Start Date", + "description": "The start date of the enrollment account.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Account End Date", + "description": "The end date of the enrollment account.", "type": "string", "format": "date-time" }, "enrollmentAccountName": { - "description": "The enrollment account id.", + "description": "The ID of the enrollment account.", "type": "string" } } }, "TransactionListResult": { - "description": "Result of listing reservation transactions.", + "description": "The list of transactions.", "properties": { "value": { - "description": "The list of reservation transactions.", + "description": "The list of transactions.", "type": "array", "readOnly": true, "items": { @@ -6807,7 +6813,7 @@ } }, "Transaction": { - "description": "A reservation transaction resource.", + "description": "A transaction.", "type": "object", "allOf": [ { @@ -6818,16 +6824,16 @@ "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/TransactionProperties", - "title": "Reservation transaction properties" + "title": "Transaction properties" } } }, "TransactionProperties": { - "description": "The properties of the reservation transaction.", + "description": "The properties of a transaction.", "properties": { "kind": { "type": "string", - "description": "The kind of transaction. Choices are all and reservation.", + "description": "The kind of transaction. Options are all or reservation.", "enum": [ "all", "reservation" @@ -6838,48 +6844,48 @@ } }, "date": { - "description": "The date of reservation transaction.", + "description": "The date of transaction.", "type": "string", "format": "date-time", "readOnly": true }, "invoice": { - "description": "Invoice number or 'pending' if not invoiced.", + "description": "Invoice on which the transaction was billed or 'pending' if the transaction is not billed.", "type": "string", "readOnly": true }, "orderId": { - "description": "The reservation order id.", + "description": "The order ID of the reservation. The field is only applicable for transaction of kind reservation.", "type": "string", "readOnly": true }, "orderName": { - "description": "The reservation order name.", + "description": "The name of the reservation order. The field is only applicable for transactions of kind reservation.", "type": "string", "readOnly": true }, "productFamily": { - "description": "The product family.", + "description": "The family of the product for which the transaction took place.", "type": "string", "readOnly": true }, "productTypeId": { - "description": "The product type id.", + "description": "The ID of the product type for which the transaction took place.", "type": "string", "readOnly": true }, "productType": { - "description": "The type of product.", + "description": "The type of the product for which the transaction took place.", "type": "string", "readOnly": true }, "productDescription": { - "description": "Product description.", + "description": "The description of the product for which the transaction took place.", "type": "string", "readOnly": true }, "transactionType": { - "description": "Transaction types.", + "description": "The type of transaction.", "type": "string", "enum": [ "Purchase", @@ -6891,52 +6897,52 @@ } }, "transactionAmount": { - "description": "Last charge associated with the purchase.", + "description": "The charge associated with the transaction.", "readOnly": true, "$ref": "#/definitions/Amount" }, "quantity": { - "description": "Purchase quantity.", + "description": "The quantity purchased in the transaction.", "type": "integer", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section which will be billed for the transaction.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section which will be billed for the transaction.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile which will be billed for the transaction.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile which will be billed for the transaction.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for which the transaction took place. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for which the transaction took place. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "subscriptionId": { - "description": "The subscription id.", + "description": "The ID of the subscription that was used for the transaction. The field is only applicable for transaction of kind reservation.", "type": "string", "readOnly": true }, "subscriptionName": { - "description": "The subscription name.", + "description": "The name of the subscription that was used for the transaction. The field is only applicable for transaction of kind reservation.", "type": "string", "readOnly": true }, @@ -7015,7 +7021,7 @@ } }, "Policy": { - "description": "The Policy.", + "description": "A policy.", "type": "object", "allOf": [ { @@ -7031,10 +7037,10 @@ } }, "PolicyProperties": { - "description": "The properties of policy.", + "description": "The properties of a policy.", "properties": { "marketplacePurchases": { - "description": "The marketplace purchases are free, allowed or not allowed.", + "description": "The policy that controls whether Azure marketplace purchases are allowed for a billing profile.", "type": "string", "enum": [ "AllAllowed", @@ -7047,7 +7053,7 @@ } }, "reservationPurchases": { - "description": "The reservation purchases allowed or not.", + "description": "The policy that controls whether Azure reservation purchases are allowed for a billing profile.", "type": "string", "enum": [ "Allowed", @@ -7059,7 +7065,7 @@ } }, "viewCharges": { - "description": "Who can view charges.", + "description": "The policy that controls whether users with Azure RBAC access to a subscription can view its charges.", "type": "string", "enum": [ "Allowed", @@ -7073,7 +7079,7 @@ } }, "CustomerPolicy": { - "description": "The Customer's Policy.", + "description": "The customer's Policy.", "type": "object", "allOf": [ { @@ -7089,10 +7095,10 @@ } }, "CustomerPolicyProperties": { - "description": "The properties of a Customer's policy.", + "description": "The properties of a customer's policy.", "properties": { "viewCharges": { - "description": "Customer can view retail prices.", + "description": "The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.", "type": "string", "enum": [ "Allowed", @@ -7106,7 +7112,7 @@ } }, "AvailableBalance": { - "description": "Latest available balance on Monetary Credit PI.", + "description": "The latest Azure credit balance. This is the balance available for pay now.", "type": "object", "allOf": [ { @@ -7125,14 +7131,14 @@ "description": "The properties of available balance.", "properties": { "amount": { - "description": "Balance Amount.", + "description": "Balance amount.", "readOnly": true, "$ref": "#/definitions/Amount" } } }, "Amount": { - "description": "The Amount.", + "description": "The amount.", "properties": { "currency": { "description": "The currency for the amount value.", @@ -7146,7 +7152,7 @@ } }, "PaymentMethodsListResult": { - "description": "Result of listing payment methods.", + "description": "The list of payment methods.", "properties": { "value": { "description": "The list of payment methods.", @@ -7164,7 +7170,7 @@ } }, "PaymentMethod": { - "description": "A payment method resource.", + "description": "A payment method.", "type": "object", "allOf": [ { @@ -7180,10 +7186,10 @@ } }, "PaymentMethodProperties": { - "description": "The properties of the payment method.", + "description": "The properties of a payment method.", "properties": { "paymentMethodType": { - "description": "Payment method type.", + "description": "The type of payment method.", "type": "string", "enum": [ "Credits", @@ -7213,10 +7219,10 @@ }, "UpdateAutoRenewRequest": { "type": "object", - "description": "Request parameters to update auto renew for support product.", + "description": "Request parameters to update auto renew settings for a product.", "properties": { "autoRenew": { - "description": "Request parameters to update auto renew policy a product.", + "description": "The flag that determines the auto-renew settings for a product.", "type": "string", "enum": [ "true", @@ -7247,12 +7253,12 @@ "readOnly": true }, "resource": { - "description": "Resource on which the operation is performed: Invoice, etc.", + "description": "Resource on which the operation is performed such as invoice and billing subscription.", "type": "string", "readOnly": true }, "operation": { - "description": "Operation type: Read, write, delete, etc.", + "description": "Operation type such as read, write and delete.", "type": "string", "readOnly": true } @@ -7261,10 +7267,10 @@ } }, "OperationListResult": { - "description": "Result listing billing operations. It contains a list of operations and a URL link to get the next set of results.", + "description": "The list of billing operations and a URL link to get the next set of results.", "properties": { "value": { - "description": "List of billing operations supported by the Microsoft.Billing resource provider.", + "description": "The list of billing operations supported by the Microsoft.Billing resource provider.", "type": "array", "readOnly": true, "items": { @@ -7292,10 +7298,10 @@ } }, "BillingRoleAssignmentListResult": { - "description": "Result of get list of role assignments", + "description": "The list of role assignments.", "properties": { "value": { - "description": "The list role assignments", + "description": "The list of role assignments.", "type": "array", "readOnly": true, "items": { @@ -7305,7 +7311,7 @@ } }, "BillingRoleAssignment": { - "description": "a role assignment", + "description": "The role assignment", "type": "object", "allOf": [ { @@ -7314,57 +7320,57 @@ ], "properties": { "properties": { - "description": "The role assignment the caller has", + "description": "The properties of the role assignment.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingRoleAssignmentProperties" } } }, "BillingRoleAssignmentProperties": { - "description": "The properties of the a role assignment.", + "description": "The properties of the role assignment.", "properties": { "createdOn": { - "description": "the date the role assignment is created", + "description": "The date the role assignment was created.", "type": "string", "readOnly": true }, "createdByPrincipalTenantId": { - "description": "the creator's tenant Id", + "description": "The tenant Id of the user who created the role assignment.", "type": "string", "readOnly": true }, "createdByPrincipalId": { - "description": "the creator's principal Id", + "description": "The principal Id of the user who created the role assignment.", "type": "string", "readOnly": true }, "name": { - "description": "the name of the role assignment", + "description": "The name of the role assignment.", "type": "string", "readOnly": true }, "principalId": { - "description": "The user's principal id that the role gets assigned to", + "description": "The principal id of the user to whom the role was assigned.", "type": "string", "readOnly": true }, "roleDefinitionName": { - "description": "The role definition id", + "description": "The ID of the role definition.", "type": "string", "readOnly": true }, "scope": { - "description": "The scope the role get assigned to", + "description": "The scope at which the role was assigned.", "type": "string", "readOnly": true } } }, "BillingRoleDefinitionListResult": { - "description": "list the role definitions.", + "description": "The list of role definitions.", "properties": { "value": { - "description": "The list of role definitions.", + "description": "The role definitions.", "type": "array", "readOnly": true, "items": { @@ -7374,7 +7380,7 @@ } }, "BillingRoleDefinition": { - "description": "Result of get role definition for a role.", + "description": "The properties of a role definition.", "type": "object", "allOf": [ { @@ -7383,7 +7389,7 @@ ], "properties": { "properties": { - "description": "The role definition for a role.", + "description": "The properties of the a role definition.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingRoleDefinitionProperties" } @@ -7429,7 +7435,7 @@ "type": "object", "properties": { "actions": { - "description": "The set of actions that the caller is allowed to do", + "description": "The set of actions that the caller is allowed to perform.", "type": "array", "readOnly": true, "items": { @@ -7437,7 +7443,7 @@ } }, "notActions": { - "description": "The set of actions the caller is not allowed to do", + "description": "The set of actions that the caller is not allowed to perform.", "type": "array", "readOnly": true, "items": { @@ -7465,7 +7471,7 @@ } }, "Agreement": { - "description": "An agreement resource.", + "description": "An agreement.", "type": "object", "allOf": [ { @@ -7474,23 +7480,23 @@ ], "properties": { "properties": { - "description": "An agreement.", + "description": "The properties of an agreement.", "x-ms-client-flatten": true, "$ref": "#/definitions/AgreementProperties" } } }, "AgreementProperties": { - "description": "The properties of the agreement.", + "description": "The properties of an agreement.", "properties": { "agreementLink": { - "description": "The link to the agreement.", + "description": "The URL to download the agreement.", "type": "string", "readOnly": true }, "category": { "type": "string", - "description": "Category of the agreement signed by customer.", + "description": "The category of the agreement signed by a customer.", "readOnly": true, "enum": [ "MicrosoftCustomerAgreement", @@ -7517,26 +7523,26 @@ } }, "effectiveDate": { - "description": "Effective date.", + "description": "The date from which the agreement is effective.", "type": "string", "format": "date-time", "readOnly": true }, "expirationDate": { - "description": "Expiration date.", + "description": "The date when the agreement expires.", "type": "string", "format": "date-time", "readOnly": true }, "participants": { - "description": "Participants or signer of the agreement.", + "description": "The list of participants that participates in acceptance of an agreement.", "type": "array", "items": { "$ref": "#/definitions/Participants" } }, "status": { - "description": "The agreement status", + "description": "The current status of the agreement.", "type": "string", "readOnly": true } @@ -7560,7 +7566,7 @@ "description": "Transfer validation response.", "properties": { "properties": { - "description": "Transfer validation response properties.", + "description": "The properties of transfer validation response.", "x-ms-client-flatten": true, "$ref": "#/definitions/ValidateTransferResponseProperties" } @@ -7568,7 +7574,7 @@ }, "ValidateTransferResponseProperties": { "type": "object", - "description": "Properties of transfer validation response.", + "description": "The properties of transfer validation response.", "properties": { "status": { "description": "The status of validation", @@ -7581,7 +7587,7 @@ "readOnly": true }, "results": { - "description": "Array of validation results.", + "description": "The array of validation results.", "type": "array", "items": { "$ref": "#/definitions/ValidationResultProperties" @@ -7610,33 +7616,33 @@ } }, "Participants": { - "description": "Details about the participant or signer.", + "description": "The details about a participant.", "properties": { "status": { - "description": "The signing status", + "description": "The acceptance status of the participant.", "type": "string", "readOnly": true }, "statusDate": { - "description": "The date when status got changed.", + "description": "The date when the status got changed.", "type": "string", "format": "date-time", "readOnly": true }, "email": { - "description": "The email address of the participant or signer.", + "description": "The email address of the participant.", "type": "string", "readOnly": true } } }, "Action": { - "description": "the action the caller allowed to do", + "description": "The action the caller is allowed to perform.", "type": "string", "readOnly": true }, "NotAction": { - "description": "the action the caller doesn't allowed to do", + "description": "The set of actions that the caller is not allowed to perform.", "type": "string", "readOnly": true } @@ -7647,19 +7653,19 @@ "in": "query", "required": true, "type": "string", - "description": "Version of the API to be used with the client request. The current version is 2019-10-01-preview." + "description": "The version of the API to be used with the client request. The current version is 2019-10-01-preview." }, "subscriptionIdParameter": { "name": "subscriptionId", "in": "path", - "description": "Azure Subscription ID.", + "description": "The ID that uniquely identifies an Azure subscription.", "required": true, "type": "string" }, "billingAccountNameParameter": { "name": "billingAccountName", "in": "path", - "description": "billing Account Id.", + "description": "The ID that uniquely identifies a billing account.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7667,7 +7673,7 @@ "invoiceSectionNameParameter": { "name": "invoiceSectionName", "in": "path", - "description": "InvoiceSection Id.", + "description": "The ID that uniquely identifies an invoice section.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7675,7 +7681,7 @@ "enrollmentAccountNameParameter": { "name": "enrollmentAccountName", "in": "path", - "description": "Enrollment Account Id.", + "description": "The ID that uniquely identifies an enrollment account.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7683,7 +7689,7 @@ "departmentNameParameter": { "name": "departmentName", "in": "path", - "description": "Department Id.", + "description": "The ID that uniquely identifies a department.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7699,7 +7705,7 @@ "billingProfileNameParameter": { "name": "billingProfileName", "in": "path", - "description": "Billing Profile Id.", + "description": "The ID that uniquely identifies a billing profile.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7715,7 +7721,7 @@ "billingRoleDefinitionNameParameter": { "name": "billingRoleDefinitionName", "in": "path", - "description": "role definition id.", + "description": "The ID that uniquely identifies a role definition.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7723,7 +7729,7 @@ "billingRoleAssignmentNameParameter": { "name": "billingRoleAssignmentName", "in": "path", - "description": "role assignment id.", + "description": "The ID that uniquely identifies a role assignment.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7731,7 +7737,7 @@ "invoiceNameParameter": { "name": "invoiceName", "in": "path", - "description": "Invoice Id.", + "description": "The ID that uniquely identifies an invoice.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7739,7 +7745,7 @@ "productNameParameter": { "name": "productName", "in": "path", - "description": "Invoice Id.", + "description": "The ID that uniquely identifies a product.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7747,7 +7753,7 @@ "billingSubscriptionNameParameter": { "name": "billingSubscriptionName", "in": "path", - "description": "Billing Subscription Id.", + "description": "The ID that uniquely identifies a subscription.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7758,12 +7764,12 @@ "in": "path", "required": true, "type": "string", - "description": "Transfer Name." + "description": "The ID that uniquely identifies a transfer request." }, "agreementNameParameter": { "name": "agreementName", "in": "path", - "description": "Agreement Id.", + "description": "The ID that uniquely identifies an agreement.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7771,7 +7777,7 @@ "transactionNameParameter": { "name": "transactionName", "in": "path", - "description": "Transaction name.", + "description": "The ID that uniquely identifies a transaction.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7781,7 +7787,7 @@ "x-ms-parameter-location": "method", "in": "body", "required": true, - "description": "Update auto renew request parameters.", + "description": "Request parameters that are provided to the update auto renew operation.", "schema": { "$ref": "#/definitions/UpdateAutoRenewRequest" } @@ -7789,7 +7795,7 @@ "customerNameParameter": { "name": "customerName", "in": "path", - "description": "Customer name.", + "description": "The ID that uniquely identifies a customer.", "required": true, "type": "string", "x-ms-parameter-location": "method" diff --git a/specification/billing/resource-manager/readme.cli.md b/specification/billing/resource-manager/readme.cli.md index 9cb78fdbb0b9..c13b35b5db95 100644 --- a/specification/billing/resource-manager/readme.cli.md +++ b/specification/billing/resource-manager/readme.cli.md @@ -11,23 +11,23 @@ cli: cli-directive: - select: 'property' where: - objectSchema: 'billing_profile_creation_request' - property: 'po_number' + objectSchema: 'billingProfileCreationRequest' + property: 'poNumber' set: name: 'purchase_order_number' - select: 'operationGroup' where: - operationGroup: 'available_balances' + operationGroup: 'availableBalances' set: name: 'available_credit_balance' - select: 'property' where: - objectSchema: 'billing_profile' - property: 'po_number' + objectSchema: 'BillingProfileProperties' + property: 'poNumber' set: name: 'purchase_order_number' - select: 'operationGroup' where: - operationGroup: ^(?!^billing_period$)(?!^budget$)(?!^enrollment_accounts$)(?!^invoices$)(?!^marketplace$)(?!^price_sheet$)(?!^reservation_detail$)(?!^reservation_summary$)(?!^usage_aggregate$)(?!^usage_detail$).*$ + operationGroup: ^(?!^billingPeriod$)(?!^budget$)(?!^enrollmentAccounts$)(?!^invoices$)(?!^marketplace$)(?!^priceSheet$)(?!^reservationDetail$)(?!^reservationSummary$)(?!^usageAggregate$)(?!^usageDetail$).*$ hidden: true ``` diff --git a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Create.json b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Create.json index dc0b961b6ca7..9fcbc4debcd5 100644 --- a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Create.json +++ b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Create.json @@ -11,9 +11,9 @@ "capacity": 2 }, "protocol": "Quorum", - "password": "$@123_34#&", + "password": "1234abcdEFG1", "consortium": "ContoseConsortium", - "consortiumManagementAccountPassword": "$@123_34#&" + "consortiumManagementAccountPassword": "1234abcdEFG1" } } }, diff --git a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Update.json b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Update.json index 0e5b08b2ba45..14f07b1e8bb6 100644 --- a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Update.json +++ b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/BlockchainMembers_Update.json @@ -6,8 +6,8 @@ "api-version": "2018-06-01-preview", "blockchainMember": { "properties": { - "password": "$@123_34#&", - "consortiumManagementAccountPassword": "$@123_34#&", + "password": "1234abcdEFG1", + "consortiumManagementAccountPassword": "1234abcdEFG1", "firewallRules": null }, "tags": null diff --git a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Create.json b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Create.json index c67f8c60f4f6..458faaa40e4d 100644 --- a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Create.json +++ b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Create.json @@ -8,7 +8,7 @@ "transactionNode": { "location": "southeastasia", "properties": { - "password": "$@123_34#&" + "password": "1234abcdEFG1" } } }, diff --git a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Update.json b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Update.json index 4db7bf67ace2..4c336035493c 100644 --- a/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Update.json +++ b/specification/blockchain/resource-manager/Microsoft.Blockchain/preview/2018-06-01-preview/examples/TransactionNodes_Update.json @@ -7,7 +7,7 @@ "api-version": "2018-06-01-preview", "transactionNode": { "properties": { - "password": "$@123_34#&" + "password": "1234abcdEFG1" } } }, diff --git a/specification/blockchain/resource-manager/readme.az.md b/specification/blockchain/resource-manager/readme.az.md new file mode 100644 index 000000000000..a299cae2b674 --- /dev/null +++ b/specification/blockchain/resource-manager/readme.az.md @@ -0,0 +1,12 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: blockchain + namespace: azure.mgmt.blockchain + package-name: azure-mgmt-blockchain +az-output-folder: $(azure-cli-extension-folder)/src/blockchain +python-sdk-output-folder: "$(az-output-folder)/azext_blockchain/vendored_sdks/blockchain" +``` diff --git a/specification/blockchain/resource-manager/readme.cli.md b/specification/blockchain/resource-manager/readme.cli.md index 6da91f797a6c..5c4de203b0f6 100644 --- a/specification/blockchain/resource-manager/readme.cli.md +++ b/specification/blockchain/resource-manager/readme.cli.md @@ -23,24 +23,24 @@ cli: - select: 'operationGroup' where: operationGroup: 'locations' - name: 'Consortium' + name: 'consortium' - select: 'operation' where: operationGroup: 'locations' - operation: 'list_consortiums' + operation: 'listConsortiums' name: 'list' - - select: 'operationGroup' - where: - operationGroup: 'blockchain_member_operation_results' - hidden: true - - select: 'operation' - where: - operationGroup: 'blockchain_members' - operation: '(create|update)' - hidden: true - - select: 'operation' - where: - operationGroup: 'transaction_nodes' - operation: '(create|update)' - hidden: true + # - select: 'operationGroup' + # where: + # operationGroup: 'blockchainMemberOperationResults' + # hidden: true + # - select: 'operation' + # where: + # operationGroup: 'blockchainMembers' + # operation: '(create|update)' + # hidden: true + # - select: 'operation' + # where: + # operationGroup: 'transactionNodes' + # operation: '(create|update)' + # hidden: true ``` \ No newline at end of file diff --git a/specification/blockchain/resource-manager/readme.python.md b/specification/blockchain/resource-manager/readme.python.md index 5e36652a4068..50680aec44a9 100644 --- a/specification/blockchain/resource-manager/readme.python.md +++ b/specification/blockchain/resource-manager/readme.python.md @@ -5,7 +5,7 @@ Please also specify `--python-sdks-folder=.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" + } + }, + "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": { + "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" + }, + "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" + } + }, + "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.", + "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" + } + }, + "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" + }, + "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" + ], + "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" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + }, + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "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": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "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" + ], + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 #." + } + } + }, + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlRewriteActionParameters" + ] + }, + "sourcePattern": { + "description": "define a request URI pattern that identifies the type of requests that may be rewritten. Currently, source pattern uses a prefix-based match. To match all URL paths, use \"/\" as the source pattern value. To match only the root directory and re-write this path, use the origin path field", + "type": "string" + }, + "destination": { + "description": "Define the destination path for be used in the rewrite. This will overwrite the source pattern ", + "type": "string" + }, + "preserveUnmatchedPath": { + "description": "If True, the remaining path after the source pattern will be appended to the new destination path. ", + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase" + ], + "x-ms-enum": { + "name": "transform", + "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", + "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.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535", + "type": "integer", + "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, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + } + }, + "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 codes defining user country 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" + } + } + } + }, + "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/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginProperties" + } + } + }, + "OriginProperties": { + "description": "The JSON object that contains the properties of the origin.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "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, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "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" + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin creation or update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginPropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginPropertiesParameters": { + "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.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "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, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + } + } + }, + "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." + } + } + }, + "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": [ + "@odata.type", + "certificateType" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion", + "updateRule", + "deleteRule" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "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 + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "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" + } + } + } + } + }, + "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", + "readOnly": true, + "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." + } + } + }, + "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" + } + } + }, + "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" + } + }, + "x-ms-azure-resource": 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" + } + ] + }, + "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 + } + }, + "Sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Premium_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": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + } + }, + "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 2017-04-02." + }, + "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/2019-06-15/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..5dd299660337 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json @@ -0,0 +1,926 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-15", + "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." + } + }, + "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", + "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", + "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", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "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": "MatchVariable", + "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", + "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 2017-04-02." + }, + "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/2019-06-15/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..2b96a7206b92 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..c0c3b1b13ad7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..8929b9d3daa4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..1763355d6bd9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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 + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..f1d21c2526f9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..68f5dd4d2b3a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..72580d85a0fe --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2019-06-15/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..14bd1123ab53 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..93eab948f18d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..6a6392c86c0d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2019-06-15" + }, + "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/2019-06-15/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json new file mode 100644 index 000000000000..90abc4a43fa2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json @@ -0,0 +1,377 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "properties": { + "originHostHeader": "www.bing.com", + "originPath": "/photos", + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "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" + ], + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + } + ] + } + ] + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com" + } + } + ], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + }, + "location": "WestUs", + "tags": { + "kay1": "value1" + } + } + }, + "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", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + }, + "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", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + }, + "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", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..95f06c69a84c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json new file mode 100644 index 000000000000..d526f887045f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..9c8811f1a5a2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..896e73cbf94c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..ab4ce8b77ff4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..ab4ce8b77ff4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json new file mode 100644 index 000000000000..95393054d8aa --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": [], + "webApplicationFirewallPolicyLink": null + } + } + }, + "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": "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": [], + "webApplicationFirewallPolicyLink": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..64d81d581402 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": [], + "webApplicationFirewallPolicyLink": null + } + } + }, + "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": "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": [], + "webApplicationFirewallPolicyLink": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json new file mode 100644 index 000000000000..3050f09b2ba6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": { + "additionalProperties": "Tag1" + }, + "properties": { + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + }, + "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 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + }, + "202": { + "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 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..ff001cf6687a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json new file mode 100644 index 000000000000..081de51e65db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-06-15" + }, + "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/2019-06-15/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json new file mode 100644 index 000000000000..fdd5dbb71875 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "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 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..2a7d21ac4410 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "location": "WestUs", + "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 + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json new file mode 100644 index 000000000000..d44cd8cd16a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "properties": { + "httpPort": 42, + "httpsPort": 43 + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "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 + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "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 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json new file mode 100644 index 000000000000..d41d40645002 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json new file mode 100644 index 000000000000..5b4325394d1d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..4f22d15171d1 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json new file mode 100644 index 000000000000..c519c6c128c9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json new file mode 100644 index 000000000000..51fa44ed1edc --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..7158dca4b260 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..5c0e616e0663 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..96c28271c160 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json new file mode 100644 index 000000000000..7e01f44177a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..c0804515e562 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json new file mode 100644 index 000000000000..3ffb4c86b32b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..a4c343b3b81d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json new file mode 100644 index 000000000000..fe06b030ca50 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..097f3387a82b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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": { + "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/2019-06-15/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..39cccc946483 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/2019-06-15/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..d5dfe788d78f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json new file mode 100644 index 000000000000..2525da1d6fb4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "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/Microsoft.Cdn/stable/2019-12-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json index 3baa448d3b67..a67766220370 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 @@ -3921,12 +3921,13 @@ "@odata.type": { "type": "string", "enum": [ - "#Microsoft.Azure.Cdn.Models.OriginGroupOverrideActionParameters" + "#Microsoft.Azure.Cdn.Models.DeliveryRuleOriginGroupOverrideActionParameters" ] }, "originGroup": { - "description": "Origin Group from where the content will be fetched from when CDN does not have it", - "type": "string" + "description": "A reference to the origin group from where the content will be fetched from when CDN does not have it", + "type": "object", + "$ref": "#/definitions/ResourceReference" } } }, 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 new file mode 100644 index 000000000000..7b052709cb5f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json @@ -0,0 +1,5486 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-31", + "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 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 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 a 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 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 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 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 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 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 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 CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "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 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 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 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": { + "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": { + "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": { + "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": "CDN profile is a logical grouping of endpoints that share the same settings, such as CDN provider and pricing tier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN 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 + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string" + } + } + }, + "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" + } + }, + "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", + "$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" + }, + "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" + ], + "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" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + }, + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "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": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "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" + ], + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 #." + } + } + }, + "UrlSigningActionParameters": { + "description": "Defines the parameters for the Url Signing action.", + "required": [ + "keyId" + ], + "properties": { + "keyId": { + "description": "Id reference of the key to be used to verify the hash and should be defined in UrlSigningKeys", + "type": "string" + }, + "algorithm": { + "description": "Algorithm to use for URL signing", + "type": "string", + "enum": [ + "SHA256" + ] + }, + "parameterNameOverride": { + "description": "Defines which query string parameters in the url to be considered for expires, key id etc. ", + "type": "array", + "items": { + "$ref": "#/definitions/UrlSigningParamIdentifier" + } + }, + "ipSubnets": { + "description": "Match values to match against. Supports CIDR ranges (both IPv4 and IPv6).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "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" + ] + }, + "paramName": { + "description": "Parameter name", + "type": "string" + } + } + }, + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase" + ], + "x-ms-enum": { + "name": "transform", + "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", + "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, + "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", + "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", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not. By default, origin is always enabled.", + "type": "boolean" + } + }, + "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", + "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 codes defining user country 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": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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/TrackedResource" + } + ], + "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" + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin update.", + "properties": { + "tags": { + "description": "Origin tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "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", + "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, + "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", + "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", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not", + "type": "boolean" + } + } + }, + "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", + "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", + "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", + "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", + "maximum": 999, + "minimum": 100 + }, + "end": { + "description": "The inclusive end of the http status code range.", + "type": "integer", + "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 + } + }, + "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": [ + "@odata.type", + "certificateType" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion", + "updateRule", + "deleteRule" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "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 + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "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" + } + } + } + } + }, + "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", + "readOnly": true, + "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." + } + } + }, + "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" + } + } + }, + "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" + } + }, + "x-ms-azure-resource": 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" + } + ] + }, + "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 + } + }, + "Sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Premium_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": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + } + }, + "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 2017-04-02." + }, + "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/2020-03-31/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..f38723617aa7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json @@ -0,0 +1,926 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-31", + "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." + } + }, + "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", + "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", + "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", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "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": "MatchVariable", + "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", + "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 2017-04-02." + }, + "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/2020-03-31/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..a20fc0ace07c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..935a838c7924 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..c368ab84efcc --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..502c74bac3f3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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 + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..8a0b974b22b9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..1bb98872ff7e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..ed42e2512b06 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2020-03-31/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..a6a7cfcd9bd9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..9b7329618e99 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..6583b23e0f8f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2020-03-31" + }, + "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/2020-03-31/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json new file mode 100644 index 000000000000..58d5489139d0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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" + ], + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..3f86f09f9aa6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json new file mode 100644 index 000000000000..52d7141aacb9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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" + } + ] + } + } + ], + "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/2020-03-31/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..b152f3bbd6de --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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 + } + } + } + ], + "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/2020-03-31/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..97622a7d7d91 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..8ec0a0e2a181 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..8ec0a0e2a181 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json new file mode 100644 index 000000000000..911d81318e44 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": { + "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/2020-03-31/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..8d670c159f4a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": { + "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/2020-03-31/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json new file mode 100644 index 000000000000..8f8b4f876ccd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": { + "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/2020-03-31/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..63777e355ac3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json new file mode 100644 index 000000000000..0c9d7e28bdaf --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-31" + }, + "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/2020-03-31/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json new file mode 100644 index 000000000000..d9011eeb0e0b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json new file mode 100644 index 000000000000..579693751a64 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json new file mode 100644 index 000000000000..d07d328840f6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/OriginGroups_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json new file mode 100644 index 000000000000..9d537a147041 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/OriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json new file mode 100644 index 000000000000..5308383c35c0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": { + "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/2020-03-31/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json new file mode 100644 index 000000000000..ba59911b81e7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "origin": { + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "properties": { + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json new file mode 100644 index 000000000000..497e0f8f3c37 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "origin1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json new file mode 100644 index 000000000000..56444627eff0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..1e81714e36a8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json new file mode 100644 index 000000000000..c47e493a4b2a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "tags": { + "key1": "value1" + }, + "properties": { + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json new file mode 100644 index 000000000000..83c7264d1aa9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json new file mode 100644 index 000000000000..8dc5b312a313 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..8860f9753469 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json new file mode 100644 index 000000000000..9d75fbdcbafe --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json new file mode 100644 index 000000000000..57b729d7ec4f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..f8ac7df9d109 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..817007a24c82 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..eb48c6e3eb83 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json new file mode 100644 index 000000000000..05e1324d08db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..04dd17cacaca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json new file mode 100644 index 000000000000..0fbcc807ca79 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..35a6f617f967 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json new file mode 100644 index 000000000000..f768c71a1cef --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..f25f8d61b5a9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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": { + "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/2020-03-31/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..b5fdc100e22a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/2020-03-31/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..7de315080401 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json new file mode 100644 index 000000000000..cec9f3b447a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "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/Microsoft.Cdn/stable/2020-04-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json new file mode 100644 index 000000000000..312c0e0e51bb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdn.json @@ -0,0 +1,5518 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-15", + "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 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 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 a 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 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 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 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 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 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 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 CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "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 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 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 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": { + "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": { + "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": { + "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": "CDN profile is a logical grouping of endpoints that share the same settings, such as CDN provider and pricing tier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN 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 + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string" + } + } + }, + "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" + } + }, + "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", + "$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" + }, + "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" + ], + "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" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + }, + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "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": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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" + ], + "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", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "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" + ], + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 #." + } + } + }, + "UrlSigningActionParameters": { + "description": "Defines the parameters for the Url Signing action.", + "required": [ + "keyId" + ], + "properties": { + "keyId": { + "description": "Id reference of the key to be used to verify the hash and should be defined in UrlSigningKeys", + "type": "string" + }, + "algorithm": { + "description": "Algorithm to use for URL signing", + "type": "string", + "enum": [ + "SHA256" + ] + }, + "parameterNameOverride": { + "description": "Defines which query string parameters in the url to be considered for expires, key id etc. ", + "type": "array", + "items": { + "$ref": "#/definitions/UrlSigningParamIdentifier" + } + }, + "ipSubnets": { + "description": "Match values to match against. Supports CIDR ranges (both IPv4 and IPv6).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "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" + ] + }, + "paramName": { + "description": "Parameter name", + "type": "string" + } + } + }, + "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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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 + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase" + ], + "x-ms-enum": { + "name": "transform", + "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", + "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, + "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", + "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", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not. By default, origin is always enabled.", + "type": "boolean" + } + }, + "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", + "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 codes defining user country 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": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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/TrackedResource" + } + ], + "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", + "type": "string", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointStatus", + "modelAsString": false + } + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin update.", + "properties": { + "tags": { + "description": "Origin tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "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", + "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, + "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", + "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", + "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", + "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", + "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", + "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", + "maximum": 999, + "minimum": 100 + }, + "end": { + "description": "The inclusive end of the http status code range.", + "type": "integer", + "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 + } + }, + "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": [ + "@odata.type", + "certificateType" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion", + "updateRule", + "deleteRule" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.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", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "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 + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "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" + } + } + } + } + }, + "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", + "readOnly": true, + "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." + } + } + }, + "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" + } + } + }, + "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" + } + }, + "x-ms-azure-resource": 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" + } + ] + }, + "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 + } + }, + "Sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Premium_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": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + } + }, + "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 2017-04-02." + }, + "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/2020-04-15/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..776e38b9d7eb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json @@ -0,0 +1,926 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-15", + "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." + } + }, + "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", + "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", + "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", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "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": "MatchVariable", + "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", + "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 2017-04-02." + }, + "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/2020-04-15/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..a48e0e034f1f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..666805d4482d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..e234364eee5c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..69f13bb1ddca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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 + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..53dc7228bc25 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..f1fc807c6e01 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..fd81626a2431 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.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/2020-04-15/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..6d1b1d65a899 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..98d69cfe24dd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..85de12808f14 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2020-04-15" + }, + "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/2020-04-15/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Create.json new file mode 100644 index 000000000000..81fce9324123 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Create.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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" + ], + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.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": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..4b0bc371a510 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Get.json new file mode 100644 index 000000000000..039687fc7b8d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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" + } + ] + } + } + ], + "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/2020-04-15/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..f5cb3c0f6fe2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListByProfile.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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 + } + } + } + ], + "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/2020-04-15/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..b3c53e02be22 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..5daeb6e31202 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..5daeb6e31202 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Start.json new file mode 100644 index 000000000000..94310c51922f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Start.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": { + "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/2020-04-15/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..0bf457363066 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Stop.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": { + "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/2020-04-15/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Update.json new file mode 100644 index 000000000000..bad861f930d3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_Update.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": { + "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/2020-04-15/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..e57bad007e46 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Operations_List.json new file mode 100644 index 000000000000..e971f958b00e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-04-15" + }, + "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/2020-04-15/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Create.json new file mode 100644 index 000000000000..78c047669ba4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Create.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Delete.json new file mode 100644 index 000000000000..30b340bc1eb9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Get.json new file mode 100644 index 000000000000..c6f28a99a3b9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/OriginGroups_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_ListByEndpoint.json new file mode 100644 index 000000000000..491319268648 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_ListByEndpoint.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/OriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Update.json new file mode 100644 index 000000000000..8c7b87fe8999 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/OriginGroups_Update.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": { + "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/2020-04-15/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Create.json new file mode 100644 index 000000000000..31ad52dc4aaa --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Create.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "origin": { + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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/2020-04-15/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Delete.json new file mode 100644 index 000000000000..4a270df6853f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "origin1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Get.json new file mode 100644 index 000000000000..89a514a4d173 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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/2020-04-15/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..13aae31ac89f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_ListByEndpoint.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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/2020-04-15/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Update.json new file mode 100644 index 000000000000..f6e79f729785 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Origins_Update.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "tags": { + "key1": "value1" + }, + "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", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "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/2020-04-15/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Create.json new file mode 100644 index 000000000000..8ed2a4b03dd2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Delete.json new file mode 100644 index 000000000000..22bbf70debdd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..aefe1ea2bf3e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Get.json new file mode 100644 index 000000000000..d9ea670565db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_List.json new file mode 100644 index 000000000000..b50921e0621b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..63a2179d74c0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": "Standard_Akamai" + }, + "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": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..3830380800be --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..c3f7aecedd99 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Update.json new file mode 100644 index 000000000000..8b626338de52 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/Profiles_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..e392d79f386d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ValidateProbe.json new file mode 100644 index 000000000000..cf8a858664ca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..92cca78b4f3b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListPolicies.json new file mode 100644 index 000000000000..68f6d96c8893 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..7e8c7d3e05ee --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPatchPolicy.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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": { + "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/2020-04-15/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..c0fb68fe3c69 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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/2020-04-15/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..1a88912550cf --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyGet.json new file mode 100644 index 000000000000..086cbc0e512d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-04-15/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-04-15", + "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.go.md b/specification/cdn/resource-manager/readme.go.md index 2700f6d89157..b53dccbfb0c7 100644 --- a/specification/cdn/resource-manager/readme.go.md +++ b/specification/cdn/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-06 - tag: package-2019-04 - tag: package-2017-10 @@ -22,13 +23,13 @@ batch: - tag: package-2015-06 ``` -### Tag: package-2019-06 and go +### Tag: package-2020-04 and go -These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -``` yaml $(tag) == 'package-2019-06' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-06-15-preview/$(namespace) +``` yaml $(tag) == 'package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-04-15/$(namespace) ``` ### Tag: package-2019-04 and go diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index ac6e2f874a2f..58ca149dc55d 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -28,7 +28,17 @@ These are the global settings for the Cdn API. title: CdnManagementClient description: Cdn Management Client openapi-type: arm -tag: package-2019-04 +tag: package-2019-06 +``` + +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04' +input-file: +- Microsoft.Cdn/stable/2020-04-15/cdn.json +- Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json ``` ### Tag: package-2019-12 @@ -46,6 +56,16 @@ These settings apply only when `--tag=package-2019-06` is specified on the comma ``` yaml $(tag) == 'package-2019-06' input-file: +- Microsoft.Cdn/stable/2019-06-15/cdn.json +- Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json +``` + +### Tag: package-2019-06-preview + +These settings apply only when `--tag=package-2019-06-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06-preview' +input-file: - Microsoft.Cdn/preview/2019-06-15-preview/cdn.json - Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json directive: @@ -167,7 +187,11 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Cdn/stable/2020-04-15/cdn.json + - $(this-folder)/Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json - $(this-folder)/Microsoft.Cdn/stable/2019-12-31/cdn.json + - $(this-folder)/Microsoft.Cdn/stable/2019-06-15/cdn.json + - $(this-folder)/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json - $(this-folder)/Microsoft.Cdn/preview/2019-06-15-preview/cdn.json - $(this-folder)/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json - $(this-folder)/Microsoft.Cdn/stable/2019-04-15/cdn.json diff --git a/specification/cdn/resource-manager/readme.ruby.md b/specification/cdn/resource-manager/readme.ruby.md index e120956e650c..f1c42770c4fa 100644 --- a/specification/cdn/resource-manager/readme.ruby.md +++ b/specification/cdn/resource-manager/readme.ruby.md @@ -4,7 +4,7 @@ These settings apply only when `--ruby` is specified on the command line. ``` yaml package-name: azure_mgmt_cdn -package-version: "0.16.0" +package-version: "0.17.0" azure-arm: true ``` @@ -12,6 +12,8 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2019-06 + - tag: package-2019-04 - tag: package-2017-10 - tag: package-2017-04 - tag: package-2016-10 @@ -19,6 +21,36 @@ batch: - tag: package-2015-06 ``` +### Tag: package-2020-04 and ruby + +These settings apply only when `--tag=package-2020-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2020_04_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib +``` + +### Tag: package-2019-06 and ruby + +These settings apply only when `--tag=package-2019-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-06' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2019_06_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib +``` + +### Tag: package-2019-04 and ruby + +These settings apply only when `--tag=package-2019-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-04' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2019_04_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib +``` + ### Tag: package-2017-10 and ruby These settings apply only when `--tag=package-2017-10 --ruby` is specified on the command line. diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json new file mode 100644 index 000000000000..5e9311a95e5a --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json @@ -0,0 +1,519 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureChangeAnalysisManagementClient", + "version": "2020-04-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ChangeAnalysis/profile/{profileName}": { + "get": { + "tags": [ + "ConfigurationProfile" + ], + "summary": "Gets the configuration profile for the Microsoft.ChangeAnalysis resource provider. The profile name should be always set to 'default'.", + "operationId": "ConfigurationProfile_Get", + "produces": [ + "application/json", + "default" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationProfileResource" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationProfile_Get": { + "$ref": "./examples/ConfigurationProfileGet.json" + } + } + }, + "put": { + "tags": [ + "ConfigurationProfile" + ], + "summary": "Updates configuration profile for for the Microsoft.ChangeAnalysis resource provider. The profile name should be always set to 'default'.", + "operationId": "ConfigurationProfile_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json", + "default" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request body containing new configuration profile.", + "schema": { + "$ref": "#/definitions/ConfigurationProfileResource" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationProfileResource" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationProfile_Create": { + "$ref": "./examples/ConfigurationProfileCreate.json" + }, + "ConfigurationProfile_CreateWithIdentity": { + "$ref": "./examples/ConfigurationProfileCreateWithIdentity.json" + } + } + }, + "patch": { + "tags": [ + "ConfigurationProfile" + ], + "summary": "Updates a configuration profile with the specified parameters. The profile name should be always set to 'default'", + "operationId": "ConfigurationProfile_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json", + "default" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "The parameters for updating a configuration store.", + "schema": { + "$ref": "#/definitions/ConfigurationProfileResource" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationProfileResource" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationProfile_Update": { + "$ref": "./examples/ConfigurationProfileUpdate.json" + }, + "ConfigurationProfile_UpdateWithIdentity": { + "$ref": "./examples/ConfigurationProfileUpdateWithIdentity.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationProfile" + ], + "summary": "Deletes existing configuration profile. The profile name should be always set to 'default'", + "operationId": "ConfigurationProfile_Delete", + "produces": [ + "default" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationProfile_Delete": { + "$ref": "./examples/ConfigurationProfileDelete.json" + } + } + } + }, + "/providers/Microsoft.ChangeAnalysis/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all the supported operations by the Microsoft.ChangeAnalysis resource provider along with their descriptions.", + "operationId": "Operations_List", + "produces": [ + "application/json", + "default" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "query", + "name": "$skipToken", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/OperationsList.json" + } + } + } + } + }, + "definitions": { + "ResourceIdentity": { + "description": "The identity block returned by ARM resource that supports managed identity.", + "type": "object", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.", + "enum": [ + "None", + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedIdentityTypes", + "modelAsString": true + } + }, + "principalId": { + "format": "uuid", + "description": "The principal id of the identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "format": "uuid", + "description": "The tenant id associated with the resource's identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "AzureMonitorWorkspaceProperties": { + "description": "Configuration properties of an Azure Monitor workspace that receives change notifications.", + "type": "object", + "properties": { + "workspaceId": { + "description": "The Azure Monitor workspace ID - the unique identifier for the Log Analytics workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "The Azure Monitor workspace ARM Resource ID. The resource ID should be in the following format: /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}", + "type": "string" + } + } + }, + "NotificationsState": { + "description": "The state of notifications feature.", + "enum": [ + "None", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "NotificationsState", + "modelAsString": true + } + }, + "NotificationSettings": { + "description": "Settings of change notification configuration for a subscription.", + "type": "object", + "properties": { + "azureMonitorWorkspaceProperties": { + "$ref": "#/definitions/AzureMonitorWorkspaceProperties" + }, + "activationState": { + "$ref": "#/definitions/NotificationsState" + } + } + }, + "ConfigurationProfileResourceProperties": { + "description": "The properties of a configuration profile.", + "type": "object", + "properties": { + "notifications": { + "$ref": "#/definitions/NotificationSettings" + } + } + }, + "SystemData": { + "description": "Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources", + "type": "object", + "properties": { + "createdBy": { + "description": "A string identifier for the identity that created the resource", + "type": "string", + "readOnly": true + }, + "createdByType": { + "description": "The type of identity that created the resource: user, application, managedIdentity, key", + "type": "string", + "readOnly": true + }, + "createdAt": { + "format": "date-time", + "description": "The timestamp of resource creation (UTC)", + "type": "string", + "readOnly": true + }, + "lastModifiedBy": { + "description": "A string identifier for the identity that last modified the resource", + "type": "string", + "readOnly": true + }, + "lastModifiedByType": { + "description": "The type of identity that last modified the resource: user, application, managedIdentity, key", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)", + "type": "string", + "readOnly": true + } + } + }, + "ConfigurationProfileResource": { + "description": "A profile object that contains change analysis configuration, such as notification settings, for this subscription", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity" + }, + "properties": { + "$ref": "#/definitions/ConfigurationProfileResourceProperties" + } + } + }, + "ProxyResource": { + "description": "An Azure resource.", + "properties": { + "id": { + "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "systemData": { + "$ref": "#/definitions/SystemData" + } + }, + "x-ms-azure-resource": true + }, + "ResourceProviderOperationDisplay": { + "description": "The resource provider operation details.", + "type": "object", + "properties": { + "provider": { + "description": "Name of the resource provider.", + "type": "string" + }, + "resource": { + "description": "Name of the resource type.", + "type": "string" + }, + "operation": { + "description": "Name of the resource provider operation.", + "type": "string" + }, + "description": { + "description": "Description of the resource provider operation.", + "type": "string" + } + } + }, + "ResourceProviderOperationDefinition": { + "description": "The resource provider operation definition.", + "type": "object", + "properties": { + "name": { + "description": "The resource provider operation name.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/ResourceProviderOperationDisplay" + } + } + }, + "ResourceProviderOperationList": { + "description": "The resource provider operation list.", + "type": "object", + "properties": { + "value": { + "description": "Resource provider operations list.", + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperationDefinition" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next page for list of Azure operations.", + "type": "string" + } + } + }, + "Error": { + "description": "Unexpected Microsoft.ChangeAnalysis Resource Provider Error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + } + } + } + }, + "parameters": { + "ProfileNameParameter": { + "in": "path", + "name": "profileName", + "description": "The name of the configuration profile. The profile name should be set to 'default', all other names will be overwritten.", + "required": true, + "type": "string", + "pattern": "^(?!.*-$)[^-][a-zA-Z0-9-]*$", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "in": "path", + "name": "subscriptionId", + "description": "The Microsoft Azure subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "The resource provider API version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreate.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreate.json new file mode 100644 index 000000000000..bd24d84d7d07 --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreate.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview", + "resource": {} + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/profile", + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": null, + "workspaceResourceId": null + }, + "activationState": "None" + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/providers/Microsoft.ChangeAnalysis/profile/default", + "name": "default" + } + } + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreateWithIdentity.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreateWithIdentity.json new file mode 100644 index 000000000000..09c9f23cba8d --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileCreateWithIdentity.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview", + "resource": { + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ChangeAnalysis/profile", + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": null, + "workspaceResourceId": null + }, + "activationState": "None" + } + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/providers/Microsoft.ChangeAnalysis/profile/default", + "name": "default" + } + } + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileDelete.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileDelete.json new file mode 100644 index 000000000000..a30a48f30bf0 --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileDelete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileGet.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileGet.json new file mode 100644 index 000000000000..9cc400f02bac --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ChangeAnalysis/profile", + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": null, + "workspaceResourceId": null + }, + "activationState": "None" + } + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/providers/Microsoft.ChangeAnalysis/profile/default", + "name": "default" + } + } + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdate.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdate.json new file mode 100644 index 000000000000..000c465f20ca --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview", + "resource": { + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": "workspaceIdValue", + "workspaceResourceId": "workspace resource Id" + }, + "activationState": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ChangeAnalysis/profile", + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": "workspaceIdValue", + "workspaceResourceId": "workspace resource Id" + }, + "activationState": "Enabled" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/providers/Microsoft.ChangeAnalysis/profile/default", + "name": "default" + } + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdateWithIdentity.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdateWithIdentity.json new file mode 100644 index 000000000000..3b06d6733ce9 --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/ConfigurationProfileUpdateWithIdentity.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "profileName": "default", + "api-version": "2020-04-01-preview", + "resource": { + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": "workspaceIdValue", + "workspaceResourceId": "workspace resource Id" + }, + "activationState": "Enabled" + } + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ChangeAnalysis/profile", + "properties": { + "notifications": { + "azureMonitorWorkspaceProperties": { + "workspaceId": "workspaceIdValue", + "workspaceResourceId": "workspace resource Id" + }, + "activationState": "Enabled" + } + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/providers/Microsoft.ChangeAnalysis/profile/default", + "name": "default" + } + } + } +} diff --git a/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/OperationsList.json b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..2d2000363115 --- /dev/null +++ b/specification/changeanalysis/resource-manager/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/examples/OperationsList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ChangeAnalysis/profile/read", + "display": { + "provider": "Microsoft Change Analysis", + "resource": "Azure Application Change Analysis Service Configuration Profile", + "operation": "Read Azure Application Change Analysis Servie Configuration Profile" + } + }, + { + "name": "Microsoft.ChangeAnalysis/profile/write", + "display": { + "provider": "Microsoft Change Analysis", + "resource": "Azure Application Change Analysis Service Configuration Profile", + "operation": "Create or Update Azure Application Change Analysis Servie Configuration Profile Properties" + } + }, + { + "name": "Microsoft.ChangeAnalysis/register/action", + "display": { + "provider": "Microsoft Change Analysis", + "resource": "", + "operation": "Register Microsoft Change Analysis resource provider with a subscriptions" + } + } + ] + } + } + } +} diff --git a/specification/changeanalysis/resource-manager/readme.csharp.md b/specification/changeanalysis/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..8e5139845e12 --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.ChangeAnalysis + output-folder: $(csharp-sdks-folder)/changeanalysis/management/Microsoft.ChangeAnalysis/GeneratedProtocol +``` diff --git a/specification/changeanalysis/resource-manager/readme.go.md b/specification/changeanalysis/resource-manager/readme.go.md new file mode 100644 index 000000000000..c2b2c0df4332 --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Tag: package-2020-04-01-preview and go + +These settings apply only when `--tag=package-2020-04-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-01-preview' && $(go) +namespace: Microsoft.ChangeAnalysis +output-folder: $(go-sdks-folder)/changeanalysis/Generated +``` diff --git a/specification/changeanalysis/resource-manager/readme.md b/specification/changeanalysis/resource-manager/readme.md new file mode 100644 index 000000000000..82bb9acfa298 --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.md @@ -0,0 +1,140 @@ +# changeanalysis + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for changeanalysis. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the changeanalysis. + +``` yaml +openapi-type: arm +tag: package-2020-04-01-preview +``` + +### Tag: package-2020-04-01-preview + +These settings apply only when `--tag=package-2020-04-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04-01-preview' +input-file: + - Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json + +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_changeanalysis'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Suppression + +``` yaml +directive: + - suppress: BodyTopLevelProperties + where: $.definitions.ConfigurationProfileResource.properties + from: changeanalysis.json + reason: |- + https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources + + The systemData should be top level element based on the new requirement: + { + "id": "/subscriptions/{id}/resourceGroups/{group}/providers/{rpns}/{type}/{name}", + "name": "{name}", + "type": "{resourceProviderNamespace}/{resourceType}", + "location": "North US", + "systemData":{ + "createdBy": "", + "createdByType": "", + "createdAt": "", + "lastModifiedBy": "", + "lastModifiedByType": "", + "lastModifiedAt": "" + }, + "tags": { + "key1": "value 1", + "key2": "value 2" + }, + "kind": "resource kind", + "properties": { + "comment": "Resource defined structure" + } + } +``` + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/changeanalysis/resource-manager/readme.python.md b/specification/changeanalysis/resource-manager/readme.python.md new file mode 100644 index 000000000000..5bfa3618bd78 --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.ChangeAnalysis + package-name: changeanalysis + package-version: 2020-04-01-preview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/changeanalysis +``` diff --git a/specification/changeanalysis/resource-manager/readme.ruby.md b/specification/changeanalysis/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..7b7265a1b2ca --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_changeanalysis +package-version: 2020-04-01-preview +azure-arm: true +``` + +### Tag: package-2020-04-01-preview and ruby + +These settings apply only when `--tag=package-2020-04-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-01-preview' && $(ruby) +namespace: Microsoft.ChangeAnalysis +output-folder: $(ruby-sdks-folder)/changeanalysis +``` diff --git a/specification/changeanalysis/resource-manager/readme.typescript.md b/specification/changeanalysis/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..63e73c265818 --- /dev/null +++ b/specification/changeanalysis/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "changeanalysis" + output-folder: "$(typescript-sdks-folder)/packages/changeanalysis" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json index ce059f848f1b..8a3f2b3797fc 100644 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json @@ -43,8 +43,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -82,8 +86,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -121,8 +129,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -182,7 +194,14 @@ "name": "Granularity", "modelAsString": false }, - "enum": ["yearly", "monthly", "weekly", "daily", "hourly", "minutely"] + "enum": [ + "yearly", + "monthly", + "weekly", + "daily", + "hourly", + "minutely" + ] }, "CustomInterval": { "type": "integer", @@ -192,7 +211,10 @@ }, "Request": { "type": "object", - "required": ["granularity", "series"], + "required": [ + "granularity", + "series" + ], "properties": { "series": { "type": "array", @@ -227,7 +249,10 @@ }, "Point": { "type": "object", - "required": ["timestamp", "value"], + "required": [ + "timestamp", + "value" + ], "properties": { "timestamp": { "type": "string", @@ -365,7 +390,10 @@ }, "ChangePointDetectRequest": { "type": "object", - "required": ["granularity", "series"], + "required": [ + "granularity", + "series" + ], "properties": { "series": { "type": "array", @@ -401,7 +429,11 @@ }, "ChangePointDetectResponse": { "type": "object", - "required": ["isChangePoint", "confidenceScores", "period"], + "required": [ + "isChangePoint", + "confidenceScores", + "period" + ], "properties": { "period": { "type": "integer", diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json new file mode 100644 index 000000000000..0e3d2b6af278 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json @@ -0,0 +1,449 @@ +{ + "swagger": "2.0", + "info": { + "version": "3.0-preview", + "title": "Computer Vision Client", + "description": "The Computer Vision API provides state-of-the-art algorithms to process images and return information. For example, it can be used to determine if an image contains mature content, or it can be used to find all the faces in an image. It also has other features like estimating dominant and accent colors, categorizing the content of images, and describing an image with complete English sentences. Additionally, it can also intelligently generate images thumbnails for displaying large images effectively." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "host": "westcentralus.api.cognitive.microsoft.com", + "basePath": "/vision/v3.0-preview", + "schemes": [ + "https" + ], + "paths": { + "/read/analyze": { + "post": { + "description": "Use this interface to get the result of a Read operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'GetReadResult' operation to access OCR results.​", + "operationId": "Read", + "parameters": [ + { + "$ref": "#/parameters/OcrDetectionLanguage" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Analyze request": { + "$ref": "./examples/SuccessfulReadWithUrl.json" + } + } + } + }, + "/read/analyzeResults/{operationId}": { + "get": { + "description": "This interface is used for getting OCR results of Read operation. The URL to this interface should be retrieved from 'Operation-Location' field returned from Read interface.", + "operationId": "GetReadResult", + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "Id of read operation returned in the response of the 'Read' interface.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the read operation status.", + "schema": { + "$ref": "#/definitions/ReadOperationResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Get Read Result request": { + "$ref": "./examples/SuccessfulGetReadResult.json" + } + } + } + } + }, + "x-ms-paths": { + "/read/analyze?overload=stream": { + "post": { + "description": "Use this interface to get the result of a Read operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'GetReadResult' operation to access OCR results.​", + "operationId": "ReadInStream", + "parameters": [ + { + "$ref": "#/parameters/OcrDetectionLanguage" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "consumes": [ + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Analyze request": { + "$ref": "./examples/SuccessfulReadWithStream.json" + } + } + } + } + }, + "definitions": { + "ReadOperationResult": { + "type": "object", + "description": "OCR result of the read operation.", + "properties": { + "status": { + "description": "Status of the read operation.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Get UTC date time the batch operation was submitted.", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "Get last updated UTC date time of this batch operation.", + "x-nullable": false + }, + "analyzeResult": { + "description": "Analyze batch operation result.", + "type": "object", + "$ref": "#/definitions/analyzeResults" + } + } + }, + "OperationStatus": { + "type": "string", + "description": "Status code of the text operation.", + "enum": [ + "notStarted", + "running", + "failed", + "succeeded" + ], + "x-ms-enum": { + "name": "OperationStatusCodes", + "modelAsString": false + }, + "x-nullable": false + }, + "ReadResult": { + "description": "Text extracted from a page in the input document.", + "type": "object", + "required": [ + "page", + "angle", + "width", + "height", + "unit", + "lines" + ], + "properties": { + "page": { + "description": "The 1-based page number of the recognition result.", + "type": "integer" + }, + "language": { + "description": "The BCP-47 language code of the recognized text page.", + "type": "string" + }, + "angle": { + "description": "The orientation of the image in degrees in the clockwise direction. Range between [-180, 180).", + "type": "number" + }, + "width": { + "description": "The width of the image in pixels or the PDF in inches.", + "type": "number" + }, + "height": { + "description": "The height of the image in pixels or the PDF in inches.", + "type": "number" + }, + "unit": { + "description": "The unit used in the Width, Height and BoundingBox. For images, the unit is 'pixel'. For PDF, the unit is 'inch'.", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "TextRecognitionResultDimensionUnit", + "modelAsString": false + }, + "x-nullable": false + }, + "lines": { + "description": "A list of recognized text lines.", + "type": "array", + "items": { + "$ref": "#/definitions/Line" + } + } + } + }, + "analyzeResults": { + "description": "Analyze batch operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + } + } + }, + "Line": { + "description": "An object representing a recognized text line.", + "type": "object", + "required": [ + "boundingBox", + "text", + "words" + ], + "properties": { + "language": { + "description": "The BCP-47 language code of the recognized text line. Only provided where the language of the line differs from the page's.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of a recognized line.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/Word" + } + } + } + }, + "Word": { + "description": "An object representing a recognized word.", + "type": "object", + "required": [ + "boundingBox", + "text", + "confidence" + ], + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized word.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "confidence": { + "description": "Qualitative confidence measure.", + "type": "number", + "format": "float" + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates in original image. The eight numbers represent the four points (x-coordinate, y-coordinate from the left-top corner of the image) of the detected rectangle from the left-top corner in the clockwise direction. For images, coordinates are in pixels. For PDF, coordinates are in inches.", + "type": "array", + "items": { + "type": "number", + "x-nullable": false + } + }, + "ComputerVisionError": { + "description": "Details about the API request error.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "InvalidImageFormat", + "UnsupportedMediaType", + "InvalidImageUrl", + "NotSupportedFeature", + "NotSupportedImage", + "Timeout", + "InternalServerError", + "InvalidImageSize", + "BadArgument", + "DetectFaceError", + "NotSupportedLanguage", + "InvalidThumbnailSize", + "InvalidDetails", + "InvalidModel", + "CancelledRequest", + "NotSupportedVisualFeature", + "FailedToProcess", + "Unspecified", + "StorageException" + ], + "x-ms-enum": { + "name": "ComputerVisionErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + }, + "requestId": { + "description": "A unique request identifier.", + "type": "string" + } + } + }, + "ImageUrl": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "url": { + "description": "Publicly reachable URL of an image.", + "type": "string" + } + } + } + }, + "parameters": { + "OcrDetectionLanguage": { + "name": "language", + "in": "query", + "description": "The BCP-47 language code of the text to be detected in the image. In future versions, when language parameter is not passed, language detection will be used to determine the language. However, in the current version, missing language parameter will cause English to be used. To ensure that your document is always parsed in English without the use of language detection in the future, pass “en” in the language parameter", + "required": false, + "default": "en", + "x-ms-parameter-location": "method", + "type": "string", + "x-ms-enum": { + "name": "OcrDetectionLanguage", + "modelAsString": true + }, + "enum": [ + "en", + "es" + ] + }, + "ImageUrl": { + "name": "ImageUrl", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-client-flatten": true, + "description": "A JSON document with a URL pointing to the image that is to be analyzed.", + "schema": { + "$ref": "#/definitions/ImageUrl" + } + }, + "ImageStream": { + "name": "Image", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "An image stream.", + "schema": { + "type": "object", + "format": "file" + } + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints.", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json new file mode 100644 index 000000000000..aaaa9df00c50 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json @@ -0,0 +1,369 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "e56ffa6e-1ee4-4042-bc07-993db706c95f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "status": "succeeded", + "createdDateTime": "2019-10-03T14:32:04.236Z", + "lastUpdatedDateTime": "2019-10-03T14:38:14.852Z", + "analyzeResult": { + "version": "v3.0", + "readResults": [ + { + "page": 1, + "language": "en", + "angle": 49.59, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 202, + 618, + 2047, + 643, + 2046, + 840, + 200, + 813 + ], + "text": "Our greatest glory is not", + "words": [ + { + "boundingBox": [ + 204, + 627, + 481, + 628, + 481, + 830, + 204, + 829 + ], + "text": "Our", + "confidence": 0.164 + }, + { + "boundingBox": [ + 519, + 628, + 1057, + 630, + 1057, + 832, + 518, + 830 + ], + "text": "greatest", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1114, + 630, + 1549, + 631, + 1548, + 833, + 1114, + 832 + ], + "text": "glory", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1586, + 631, + 1785, + 632, + 1784, + 834, + 1586, + 833 + ], + "text": "is", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1822, + 632, + 2115, + 633, + 2115, + 835, + 1822, + 834 + ], + "text": "not", + "confidence": 0.164 + } + ] + }, + { + "boundingBox": [ + 420, + 1273, + 2954, + 1250, + 2958, + 1488, + 422, + 1511 + ], + "text": "but in rising every time we fall", + "words": [ + { + "boundingBox": [ + 423, + 1269, + 634, + 1268, + 635, + 1507, + 424, + 1508 + ], + "text": "but", + "confidence": 0.164 + }, + { + "boundingBox": [ + 667, + 1268, + 808, + 1268, + 809, + 1506, + 668, + 1507 + ], + "text": "in", + "confidence": 0.164 + }, + { + "boundingBox": [ + 874, + 1267, + 1289, + 1265, + 1290, + 1504, + 875, + 1506 + ], + "text": "rising", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1331, + 1265, + 1771, + 1263, + 1772, + 1502, + 1332, + 1504 + ], + "text": "every", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1812, + 1263, + 2178, + 1261, + 2179, + 1500, + 1813, + 1502 + ], + "text": "time", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2219, + 1261, + 2510, + 1260, + 2511, + 1498, + 2220, + 1500 + ], + "text": "we", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2551, + 1260, + 3016, + 1258, + 3017, + 1496, + 2552, + 1498 + ], + "text": "fall", + "confidence": 0.164 + } + ] + }, + { + "language": "es", + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "Viva la vida", + "words": [ + { + "boundingBox": [ + 323, + 454, + 416, + 449, + 418, + 494, + 325, + 501 + ], + "text": "Viva", + "confidence": 0.164 + }, + { + "boundingBox": [ + 92, + 550, + 429, + 541, + 430, + 591, + 94, + 600 + ], + "text": "la", + "confidence": 0.164 + }, + { + "boundingBox": [ + 58, + 466, + 268, + 458, + 270, + 505, + 161, + 512 + ], + "text": "vida", + "confidence": 0.164 + } + ] + } + ] + }, + { + "page": 2, + "language": "en", + "angle": 1.32, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "in never failing ,", + "words": [ + { + "boundingBox": [ + 1611, + 934, + 1707, + 933, + 1708, + 1147, + 1613, + 1147 + ], + "text": "in", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1753, + 933, + 2132, + 930, + 2133, + 1144, + 1754, + 1146 + ], + "text": "never", + "confidence": 0.999 + }, + { + "boundingBox": [ + 2162, + 930, + 2673, + 927, + 2674, + 1140, + 2164, + 1144 + ], + "text": "failing", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2703, + 926, + 2788, + 926, + 2790, + 1139, + 2705, + 1140 + ], + "text": ",", + "confidence": 0.164 + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json new file mode 100644 index 000000000000..a901d16abba0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "Image": "{binary}" + }, + "responses": { + "202": { + "header": { + "location": "https://{domain}/vision/v3.0/read/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json new file mode 100644 index 000000000000..76dedf25a1d5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "ImageUrl": "{url}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://{domain}/vision/v3.0/read/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md index f4ca36a2eee3..3696b8eb182f 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md @@ -15,6 +15,7 @@ go: batch: - tag: release_2_0 - tag: release_2_1 + - tag: release_3_0 ``` ### Tag: release_2_0 and go @@ -33,4 +34,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_3_0' && $(go) +output-folder: $(go-sdk-folder)/services/preview/cognitiveservices/v3.0-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.md index 4f0c76d6afec..31c01fd4644b 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.md @@ -32,6 +32,14 @@ input-file: - stable/v2.1/Ocr.json ``` +### Release 3.0 +These settings apply only when `--tag=release_3_0` is specified on the command line. + +``` yaml $(tag) == 'release_3_0' +input-file: + - preview/v3.0-preview/Ocr.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -146,6 +154,7 @@ input-file: - $(this-folder)/stable/v2.0/Ocr.json - $(this-folder)/stable/v2.1/ComputerVision.json - $(this-folder)/stable/v2.1/Ocr.json + - $(this-folder)/preview/v3.0-preview/Ocr.json ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md index 8afbaa002def..14bda8dd8dca 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: release_3_2 - tag: release_1_0 - tag: release_2_1 - tag: release_2_2 diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/Face.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/Face.json index ee3b92700a83..c1ffa742a19a 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/Face.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/Face.json @@ -29,7 +29,7 @@ "paths": { "/findsimilars": { "post": { - "description": "Given query face's faceId, to search the similar-looking faces from a faceId array, a face list or a large face list. faceId array contains the faces created by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), which will expire 24 hours after creation. A \"faceListId\" is created by [FaceList - Create](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524b) containing persistedFaceIds that will not expire. And a \"largeFaceListId\" is created by [LargeFaceList - Create](/docs/services/563879b61984550e40cbbe8d/operations/5a157b68d2de3616c086f2cc) containing persistedFaceIds that will also not expire. Depending on the input the returned similar faces list contains faceIds or persistedFaceIds ranked by similarity.\n
Find similar has two working modes, \"matchPerson\" and \"matchFace\". \"matchPerson\" is the default mode that it tries to find faces of the same person as possible by using internal same-person thresholds. It is useful to find a known person's other photos. Note that an empty list will be returned if no faces pass the internal thresholds. \"matchFace\" mode ignores same-person thresholds and returns ranked similar faces anyway, even the similarity is low. It can be used in the cases like searching celebrity-looking faces.\n
The 'recognitionModel' associated with the query face's faceId should be the same as the 'recognitionModel' used by the target faceId array, face list or large face list.\n", + "description": "Given query face's faceId, to search the similar-looking faces from a faceId array, a face list or a large face list. faceId array contains the faces created by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), which will expire 24 hours after creation. A \"faceListId\" is created by [FaceList - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/create) containing persistedFaceIds that will not expire. And a \"largeFaceListId\" is created by [LargeFaceList - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/create) containing persistedFaceIds that will also not expire. Depending on the input the returned similar faces list contains faceIds or persistedFaceIds ranked by similarity.\n
Find similar has two working modes, \"matchPerson\" and \"matchFace\". \"matchPerson\" is the default mode that it tries to find faces of the same person as possible by using internal same-person thresholds. It is useful to find a known person's other photos. Note that an empty list will be returned if no faces pass the internal thresholds. \"matchFace\" mode ignores same-person thresholds and returns ranked similar faces anyway, even the similarity is low. It can be used in the cases like searching celebrity-looking faces.\n
The 'recognitionModel' associated with the query face's faceId should be the same as the 'recognitionModel' used by the target faceId array, face list or large face list.\n", "operationId": "Face_FindSimilar", "parameters": [ { @@ -72,7 +72,7 @@ }, "/group": { "post": { - "description": "Divide candidate faces into groups based on face similarity.
\n* The output is one or more disjointed face groups and a messyGroup. A face group contains faces that have similar looking, often of the same person. Face groups are ranked by group size, i.e. number of faces. Notice that faces belonging to a same person might be split into several groups in the result.\n* MessyGroup is a special face group containing faces that cannot find any similar counterpart face from original faces. The messyGroup will not appear in the result if all faces found their counterparts.\n* Group API needs at least 2 candidate faces and 1000 at most. We suggest to try [Face - Verify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523a) when you only have 2 candidate faces.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same.\n", + "description": "Divide candidate faces into groups based on face similarity.
\n* The output is one or more disjointed face groups and a messyGroup. A face group contains faces that have similar looking, often of the same person. Face groups are ranked by group size, i.e. number of faces. Notice that faces belonging to a same person might be split into several groups in the result.\n* MessyGroup is a special face group containing faces that cannot find any similar counterpart face from original faces. The messyGroup will not appear in the result if all faces found their counterparts.\n* Group API needs at least 2 candidate faces and 1000 at most. We suggest to try [Face - Verify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/verifyfacetoface) when you only have 2 candidate faces.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same.\n", "operationId": "Face_Group", "parameters": [ { @@ -115,7 +115,7 @@ }, "/identify": { "post": { - "description": "1-to-many identification to find the closest matches of the specific query person face from a person group or large person group.\n
For each face in the faceIds array, Face Identify will compute similarities between the query face and all the faces in the person group (given by personGroupId) or large person group (given by largePersonGroupId), and return candidate person(s) for that face ranked by similarity confidence. The person group/large person group should be trained to make it ready for identification. See more in [PersonGroup - Train](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395249) and [LargePersonGroup - Train](/docs/services/563879b61984550e40cbbe8d/operations/599ae2d16ac60f11b48b5aa4).\n
\n \nRemarks:
\n* The algorithm allows more than one face to be identified independently at the same request, but no more than 10 faces.\n* Each person in the person group/large person group could have more than one face, but no more than 248 faces.\n* Higher face image quality means better identification precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Number of candidates returned is restricted by maxNumOfCandidatesReturned and confidenceThreshold. If no person is identified, the returned candidates will be an empty array.\n* Try [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237) when you need to find similar faces from a face list/large face list instead of a person group/large person group.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target person group or large person group.\n", + "description": "1-to-many identification to find the closest matches of the specific query person face from a person group or large person group.\n
For each face in the faceIds array, Face Identify will compute similarities between the query face and all the faces in the person group (given by personGroupId) or large person group (given by largePersonGroupId), and return candidate person(s) for that face ranked by similarity confidence. The person group/large person group should be trained to make it ready for identification. See more in [PersonGroup - Train](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/train) and [LargePersonGroup - Train](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/train).\n
\n \nRemarks:
\n* The algorithm allows more than one face to be identified independently at the same request, but no more than 10 faces.\n* Each person in the person group/large person group could have more than one face, but no more than 248 faces.\n* Higher face image quality means better identification precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Number of candidates returned is restricted by maxNumOfCandidatesReturned and confidenceThreshold. If no person is identified, the returned candidates will be an empty array.\n* Try [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar) when you need to find similar faces from a face list/large face list instead of a person group/large person group.\n* The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target person group or large person group.\n", "operationId": "Face_Identify", "parameters": [ { @@ -467,7 +467,7 @@ } }, "patch": { - "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523e), [PersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523d) or [PersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395245) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.", + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.", "operationId": "PersonGroupPerson_UpdateFace", "parameters": [ { @@ -513,7 +513,7 @@ }, "/persongroups/{personGroupId}": { "put": { - "description": "Create a new person group with specified personGroupId, name, user-provided userData and recognitionModel.\n
A person group is the container of the uploaded person data, including face recognition features.\n
After creation, use [PersonGroup Person - Create](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523c) to add persons into the group, and then call [PersonGroup - Train](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395249) to get this group ready for [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [PersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523d) or [PersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395245) is called.\n
'recognitionModel' should be specified to associate with this person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing person group will use the recognition model that's already associated with the collection. Existing face features in a person group can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [PersonGroup - Create](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395244). All those person groups created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nPerson group quota:\n* Free-tier subscription quota: 1,000 person groups. Each holds up to 1,000 persons.\n* S0-tier subscription quota: 1,000,000 person groups. Each holds up to 10,000 persons.\n* to handle larger scale face identification problem, please consider using [LargePersonGroup](/docs/services/563879b61984550e40cbbe8d/operations/599acdee6ac60f11b48b5a9d).", + "description": "Create a new person group with specified personGroupId, name, user-provided userData and recognitionModel.\n
A person group is the container of the uploaded person data, including face recognition features.\n
After creation, use [PersonGroup Person - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/create) to add persons into the group, and then call [PersonGroup - Train](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/train) to get this group ready for [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/delete) is called.\n
'recognitionModel' should be specified to associate with this person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing person group will use the recognition model that's already associated with the collection. Existing face features in a person group can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [PersonGroup - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/create). All those person groups created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nPerson group quota:\n* Free-tier subscription quota: 1,000 person groups. Each holds up to 1,000 persons.\n* S0-tier subscription quota: 1,000,000 person groups. Each holds up to 10,000 persons.\n* to handle larger scale face identification problem, please consider using [LargePersonGroup](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup).", "operationId": "PersonGroup_Create", "parameters": [ { @@ -576,7 +576,7 @@ } }, "get": { - "description": "Retrieve person group name, userData and recognitionModel. To get person information under this personGroup, use [PersonGroup Person - List](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395241).", + "description": "Retrieve person group name, userData and recognitionModel. To get person information under this personGroup, use [PersonGroup Person - List](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/list).", "operationId": "PersonGroup_Get", "parameters": [ { @@ -764,7 +764,7 @@ }, "/facelists/{faceListId}": { "put": { - "description": "Create an empty face list with user-specified faceListId, name, an optional userData and recognitionModel. Up to 64 face lists are allowed in one subscription.\n
Face list is a list of faces, up to 1,000 faces, and used by [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237).\n
After creation, user should use [FaceList - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395250) to import the faces. No image will be stored. Only the extracted face features are stored on server until [FaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524f) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395244) / [LargePersonGroup](/docs/services/563879b61984550e40cbbe8d/operations/599acdee6ac60f11b48b5a9d) and [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239).\n
Please consider [LargeFaceList](/docs/services/563879b61984550e40cbbe8d/operations/5a157b68d2de3616c086f2cc) when the face number is large. It can support up to 1,000,000 faces.\n
'recognitionModel' should be specified to associate with this face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing face list will use the recognition model that's already associated with the collection. Existing face features in a face list can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [FaceList- Create](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524b). All those face lists created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.", + "description": "Create an empty face list with user-specified faceListId, name, an optional userData and recognitionModel. Up to 64 face lists are allowed in one subscription.\n
Face list is a list of faces, up to 1,000 faces, and used by [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar).\n
After creation, user should use [FaceList - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/addfacefromurl) to import the faces. No image will be stored. Only the extracted face features are stored on server until [FaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/delete) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup) / [LargePersonGroup](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup) and [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify).\n
Please consider [LargeFaceList](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist) when the face number is large. It can support up to 1,000,000 faces.\n
'recognitionModel' should be specified to associate with this face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing face list will use the recognition model that's already associated with the collection. Existing face features in a face list can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [FaceList- Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/create). All those face lists created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.", "operationId": "FaceList_Create", "parameters": [ { @@ -904,7 +904,7 @@ }, "/facelists": { "get": { - "description": "List face lists’ faceListId, name, userData and recognitionModel.
\nTo get face information inside faceList use [FaceList - Get](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524c)\n", + "description": "List face lists’ faceListId, name, userData and recognitionModel.
\nTo get face information inside faceList use [FaceList - Get](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/get)\n", "operationId": "FaceList_List", "parameters": [ { @@ -967,7 +967,7 @@ }, "/persongroups/{personGroupId}/persons/{personId}/persistedfaces": { "post": { - "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523e), [PersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523d) or [PersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395245) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [PersonGroup Person - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523b). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [PersonGroup Person - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "PersonGroupPerson_AddFaceFromUrl", "parameters": [ { @@ -1018,7 +1018,7 @@ }, "/detect": { "post": { - "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239), [Face - Verify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523a), and [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237). The stored face feature(s) will expire and be deleted 24 hours after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure and noise. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239), [Face - Verify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523a), and [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [How to specify a recognition model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'recognition_01': | The default recognition model for [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236). All those faceIds created before 2019 March are bonded with this recognition model. |\n | 'recognition_02': | Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'. |", + "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar). The stored face feature(s) will expire and be deleted 24 hours after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure and noise. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [How to specify a recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'recognition_01': | The default recognition model for [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl). All those faceIds created before 2019 March are bonded with this recognition model. |\n | 'recognition_02': | Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'. |", "operationId": "Face_DetectWithUrl", "parameters": [ { @@ -1080,7 +1080,7 @@ }, "/facelists/{faceListId}/persistedfaces": { "post": { - "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395251) or [FaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524f) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [FaceList - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395250). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/deleteface) or [FaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [FaceList - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "FaceList_AddFaceFromUrl", "parameters": [ { @@ -1440,7 +1440,7 @@ }, "/largepersongroups/{largePersonGroupId}": { "put": { - "description": "Create a new large person group with user-specified largePersonGroupId, name, an optional userData and recognitionModel.\n
A large person group is the container of the uploaded person data, including face recognition feature, and up to 1,000,000\npeople.\n
After creation, use [LargePersonGroup Person - Create](/docs/services/563879b61984550e40cbbe8d/operations/599adcba3a7b9412a4d53f40) to add person into the group, and call [LargePersonGroup - Train](/docs/services/563879b61984550e40cbbe8d/operations/599ae2d16ac60f11b48b5aa4) to get this group ready for [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [LargePersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599ade5c6ac60f11b48b5aa2) or [LargePersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599adc216ac60f11b48b5a9f) is called.\n
'recognitionModel' should be specified to associate with this large person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large person group will use the recognition model that's already associated with the collection. Existing face features in a large person group can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [LargePersonGroup - Create](/docs/services/563879b61984550e40cbbe8d/operations/599acdee6ac60f11b48b5a9d). All those large person groups created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nLarge person group quota:\n* Free-tier subscription quota: 1,000 large person groups.\n* S0-tier subscription quota: 1,000,000 large person groups.", + "description": "Create a new large person group with user-specified largePersonGroupId, name, an optional userData and recognitionModel.\n
A large person group is the container of the uploaded person data, including face recognition feature, and up to 1,000,000\npeople.\n
After creation, use [LargePersonGroup Person - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/create) to add person into the group, and call [LargePersonGroup - Train](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/train) to get this group ready for [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify).\n
No image will be stored. Only the person's extracted face features and userData will be stored on server until [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/delete) is called.\n
'recognitionModel' should be specified to associate with this large person group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large person group will use the recognition model that's already associated with the collection. Existing face features in a large person group can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [LargePersonGroup - Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/create). All those large person groups created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nLarge person group quota:\n* Free-tier subscription quota: 1,000 large person groups.\n* S0-tier subscription quota: 1,000,000 large person groups.", "operationId": "LargePersonGroup_Create", "parameters": [ { @@ -1503,7 +1503,7 @@ } }, "get": { - "description": "Retrieve the information of a large person group, including its name, userData and recognitionModel. This API returns large person group information only, use [LargePersonGroup Person - List](/docs/services/563879b61984550e40cbbe8d/operations/599adda06ac60f11b48b5aa1) instead to retrieve person information under the large person group.\n", + "description": "Retrieve the information of a large person group, including its name, userData and recognitionModel. This API returns large person group information only, use [LargePersonGroup Person - List](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/list) instead to retrieve person information under the large person group.\n", "operationId": "LargePersonGroup_Get", "parameters": [ { @@ -1691,7 +1691,7 @@ }, "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces": { "post": { - "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599ae2966ac60f11b48b5aa3), [LargePersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599ade5c6ac60f11b48b5aa2) or [LargePersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599adc216ac60f11b48b5a9f) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargePersonGroup Person - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/599adf2a3a7b9412a4d53f42). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/deleteface), [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargePersonGroup Person - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "LargePersonGroupPerson_AddFaceFromUrl", "parameters": [ { @@ -1742,7 +1742,7 @@ }, "/largefacelists/{largeFaceListId}": { "put": { - "description": "Create an empty large face list with user-specified largeFaceListId, name, an optional userData and recognitionModel.\n
Large face list is a list of faces, up to 1,000,000 faces, and used by [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237).\n
After creation, user should use [LargeFaceList Face - Add](/docs/services/563879b61984550e40cbbe8d/operations/5a158c10d2de3616c086f2d3) to import the faces and [LargeFaceList - Train](/docs/services/563879b61984550e40cbbe8d/operations/5a158422d2de3616c086f2d1) to make it ready for [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237). No image will be stored. Only the extracted face features are stored on server until [LargeFaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/5a1580d5d2de3616c086f2cd) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395244) / [LargePersonGroup](/docs/services/563879b61984550e40cbbe8d/operations/599acdee6ac60f11b48b5a9d) and [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239).\n
'recognitionModel' should be specified to associate with this large face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large face list will use the recognition model that's already associated with the collection. Existing face features in a large face list can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [LargeFaceList- Create](/docs/services/563879b61984550e40cbbe8d/operations/5a157b68d2de3616c086f2cc). All those large face lists created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nLarge face list quota:\n* Free-tier subscription quota: 64 large face lists.\n* S0-tier subscription quota: 1,000,000 large face lists.", + "description": "Create an empty large face list with user-specified largeFaceListId, name, an optional userData and recognitionModel.\n
Large face list is a list of faces, up to 1,000,000 faces, and used by [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar).\n
After creation, user should use [LargeFaceList Face - Add](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/addfacefromurl) to import the faces and [LargeFaceList - Train](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/train) to make it ready for [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar). No image will be stored. Only the extracted face features are stored on server until [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/delete) is called.\n
Find Similar is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use [PersonGroup](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup) / [LargePersonGroup](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup) and [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify).\n
'recognitionModel' should be specified to associate with this large face list. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing large face list will use the recognition model that's already associated with the collection. Existing face features in a large face list can't be updated to features extracted by another version of recognition model.\n* 'recognition_01': The default recognition model for [LargeFaceList- Create](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/create). All those large face lists created before 2019 March are bonded with this recognition model.\n* 'recognition_02': Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'.\n\nLarge face list quota:\n* Free-tier subscription quota: 64 large face lists.\n* S0-tier subscription quota: 1,000,000 large face lists.", "operationId": "LargeFaceList_Create", "parameters": [ { @@ -1915,7 +1915,7 @@ }, "/largefacelists": { "get": { - "description": "List large face lists’ information of largeFaceListId, name, userData and recognitionModel.
\nTo get face information inside largeFaceList use [LargeFaceList Face - Get](/docs/services/563879b61984550e40cbbe8d/operations/5a158cf2d2de3616c086f2d5)
\n* Large face lists are stored in alphabetical order of largeFaceListId.\n* \"start\" parameter (string, optional) is a user-provided largeFaceListId value that returned entries have larger ids by string comparison. \"start\" set to empty to indicate return from the first item.\n* \"top\" parameter (int, optional) specifies the number of entries to return. A maximal of 1000 entries can be returned in one call. To fetch more, you can specify \"start\" with the last returned entry’s Id of the current call.\n
\nFor example, total 5 large person lists: \"list1\", ..., \"list5\".\n
\"start=&top=\" will return all 5 lists.\n
\"start=&top=2\" will return \"list1\", \"list2\".\n
\"start=list2&top=3\" will return \"list3\", \"list4\", \"list5\".\n", + "description": "List large face lists’ information of largeFaceListId, name, userData and recognitionModel.
\nTo get face information inside largeFaceList use [LargeFaceList Face - Get](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/getface)
\n* Large face lists are stored in alphabetical order of largeFaceListId.\n* \"start\" parameter (string, optional) is a user-provided largeFaceListId value that returned entries have larger ids by string comparison. \"start\" set to empty to indicate return from the first item.\n* \"top\" parameter (int, optional) specifies the number of entries to return. A maximal of 1000 entries can be returned in one call. To fetch more, you can specify \"start\" with the last returned entry’s Id of the current call.\n
\nFor example, total 5 large person lists: \"list1\", ..., \"list5\".\n
\"start=&top=\" will return all 5 lists.\n
\"start=&top=2\" will return \"list1\", \"list2\".\n
\"start=list2&top=3\" will return \"list3\", \"list4\", \"list5\".\n", "operationId": "LargeFaceList_List", "parameters": [ { @@ -2083,7 +2083,7 @@ }, "/largefacelists/{largeFaceListId}/persistedfaces": { "post": { - "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](/docs/services/563879b61984550e40cbbe8d/operations/5a158c8ad2de3616c086f2d4) or [LargeFaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/5a1580d5d2de3616c086f2cd) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargeFaceList - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/5a158c10d2de3616c086f2d3). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", + "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/deleteface) or [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargeFaceList - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", "operationId": "LargeFaceList_AddFaceFromUrl", "parameters": [ { @@ -2495,7 +2495,7 @@ }, "/detect?overload=stream": { "post": { - "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239), [Face - Verify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523a), and [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237). The stored face feature(s) will expire and be deleted 24 hours after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure and noise. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239), [Face - Verify](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523a), and [Face - Find Similar](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395237) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [How to specify a recognition model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'recognition_01': | The default recognition model for [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236). All those faceIds created before 2019 March are bonded with this recognition model. |\n | 'recognition_02': | Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'. |", + "description": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.
\n* No image will be stored. Only the extracted face feature will be stored on server. The faceId is an identifier of the face feature and will be used in [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar). The stored face feature(s) will expire and be deleted 24 hours after the original detection call.\n* Optional parameters include faceId, landmarks, and attributes. Attributes include age, gender, headPose, smile, facialHair, glasses, emotion, hair, makeup, occlusion, accessories, blur, exposure and noise. Some of the results returned for specific attributes may not be highly accurate.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n* For optimal results when querying [Face - Identify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/identify), [Face - Verify](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/verifyfacetoface), and [Face - Find Similar](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/findsimilar) ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\n* Different 'recognitionModel' values are provided. If follow-up operations like Verify, Identify, Find Similar are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to [How to specify a recognition model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-recognition-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'recognition_01': | The default recognition model for [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl). All those faceIds created before 2019 March are bonded with this recognition model. |\n | 'recognition_02': | Recognition model released in 2019 March. 'recognition_02' is recommended since its overall accuracy is improved compared with 'recognition_01'. |", "operationId": "Face_DetectWithStream", "parameters": [ { @@ -2557,7 +2557,7 @@ }, "/persongroups/{personGroupId}/persons/{personId}/persistedfaces?overload=stream": { "post": { - "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523e), [PersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523d) or [PersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395245) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [PersonGroup Person - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039523b). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a person into a person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [PersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/deleteface), [PersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/delete) or [PersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [PersonGroup Person - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/persongroupperson/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "PersonGroupPerson_AddFaceFromStream", "parameters": [ { @@ -2608,7 +2608,7 @@ }, "/facelists/{faceListId}/persistedfaces?overload=stream": { "post": { - "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395251) or [FaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f3039524f) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [FaceList - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395250). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a specified face list, up to 1,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [FaceList - Delete Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/deleteface) or [FaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better detection and recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [FaceList - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/facelist/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "FaceList_AddFaceFromStream", "parameters": [ { @@ -2656,7 +2656,7 @@ }, "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces?overload=stream": { "post": { - "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599ae2966ac60f11b48b5aa3), [LargePersonGroup Person - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599ade5c6ac60f11b48b5aa2) or [LargePersonGroup - Delete](/docs/services/563879b61984550e40cbbe8d/operations/599adc216ac60f11b48b5a9f) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargePersonGroup Person - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/599adf2a3a7b9412a4d53f42). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", + "description": "Add a face to a person into a large person group for face identification or verification. To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargePersonGroup PersonFace - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/deleteface), [LargePersonGroup Person - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/delete) or [LargePersonGroup - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroup/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* Each person entry can hold up to 248 faces.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargePersonGroup Person - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/largepersongroupperson/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |", "operationId": "LargePersonGroupPerson_AddFaceFromStream", "parameters": [ { @@ -2707,7 +2707,7 @@ }, "/largefacelists/{largeFaceListId}/persistedfaces?overload=stream": { "post": { - "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](/docs/services/563879b61984550e40cbbe8d/operations/5a158c8ad2de3616c086f2d4) or [LargeFaceList - Delete](/docs/services/563879b61984550e40cbbe8d/operations/5a1580d5d2de3616c086f2cd) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395236), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/en-us/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargeFaceList - Add Face](/docs/services/563879b61984550e40cbbe8d/operations/5a158c10d2de3616c086f2d3). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", + "description": "Add a face to a specified large face list, up to 1,000,000 faces.\n
To deal with an image contains multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature will be stored on server until [LargeFaceList Face - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/deleteface) or [LargeFaceList - Delete](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/delete) is called.\n
Note persistedFaceId is different from faceId generated by [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl).\n* Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.\n* JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n* \"targetFace\" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided \"targetFace\" rectangle is not returned from [Face - Detect](https://docs.microsoft.com/rest/api/cognitiveservices/face/face/detectwithurl), there’s no guarantee to detect and add the face successfully.\n* Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.\n* Adding/deleting faces to/from a same face list are processed sequentially and to/from different face lists are in parallel.\n* The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n* Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [How to specify a detection model](https://docs.microsoft.com/azure/cognitive-services/face/face-api-how-to-topics/specify-detection-model)\n | Model | Recommended use-case(s) |\n | ---------- | -------- |\n | 'detection_01': | The default detection model for [LargeFaceList - Add Face](https://docs.microsoft.com/rest/api/cognitiveservices/face/largefacelist/addfacefromurl). Recommend for near frontal face detection. For scenarios with exceptionally large angle (head-pose) faces, occluded faces or wrong image orientation, the faces in such cases may not be detected. |\n | 'detection_02': | Detection model released in 2019 May with improved accuracy especially on small, side and blurry faces. |\n\nQuota:\n* Free-tier subscription quota: 1,000 faces per large face list.\n* S0-tier subscription quota: 1,000,000 faces per large face list.", "operationId": "LargeFaceList_AddFaceFromStream", "parameters": [ { diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddFaceListFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddFaceListFaceFromUrl.json index 5cf854fce2cd..e54883e45ff6 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddFaceListFaceFromUrl.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddFaceListFaceFromUrl.json @@ -11,7 +11,9 @@ 100, 100 ], - "ImageUrl": "{Image url}", + "ImageUrl": { + "url": "{Image Url here}" + }, "detectionModel": "detection_01" }, "responses": { diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargeFaceListFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargeFaceListFaceFromUrl.json index 03b6f1a74f25..cfc48557fa4f 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargeFaceListFaceFromUrl.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargeFaceListFaceFromUrl.json @@ -11,7 +11,9 @@ 100, 100 ], - "ImageUrl": "{Image url}", + "ImageUrl": { + "url": "{Image Url here}" + }, "detectionModel": "detection_01" }, "responses": { diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargePersonGroupPersonFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargePersonGroupPersonFaceFromUrl.json index 70a604209ef7..b8a1e3fc5d82 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargePersonGroupPersonFaceFromUrl.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddLargePersonGroupPersonFaceFromUrl.json @@ -12,7 +12,9 @@ 100, 100 ], - "ImageUrl": "{Image url}", + "ImageUrl": { + "url": "{Image Url here}" + }, "detectionModel": "detection_01" }, "responses": { diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddPersonGroupPersonFaceFromUrl.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddPersonGroupPersonFaceFromUrl.json index 99c2af7df29d..a5e102adc5cb 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddPersonGroupPersonFaceFromUrl.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/AddPersonGroupPersonFaceFromUrl.json @@ -12,7 +12,9 @@ 100, 100 ], - "ImageUrl": "{Image url}", + "ImageUrl": { + "url": "{Image Url here}" + }, "detectionModel": "detection_01" }, "responses": { diff --git a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/DetectWithUrl.json b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/DetectWithUrl.json index 3242cb9a4b7f..693778906f3c 100644 --- a/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/DetectWithUrl.json +++ b/specification/cognitiveservices/data-plane/Face/stable/v1.0/examples/DetectWithUrl.json @@ -19,7 +19,9 @@ "exposure", "noise" ], - "ImageUrl": "{Image Url here}", + "ImageUrl": { + "url": "{Image Url here}" + }, "recognitionModel": "recognition_01", "returnRecognitionModel": true, "detectionModel": "detection_01" diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index 44eaef160894..b52f177eb964 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -38,6 +38,9 @@ "consumes": [ "application/json" ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "trainRequest", @@ -74,52 +77,6 @@ "$ref": "./examples/TrainBatchWithSubFolders.json" } } - }, - "get": { - "summary": "List Custom Models", - "description": "Get information about all custom models", - "operationId": "GetCustomModels", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "name": "op", - "in": "query", - "description": "Specify whether to return summary or full list of models.", - "required": false, - "default": "full", - "type": "string", - "enum": [ - "full", - "summary" - ] - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Models" - } - }, - "default": { - "description": "Response entity accompanying non-successful responses containing additional details about the error.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "modelList" - }, - "x-ms-examples": { - "List custom models": { - "$ref": "./examples/GetModels.json" - } - } } }, "/custom/models/{modelId}": { @@ -218,6 +175,9 @@ "image/png", "image/tiff" ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "modelId", @@ -261,7 +221,8 @@ "Analyze form with custom model": { "$ref": "./examples/AnalyzeBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/custom/models/{modelId}/analyzeResults/{resultId}": { @@ -312,6 +273,149 @@ } } }, + "/custom/models/{modelId}/copy": { + "post": { + "summary": "Copy Custom Model", + "description": "Copy custom model stored in this resource (the source) to user specified target Form Recognizer resource.", + "operationId": "CopyCustomModel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "copyRequest", + "in": "body", + "description": "Copy request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CopyRequest" + } + } + ], + "responses": { + "202": { + "description": "Copy request is queued successfully.", + "headers": { + "Operation-Location": { + "type": "string", + "description": "URL containing the resultId used to track the progress and obtain the result of the copy operation." + } + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModel.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/custom/models/{modelId}/copyResults/{resultId}": { + "get": { + "summary": "Get Custom Model Copy Result", + "description": "Obtain current status and the result of a custom model copy operation.", + "operationId": "GetCustomModelCopyResult", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "modelId", + "in": "path", + "description": "Model identifier.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "resultId", + "in": "path", + "description": "Copy operation result identifier.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CopyOperationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get copy custom model result": { + "$ref": "./examples/CopyOperationResult.json" + }, + "Get copy custom model result with failures": { + "$ref": "./examples/CopyOperationResultWithErrors.json" + } + } + } + }, + "/custom/models/copyAuthorization": { + "post": { + "summary": "Generate Copy Authorization", + "description": "Generate authorization to copy a model into the target Form Recognizer resource.", + "operationId": "GenerateModelCopyAuthorization", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [], + "responses": { + "201": { + "description": "Copy request is authorized successfully.", + "headers": { + "Location": { + "type": "string", + "description": "Location and ID of the model being copied. The status of model copy is specified in the status property at the model location." + } + }, + "schema": { + "$ref": "#/definitions/CopyAuthorizationResult" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy custom model": { + "$ref": "./examples/CopyModelAuthorization.json" + } + } + } + }, "/prebuilt/receipt/analyze": { "post": { "summary": "Analyze Receipt", @@ -362,7 +466,8 @@ "Analyze receipt": { "$ref": "./examples/ReceiptsBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/prebuilt/receipt/analyzeResults/{resultId}": { @@ -446,7 +551,8 @@ "Analyze layout": { "$ref": "./examples/LayoutBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/layout/analyzeResults/{resultId}": { @@ -490,6 +596,96 @@ } } }, + "x-ms-paths": { + "/custom/models?op=full": { + "get": { + "summary": "List Custom Models", + "description": "Get information about all custom models", + "operationId": "ListCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "full" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "modelList" + }, + "x-ms-examples": { + "List custom models": { + "$ref": "./examples/GetModels.json" + } + } + } + }, + "/custom/models?op=summary": { + "get": { + "summary": "Get Custom Models", + "description": "Get information about all custom models", + "operationId": "GetCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "summary" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get models summary": { + "$ref": "./examples/GetModelsSummary.json" + } + } + } + } + }, "definitions": { "OperationStatus": { "type": "string", @@ -506,6 +702,111 @@ }, "x-nullable": false }, + "CopyAuthorizationResult": { + "description": "Request parameter that contains authorization claims for copy operation.", + "required": [ + "modelId", + "accessToken", + "expirationDateTimeTicks" + ], + "type": "object", + "properties": { + "modelId": { + "description": "Model identifier.", + "type": "string" + }, + "accessToken": { + "description": "Token claim used to authorize the request.", + "type": "string" + }, + "expirationDateTimeTicks": { + "description": "The time when the access token expires. The date is represented as the number of seconds from 1970-01-01T0:0:0Z UTC until the expiration time.", + "type": "integer", + "format": "int64" + } + } + }, + "CopyRequest": { + "description": "Request parameter to copy an existing custom model from the source resource to a target resource referenced by the resource ID.", + "required": [ + "targetResourceId", + "targetResourceRegion", + "copyAuthorization" + ], + "type": "object", + "properties": { + "targetResourceId": { + "description": "Azure Resource Id of the target Form Recognizer resource where the model is copied to.", + "maxLength": 1024, + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.CognitiveServices/accounts/[^/]*$", + "x-ms-azure-resource": true + }, + "targetResourceRegion": { + "description": "Location of the target Azure resource. A valid Azure region name supported by Cognitive Services.", + "type": "string", + "pattern": "^[a-z0-9]+$", + "minLength": 1, + "maxLength": 24 + }, + "copyAuthorization": { + "description": "Entity that encodes claims to authorize the copy request.", + "$ref": "#/definitions/CopyAuthorizationResult" + } + } + }, + "CopyOperationResult": { + "description": "Status and result of the queued copy operation.", + "type": "object", + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ], + "properties": { + "status": { + "description": "Operation status.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the copy operation was submitted.", + "type": "string", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated.", + "type": "string", + "x-nullable": false + }, + "copyResult": { + "description": "Results of the copy operation.", + "$ref": "#/definitions/CopyResult" + } + } + }, + "CopyResult": { + "description": "Custom model copy result.", + "type": "object", + "required": [ + "modelId" + ], + "properties": { + "modelId": { + "description": "Identifier of the target model.", + "type": "string", + "format": "uuid" + }, + "errors": { + "description": "Errors returned during the copy operation.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + } + } + }, "AnalyzeOperationResult": { "description": "Status and result of the queued analyze operation.", "type": "object", @@ -626,10 +927,6 @@ } } }, - "SourceDataStream": { - "description": "A PDF document, image (jpg/png/tiff), or JSON file to analyze.", - "type": "object" - }, "ModelInfo": { "description": "Basic custom model information.", "type": "object", @@ -693,7 +990,7 @@ "x-nullable": false }, "limit": { - "description": "Max number of models that can be trained for this subscription.", + "description": "Max number of models that can be trained for this account.", "type": "integer", "x-nullable": false }, @@ -1218,6 +1515,7 @@ }, "DocumentResult": { "description": "A set of extracted fields corresponding to the input document.", + "type": "object", "required": [ "docType", "pageRange", @@ -1265,14 +1563,14 @@ }, "valueDate": { "description": "Date value.", + "format": "date", "type": "string", - "format": "date-time", "x-nullable": false }, "valueTime": { "description": "Time value.", + "format": "time", "type": "string", - "format": "date-time", "x-nullable": false }, "valuePhoneNumber": { @@ -1373,7 +1671,7 @@ "x-ms-parameter-location": "method", "in": "body", "schema": { - "$ref": "#/definitions/SourceDataStream" + "$ref": "#/definitions/SourcePath" } } } diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModel.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModel.json new file mode 100644 index 000000000000..52ffef3e3811 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "body": {}, + "copyRequest": { + "targetResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{resourceName}", + "targetResourceRegion": "westus2", + "copyAuthorization": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 637190189980000000 + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "{endpoint}/formrecognizer/v2.0-preview/custom/models/{modelId}/copyResults/{resultId}" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModelAuthorization.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModelAuthorization.json new file mode 100644 index 000000000000..967237ea3a1c --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyModelAuthorization.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "body": {} + }, + "responses": { + "201": { + "headers": { + "Location": "{endpoint}/formrecognizer/v2.0-preview/custom/models/{modelId}" + }, + "body": { + "modelId": "{modelId}", + "accessToken": "{accessToken}", + "expirationDateTimeTicks": 637190189980000000 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResult.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResult.json new file mode 100644 index 000000000000..f7b7b1163884 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResult.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResultWithErrors.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResultWithErrors.json new file mode 100644 index 000000000000..853dd73e595e --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/CopyOperationResultWithErrors.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "modelId": "{modelId}", + "resultId": "{resultId}", + "body": {} + }, + "responses": { + "200": { + "body": { + "status": "failed", + "createdDateTime": "2020-01-01T00:00:00Z", + "lastUpdatedDateTime": "2020-01-01T00:01:00Z", + "copyResult": { + "modelId": "{modelId}", + "errors": [ + { + "code": "ResourceResolverError", + "message": "{ErrorMessage}" + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json index 1ebb45e86268..9df92cccfdc4 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json @@ -9,11 +9,6 @@ "responses": { "200": { "body": { - "summary": { - "count": 5, - "limit": 5000, - "lastUpdatedDateTime": "2019-05-01T10:53:21Z" - }, "modelList": [ { "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json new file mode 100644 index 000000000000..507495b78206 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "summary", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 5, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json index 3e3f69a10681..02fe2bdb6ec7 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json @@ -303,6 +303,9 @@ { "$ref": "#/parameters/VersionIdInPath" }, + { + "$ref": "#/parameters/EnableNestedChildren" + }, { "name": "exampleLabelObject", "in": "body", @@ -351,6 +354,9 @@ { "$ref": "#/parameters/VersionIdInPath" }, + { + "$ref": "#/parameters/EnableNestedChildren" + }, { "name": "exampleLabelObjectArray", "in": "body", @@ -408,6 +414,9 @@ }, { "$ref": "#/parameters/TakeInPath" + }, + { + "$ref": "#/parameters/EnableNestedChildren" } ], "responses": { @@ -2342,6 +2351,9 @@ }, { "$ref": "#/parameters/TakeInPath" + }, + { + "$ref": "#/parameters/EnableNestedChildren" } ], "responses": { @@ -2389,6 +2401,9 @@ }, { "$ref": "#/parameters/TakeInPath" + }, + { + "$ref": "#/parameters/EnableNestedChildren" } ], "responses": { @@ -3413,168 +3428,6 @@ } } }, - "/apps/{appId}/permissions": { - "get": { - "description": "Gets the list of user emails that have permissions to access your application.", - "operationId": "Permissions_List", - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - } - ], - "responses": { - "200": { - "description": "The list includes a single owner. All collaborators are listed in the emails array.", - "schema": { - "$ref": "#/definitions/UserAccessList" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Get Application User Access List": { - "$ref": "./examples/permissions/SuccessfulGetApplicationUserAccessListRequest.json" - } - } - }, - "post": { - "description": "Adds a user to the allowed list of users to access this LUIS application. Users are added using their email address.", - "operationId": "Permissions_Add", - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "name": "userToAdd", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/UserCollaborator" - }, - "description": "A model containing the user's email address." - } - ], - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "Successful operation.", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Add User To Access List": { - "$ref": "./examples/permissions/SuccessfulAddUserToAccessListRequest.json" - } - } - }, - "delete": { - "description": "Removes a user from the allowed list of users to access this LUIS application. Users are removed using their email address.", - "operationId": "Permissions_Delete", - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "name": "userToDelete", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/UserCollaborator" - }, - "description": "A model containing the user's email address." - } - ], - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "Successful operation.", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Remove User From Access List": { - "$ref": "./examples/permissions/SuccessfulRemoveUserFromAccessListRequest.json" - } - } - }, - "put": { - "description": "Replaces the current user access list with the new list sent in the body. If an empty list is sent, all access to other users will be removed.", - "operationId": "Permissions_Update", - "parameters": [ - { - "$ref": "#/parameters/AppIdInPath" - }, - { - "name": "collaborators", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CollaboratorsArray" - }, - "description": "A model containing a list of user email addresses." - } - ], - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "Successful operation.", - "schema": { - "$ref": "#/definitions/OperationStatus" - } - }, - "default": { - "description": "Error Response.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "produces": [ - "application/json" - ], - "x-ms-examples": { - "Successful Replaces Users From Access List": { - "$ref": "./examples/permissions/SuccessfulReplacesUsersFromAccessListRequest.json" - } - } - } - }, "/apps/{appId}/endpoints": { "get": { "description": "Returns the available endpoint deployment regions and URLs.", @@ -7634,6 +7487,9 @@ { "$ref": "#/parameters/BearerAuthPath" }, + { + "$ref": "#/parameters/ArmTokenParamter" + }, { "name": "azureAccountInfoObject", "in": "body", @@ -7679,6 +7535,9 @@ }, { "$ref": "#/parameters/BearerAuthPath" + }, + { + "$ref": "#/parameters/ArmTokenParamter" } ], "responses": { @@ -7715,6 +7574,9 @@ { "$ref": "#/parameters/BearerAuthPath" }, + { + "$ref": "#/parameters/ArmTokenParamter" + }, { "name": "azureAccountInfoObject", "in": "body", @@ -7759,6 +7621,9 @@ "parameters": [ { "$ref": "#/parameters/BearerAuthPath" + }, + { + "$ref": "#/parameters/ArmTokenParamter" } ], "responses": { @@ -7862,74 +7727,340 @@ } } }, - "definitions": { - "EntityLabelObject": { - "description": "Defines the entity type and position of the extracted entity within the example.", - "type": "object", - "required": [ - "entityName", - "startCharIndex", - "endCharIndex" - ], - "properties": { - "entityName": { - "description": "The entity type.", - "type": "string" - }, - "startCharIndex": { - "description": "The index within the utterance where the extracted entity starts.", - "type": "integer" - }, - "endCharIndex": { - "description": "The index within the utterance where the extracted entity ends.", - "type": "integer" - }, - "role": { - "description": "The role the entity plays in the utterance.", - "type": "string" - } - } - }, - "ApplicationCreateObject": { - "description": "Properties for creating a new LUIS Application", - "type": "object", - "required": [ - "culture", - "name" - ], - "properties": { - "culture": { - "description": "The culture for the new application. It is the language that your app understands and speaks. E.g.: \"en-us\". Note: the culture cannot be changed after the app is created.", - "type": "string" - }, - "domain": { - "description": "The domain for the new application. Optional. E.g.: Comics.", - "type": "string" - }, - "description": { - "description": "Description of the new application. Optional.", - "type": "string" - }, - "initialVersionId": { - "description": "The initial version ID. Optional. Default value is: \"0.1\"", - "type": "string" - }, - "usageScenario": { - "description": "Defines the scenario for the new application. Optional. E.g.: IoT.", - "type": "string" + "x-ms-paths": { + "/apps/import?JsonVersion=V2": { + "post": { + "description": "Imports an application to LUIS, the application's structure is included in the request body.", + "operationId": "Apps_ImportV2App", + "parameters": [ + { + "name": "appName", + "in": "query", + "description": "The application name to create. If not specified, the application name will be read from the imported object. If the application name already exists, an error is returned.", + "type": "string" + }, + { + "name": "luisAppV2", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LuisAppV2" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "201": { + "description": "The ID of the imported application.", + "x-nullable": false, + "schema": { + "$ref": "#/definitions/GuidResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } }, - "name": { - "description": "The name for the new application.", - "type": "string" + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/apps/SuccessfulImportV2ApplicationRequest.json" + } } } }, - "PrebuiltDomainCreateBaseObject": { - "description": "A model object containing the name of the custom prebuilt entity and the name of the domain to which this model belongs.", - "type": "object", - "properties": { - "domainName": { - "description": "The domain name.", + "/apps/import?format=lu": { + "post": { + "description": "Imports an application to LUIS, the application's structure is included in the request body.", + "operationId": "Apps_ImportLuFormat", + "parameters": [ + { + "name": "appName", + "in": "query", + "description": "The application name to create. If not specified, the application name will be read from the imported object. If the application name already exists, an error is returned.", + "type": "string" + }, + { + "name": "luisAppLu", + "in": "body", + "required": true, + "schema": { + "type": "string" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "text/plain" + ], + "responses": { + "201": { + "description": "The ID of the imported application.", + "x-nullable": false, + "schema": { + "$ref": "#/definitions/GuidResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/apps/SuccessfulImportLuApplicationRequest.json" + } + } + } + }, + "/apps/{appId}/versions/import?JsonVersion=V2": { + "post": { + "description": "Imports a new version into a LUIS application.", + "operationId": "Versions_ImportV2App", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "name": "versionId", + "in": "query", + "description": "The new versionId to import. If not specified, the versionId will be read from the imported object.", + "type": "string" + }, + { + "name": "luisAppV2", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LuisAppV2" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "201": { + "description": "The created application version.", + "schema": { + "$ref": "#/definitions/VersionResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/versions/SuccessfulImportV2ApplicationVersionRequest.json" + } + } + } + }, + "/apps/{appId}/versions/import?format=lu": { + "post": { + "description": "Imports a new version into a LUIS application.", + "operationId": "Versions_ImportLuFormat", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "name": "versionId", + "in": "query", + "description": "The new versionId to import. If not specified, the versionId will be read from the imported object.", + "type": "string" + }, + { + "name": "luisAppLu", + "in": "body", + "required": true, + "schema": { + "type": "string" + }, + "description": "An LU representing the LUIS application structure." + } + ], + "consumes": [ + "text/plain" + ], + "responses": { + "201": { + "description": "The created application version.", + "schema": { + "$ref": "#/definitions/VersionResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/versions/SuccessfulImportLuApplicationVersionRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/export?format=lu": { + "get": { + "description": "Exports a LUIS application to text format.", + "operationId": "Versions_ExportLuFormat", + "parameters": [ + { + "in": "query", + "name": "format", + "required": true, + "description": "Lu format extension", + "type": "string", + "enum": [ + "lu" + ] + }, + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + } + ], + "responses": { + "200": { + "description": "The LUIS application structure in LU format.", + "schema": { + "description": "The LUIS application structure in LU format.", + "type": "object", + "format": "file" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/octet-stream" + ], + "x-ms-examples": { + "Successful Export Application Version": { + "$ref": "./examples/versions/SuccessfulExportLuApplicationVersionRequest.json" + } + } + } + } + }, + "definitions": { + "EntityLabelObject": { + "description": "Defines the entity type and position of the extracted entity within the example.", + "type": "object", + "required": [ + "entityName", + "startCharIndex", + "endCharIndex" + ], + "properties": { + "entityName": { + "description": "The entity type.", + "type": "string" + }, + "startCharIndex": { + "description": "The index within the utterance where the extracted entity starts.", + "type": "integer" + }, + "endCharIndex": { + "description": "The index within the utterance where the extracted entity ends.", + "type": "integer" + }, + "role": { + "description": "The role the entity plays in the utterance.", + "type": "string" + }, + "children": { + "description": "The identified entities within the example utterance.", + "items": { + "type": "object", + "$ref": "#/definitions/EntityLabelObject" + }, + "type": "array", + "example": [ + { + "entityName": "child", + "startCharIndex": 0, + "endCharIndex": 0, + "children": [] + } + ] + } + } + }, + "ApplicationCreateObject": { + "description": "Properties for creating a new LUIS Application", + "type": "object", + "required": [ + "culture", + "name" + ], + "properties": { + "culture": { + "description": "The culture for the new application. It is the language that your app understands and speaks. E.g.: \"en-us\". Note: the culture cannot be changed after the app is created.", + "type": "string" + }, + "domain": { + "description": "The domain for the new application. Optional. E.g.: Comics.", + "type": "string" + }, + "description": { + "description": "Description of the new application. Optional.", + "type": "string" + }, + "initialVersionId": { + "description": "The initial version ID. Optional. Default value is: \"0.1\"", + "type": "string" + }, + "usageScenario": { + "description": "Defines the scenario for the new application. Optional. E.g.: IoT.", + "type": "string" + }, + "name": { + "description": "The name for the new application.", + "type": "string" + } + } + }, + "PrebuiltDomainCreateBaseObject": { + "description": "A model object containing the name of the custom prebuilt entity and the name of the domain to which this model belongs.", + "type": "object", + "properties": { + "domainName": { + "description": "The domain name.", "type": "string" } } @@ -8057,6 +8188,21 @@ "role": { "description": "The role the entity plays in the utterance.", "type": "string" + }, + "children": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/JSONEntity" + }, + "example": [ + { + "entity": "child1", + "startPos": 0, + "endPos": 0, + "children": [] + } + ] } } }, @@ -8576,6 +8722,30 @@ } } }, + "HierarchicalModelV2": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "children": { + "items": { + "type": "string" + }, + "type": "array" + }, + "inherits": { + "type": "object", + "$ref": "#/definitions/PrebuiltDomainObject" + }, + "roles": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "ApplicationPublishObject": { "description": "Object model for publishing a specific application version.", "type": "object", @@ -8591,6 +8761,121 @@ } } }, + "LuisAppV2": { + "description": "Exported Model - An exported LUIS Application.", + "additionalProperties": true, + "type": "object", + "properties": { + "luis_schema_version": { + "description": "Luis schema deserialization version.", + "type": "string" + }, + "name": { + "description": "The name of the application.", + "type": "string" + }, + "versionId": { + "description": "The version ID of the application that was exported.", + "type": "string" + }, + "desc": { + "description": "The description of the application.", + "type": "string" + }, + "culture": { + "description": "The culture of the application. E.g.: en-us.", + "type": "string" + }, + "intents": { + "description": "List of intents.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "entities": { + "description": "List of entities.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "closedLists": { + "description": "List of list entities.", + "items": { + "type": "object", + "$ref": "#/definitions/ClosedList" + }, + "type": "array" + }, + "composites": { + "description": "List of composite entities.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "patternAnyEntities": { + "description": "List of Pattern.Any entities.", + "items": { + "type": "object", + "$ref": "#/definitions/PatternAny" + }, + "type": "array" + }, + "regex_entities": { + "description": "List of regular expression entities.", + "items": { + "type": "object", + "$ref": "#/definitions/RegexEntity" + }, + "type": "array" + }, + "prebuiltEntities": { + "description": "List of prebuilt entities.", + "items": { + "type": "object", + "$ref": "#/definitions/PrebuiltEntity" + }, + "type": "array" + }, + "regex_features": { + "description": "List of pattern features.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONRegexFeature" + }, + "type": "array" + }, + "model_features": { + "description": "List of model features.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONModelFeature" + }, + "type": "array" + }, + "patterns": { + "description": "List of patterns.", + "items": { + "type": "object", + "$ref": "#/definitions/PatternRule" + }, + "type": "array" + }, + "utterances": { + "description": "List of example utterances.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONUtterance" + }, + "type": "array" + } + } + }, "LuisApp": { "description": "Exported Model - An exported LUIS Application.", "additionalProperties": true, @@ -8877,6 +9162,21 @@ "type": "string", "format": "uuid", "description": "The role id for the predicted entity." + }, + "children": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/EntityLabel" + }, + "example": [ + { + "entityName": "child", + "startTokenIndex": 0, + "endTokenIndex": 0, + "children": [] + } + ] } }, "required": [ @@ -8924,6 +9224,21 @@ "phrase": { "type": "string", "description": "The actual token(s) that comprise the entity." + }, + "children": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/EntityPrediction" + }, + "example": [ + { + "entityName": "child", + "startTokenIndex": 0, + "endTokenIndex": 0, + "phrase": "string" + } + ] } } }, @@ -10203,6 +10518,9 @@ "featureName": { "type": "string", "description": "The name of the feature used." + }, + "isRequired": { + "type": "boolean" } } }, @@ -10430,6 +10748,14 @@ "type": "string", "x-ms-parameter-location": "method" }, + "ArmTokenParamter": { + "in": "header", + "name": "ArmToken", + "required": false, + "description": "The custom arm token header to use; containing the user's ARM token used to validate azure accounts information.", + "type": "string", + "x-ms-parameter-location": "method" + }, "Endpoint": { "name": "Endpoint", "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", @@ -10438,6 +10764,14 @@ "type": "string", "in": "path", "x-ms-skip-url-encoding": true + }, + "EnableNestedChildren": { + "name": "enableNestedChildren", + "in": "query", + "type": "boolean", + "default": false, + "description": "Toggles nested/flat format", + "x-ms-parameter-location": "method" } } } diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json new file mode 100644 index 000000000000..c04e10f1321a --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appName": "Test LUIS App", + "luisAppLu": "> LUIS application information\r\n> !# @app.name = Json 600 App\r\n> !# @app.desc = Json 600 App\r\n> !# @app.versionId = 0.1\r\n> !# @app.culture = en-us\r\n> !# @app.luis_schema_version = 6.0.0\r\n\r\n\r\n> # Intent definitions\r\n\r\n> !# @intent.inherits = name : Calendar.AcceptEventEntry; domain_name : Calendar; model_name : AcceptEventEntry\r\n\r\n## Calendar.AcceptEventEntry\r\n- save the date may 17 {@Calendar.Subject=pictures party}\r\n- schedule {@Calendar.Subject=appointment} for tomorrow please\r\n- {@Calendar.Subject=Meeting My Manager}\r\n- The meeting will last for one hour\r\n- Add an event to visit 209 Nashville Gym\r\n- Add {@Calendar.Subject=imax theater} to my upcoming events\r\n- dunmore pa sonic sounds Friday morning please\r\n- Add a new task {@Calendar.Subject=finish assignment}\r\n- Add a new event on 27 - Apr\r\n- calendar i ' ll be at the garage from 8 till 3 this saturday\r\n- Add an event to {@Calendar.Subject=read about adam lambert news}\r\n\r\n\r\n> !# @intent.inherits = name : Communication.AddContact; domain_name : Communication; model_name : AddContact\r\n\r\n## Communication.AddContact\r\n\r\n\r\n@ intent Communication.AddContact usesFeatures simpleentity1,phraselist1\r\n\r\n> !# @intent.inherits = name : Communication.AddMore; domain_name : Communication; model_name : AddMore\r\n\r\n## Communication.AddMore\r\n\r\n\r\n> !# @intent.inherits = name : Communication.Confirm; domain_name : Communication; model_name : Confirm\r\n\r\n## Communication.Confirm\r\n\r\n\r\n## intent1\r\n\r\n\r\n## None\r\n- a\r\n- hi {@simpleentity1=guys}\r\n- Please just delete {@Calendar.Subject=my meeting}\r\n- Extend {@Calendar.Subject=lunch meeting} 30 minutes extra\r\n- {@Calendar.Subject=Marketing meetings} on Tuesdays will now be every Wednesday please change on my calendar\r\n- {@Calendar.Subject=Appointment with Johnson} needs to be next week\r\n- Search for {@Calendar.Subject=meetings with Chris}\r\n- I want to reschedule the {@Calendar.Subject=meeting at the air force club}\r\n- Move the {@Calendar.Subject=BBQ party} to Friday\r\n- Am i free to {@Calendar.Subject=be with friends} saturday ?\r\n- Delete {@Calendar.Subject=Helen Fred ' s birthday}\r\n- {@Calendar.Subject=Call dad Mike}\r\n- {@Calendar.Subject=The workshop} will last for 10 hours\r\n- {@Calendar.Subject=email cloney John}\r\n- Change {@Calendar.Subject=the meeting with Chris} to 9 : 00 am\r\n\r\n\r\n> # Entity definitions\r\n\r\n> !# @entity.inherits = name : Calendar.Subject; domain_name : Calendar; model_name : Subject\r\n\r\n@ ml Calendar.Subject usesFeatures simpleentity1\r\n\r\n@ ml simpleentity1\r\n\r\n@ ml a1 hasRole role_a1\r\n - @ datetimeV2 b1\r\n - @ ml c1\r\n - @ ml d1 usesFeatures phraselist1\r\n - @ datetimeV2 e1 usesFeatures phraselist1\r\n\r\n\r\n\r\n> # PREBUILT Entity definitions\r\n\r\n@ prebuilt age\r\n\r\n@ prebuilt datetimeV2\r\n\r\n\r\n> # Phrase list definitions\r\n\r\n@ phraselist phraselist1(interchangeable) = \r\n\t- why,where,when,what,how,who\r\n\r\n\r\n> # List entities\r\n\r\n@ list closedlist = \r\n\t- a :\r\n\t\t- b\r\n\t\t- c\r\n\t\t- d\r\n\r\n\r\n> # RegEx entities\r\n\r\n\r\n> # Composite entities\r\n\r\n@ composite compositeentity1 usesFeatures simpleentity1,Calendar.Subject = [simpleentity1, datetimeV2]\r\n" + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/374fac89-ae12-4afd-8c21-8a6424ce1c1f" + }, + "body": "374fac89-ae12-4afd-8c21-8a6424ce1c1f" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json new file mode 100644 index 000000000000..a5f419f2dc4a --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json @@ -0,0 +1,307 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appName": "Test LUIS App", + "luisAppV2": { + "luis_schema_version": "3.0.0", + "versionId": "0.1", + "name": "LuisBot", + "desc": "", + "culture": "en-us", + "intents": [ + { + "name": "HomeAutomation.TurnOff", + "inherits": { + "domain_name": "HomeAutomation", + "model_name": "TurnOff" + } + }, + { + "name": "dateintent" + }, + { + "name": "Help" + }, + { + "name": "None" + }, + { + "name": "SearchHotels" + }, + { + "name": "ShowHotelsReviews" + } + ], + "entities": [ + { + "name": "AirportCode", + "roles": [ + "destination" + ] + }, + { + "name": "Hotel", + "roles": [] + } + ], + "composites": [], + "closedLists": [], + "patternAnyEntities": [ + { + "name": "patternAny1", + "explicitList": [], + "roles": [ + "role1", + "role2" + ] + } + ], + "regex_entities": [ + { + "name": "regex1", + "regexPattern": "[^a]+", + "roles": [ + "regex role" + ] + } + ], + "prebuiltEntities": [ + { + "name": "datetimeV2", + "roles": [ + "datetime role" + ] + } + ], + "model_features": [ + { + "name": "Near", + "mode": true, + "words": "near,around,close,nearby", + "activated": true + }, + { + "name": "Show", + "mode": true, + "words": "show,find,look,search", + "activated": true + } + ], + "regex_features": [ + { + "name": "AirportCodeRegex", + "pattern": "[a-z]{3}", + "activated": true + } + ], + "patterns": [ + { + "pattern": "this is [a test] {patternAny1:role1}", + "intent": "Help" + } + ], + "utterances": [ + { + "text": "i need help", + "intent": "Help", + "entities": [] + }, + { + "text": "help me", + "intent": "Help", + "entities": [] + }, + { + "text": "tomorrow", + "intent": "dateintent", + "entities": [] + }, + { + "text": "search for hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "what can i do?", + "intent": "Help", + "entities": [] + }, + { + "text": "next monday", + "intent": "dateintent", + "entities": [] + }, + { + "text": "next year", + "intent": "dateintent", + "entities": [] + }, + { + "text": "look for hotels in miami", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me hotels in california", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me the reviews of the amazing bot resort", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 23, + "endPos": 44 + } + ] + }, + { + "text": "can i see the reviews of extended bot hotel?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 25, + "endPos": 42 + } + ] + }, + { + "text": "find reviews of hotelxya", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 16, + "endPos": 23 + } + ] + }, + { + "text": "show me reviews of the amazing hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 19, + "endPos": 35 + } + ] + }, + { + "text": "what are the available options?", + "intent": "Help", + "entities": [] + }, + { + "text": "best hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "hotels in los angeles", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me hotels from los angeles?", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me the reviews of the amazing resort & hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 31, + "endPos": 56 + } + ] + }, + { + "text": "what are the reviews of the hotel bot framework?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 24, + "endPos": 46 + } + ] + }, + { + "text": "find hotels near eze", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "where can i stay near nnn?", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 22, + "endPos": 24 + } + ] + }, + { + "text": "show hotels near att airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels near agl", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels around eze airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 19, + "endPos": 21 + } + ] + }, + { + "text": "01/7", + "intent": "dateintent", + "entities": [] + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/374fac89-ae12-4afd-8c21-8a6424ce1c1f" + }, + "body": "374fac89-ae12-4afd-8c21-8a6424ce1c1f" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulAddLabelRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulAddLabelRequest.json index 9a7220daa4e3..5512edd005fc 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulAddLabelRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulAddLabelRequest.json @@ -4,6 +4,7 @@ "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", "versionId": "0.1", + "enableNestedChildren": false, "exampleLabelObject": { "text": "whats the weather in buenos aires?", "intentName": "WeatherInPlace", diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulBatchAddLabelsRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulBatchAddLabelsRequest.json index bc2a357b807a..516369be8a7c 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulBatchAddLabelsRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulBatchAddLabelsRequest.json @@ -4,6 +4,7 @@ "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "2370fb9d-7dbc-4898-a361-a742cf290766", "versionId": "0.1", + "enableNestedChildren": false, "exampleLabelObjectArray": [ { "text": "whats the weather in seattle?", diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulReviewLabeledExamplesRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulReviewLabeledExamplesRequest.json index a0a43d373b31..49071d052202 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulReviewLabeledExamplesRequest.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/examples/SuccessfulReviewLabeledExamplesRequest.json @@ -3,7 +3,8 @@ "Endpoint": "{Endpoint}", "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", - "versionId": "0.1" + "versionId": "0.1", + "enableNestedChildren": false }, "responses": { "200": { diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntitySuggestionExamples.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntitySuggestionExamples.json index 0c103cc44e24..f6605ccf44e3 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntitySuggestionExamples.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetEntitySuggestionExamples.json @@ -4,7 +4,8 @@ "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", "versionId": "0.1", - "entityId": "3d73462d-98f0-4dcd-8d30-fab9e65f2e73" + "entityId": "3d73462d-98f0-4dcd-8d30-fab9e65f2e73", + "enableNestedChildren": false }, "responses": { "200": { diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentsSuggestionExamples.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentsSuggestionExamples.json index a0cd5f3a1bbc..260784bda5d1 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentsSuggestionExamples.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/model/SuccessfulGetIntentsSuggestionExamples.json @@ -4,7 +4,8 @@ "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", "appId": "86226c53-b7a6-416f-876b-226b2b5ab07b", "versionId": "0.1", - "intentId": "3d73462d-98f0-4dcd-8d30-fab9e65f2e73" + "intentId": "3d73462d-98f0-4dcd-8d30-fab9e65f2e73", + "enableNestedChildren": false }, "responses": { "200": { diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulAddUserToAccessListRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulAddUserToAccessListRequest.json deleted file mode 100644 index 868818ea0bda..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulAddUserToAccessListRequest.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "363187f1-c573-46b3-bc4c-ae01d686e68e", - "userToAdd": { - "email": "guest@outlook.com" - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "code": "Success", - "message": "Operation Successful" - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulGetApplicationUserAccessListRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulGetApplicationUserAccessListRequest.json deleted file mode 100644 index bca79c6b986c..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulGetApplicationUserAccessListRequest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "363187f1-c573-46b3-bc4c-ae01d686e68e" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "owner": "owner@email.com", - "emails": [ - "yourname@outlook.com" - ] - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulRemoveUserFromAccessListRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulRemoveUserFromAccessListRequest.json deleted file mode 100644 index e07a94cd0393..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulRemoveUserFromAccessListRequest.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "363187f1-c573-46b3-bc4c-ae01d686e68e", - "userToDelete": { - "email": "guest@outlook.com" - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "code": "Success", - "message": "Operation Successful" - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulReplacesUsersFromAccessListRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulReplacesUsersFromAccessListRequest.json deleted file mode 100644 index 34444826b73b..000000000000 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/permissions/SuccessfulReplacesUsersFromAccessListRequest.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "parameters": { - "Endpoint": "{Endpoint}", - "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", - "appId": "363187f1-c573-46b3-bc4c-ae01d686e68e", - "collaborators": { - "emails": [ - "guest@outlook.com", - "invited.user@live.com" - ] - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "code": "Success", - "message": "Operation Successful" - } - } - } -} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json new file mode 100644 index 000000000000..dd8f887ccf3e --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "format": "lu" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/octet-stream" + }, + "body": "> LUIS application information\\n> !# @app.name = App\\n> !# @app.versionId = 0.2\\n> !# @app.culture = en-us\\n> !# @app.luis_schema_version = 6.0.0\\n\\n\\n> # Intent definitions\\n\\n## intent1\\n\\n\\n@ intent intent1 usesFeature phraselist1\\n\\n## None\\n- a\\n- hi {@simpleentity1=guys}\\n\\n\\n@ intent None usesFeature phraselist1\\n\\n> # Entity definitions\\n\\n@ ml simpleentity1 usesFeature phraselist1\\n\\n\\n> # PREBUILT Entity definitions\\n\\n@ prebuilt datetimeV2\\n\\n\\n> # Phrase list definitions\\n\\n@ phraselist phraselist1(interchangeable) = \\n\t- why,where,when,what,how,who\\n\\n\\n> # List entities\\n\\n@ list closedlist = \\n\t- a :\\n\t\t- b\\n\t\t- c\\n\t\t- d\\n\\n\\n> # RegEx entities\"" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json new file mode 100644 index 000000000000..16d34eae46ad --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "luisAppLu": "> LUIS application information\r\n> !# @app.name = Json 600 App\r\n> !# @app.desc = Json 600 App\r\n> !# @app.versionId = 0.1\r\n> !# @app.culture = en-us\r\n> !# @app.luis_schema_version = 6.0.0\r\n\r\n\r\n> # Intent definitions\r\n\r\n> !# @intent.inherits = name : Calendar.AcceptEventEntry; domain_name : Calendar; model_name : AcceptEventEntry\r\n\r\n## Calendar.AcceptEventEntry\r\n- save the date may 17 {@Calendar.Subject=pictures party}\r\n- schedule {@Calendar.Subject=appointment} for tomorrow please\r\n- {@Calendar.Subject=Meeting My Manager}\r\n- The meeting will last for one hour\r\n- Add an event to visit 209 Nashville Gym\r\n- Add {@Calendar.Subject=imax theater} to my upcoming events\r\n- dunmore pa sonic sounds Friday morning please\r\n- Add a new task {@Calendar.Subject=finish assignment}\r\n- Add a new event on 27 - Apr\r\n- calendar i ' ll be at the garage from 8 till 3 this saturday\r\n- Add an event to {@Calendar.Subject=read about adam lambert news}\r\n\r\n\r\n> !# @intent.inherits = name : Communication.AddContact; domain_name : Communication; model_name : AddContact\r\n\r\n## Communication.AddContact\r\n\r\n\r\n@ intent Communication.AddContact usesFeatures simpleentity1,phraselist1\r\n\r\n> !# @intent.inherits = name : Communication.AddMore; domain_name : Communication; model_name : AddMore\r\n\r\n## Communication.AddMore\r\n\r\n\r\n> !# @intent.inherits = name : Communication.Confirm; domain_name : Communication; model_name : Confirm\r\n\r\n## Communication.Confirm\r\n\r\n\r\n## intent1\r\n\r\n\r\n## None\r\n- a\r\n- hi {@simpleentity1=guys}\r\n- Please just delete {@Calendar.Subject=my meeting}\r\n- Extend {@Calendar.Subject=lunch meeting} 30 minutes extra\r\n- {@Calendar.Subject=Marketing meetings} on Tuesdays will now be every Wednesday please change on my calendar\r\n- {@Calendar.Subject=Appointment with Johnson} needs to be next week\r\n- Search for {@Calendar.Subject=meetings with Chris}\r\n- I want to reschedule the {@Calendar.Subject=meeting at the air force club}\r\n- Move the {@Calendar.Subject=BBQ party} to Friday\r\n- Am i free to {@Calendar.Subject=be with friends} saturday ?\r\n- Delete {@Calendar.Subject=Helen Fred ' s birthday}\r\n- {@Calendar.Subject=Call dad Mike}\r\n- {@Calendar.Subject=The workshop} will last for 10 hours\r\n- {@Calendar.Subject=email cloney John}\r\n- Change {@Calendar.Subject=the meeting with Chris} to 9 : 00 am\r\n\r\n\r\n> # Entity definitions\r\n\r\n> !# @entity.inherits = name : Calendar.Subject; domain_name : Calendar; model_name : Subject\r\n\r\n@ ml Calendar.Subject usesFeatures simpleentity1\r\n\r\n@ ml simpleentity1\r\n\r\n@ ml a1 hasRole role_a1\r\n - @ datetimeV2 b1\r\n - @ ml c1\r\n - @ ml d1 usesFeatures phraselist1\r\n - @ datetimeV2 e1 usesFeatures phraselist1\r\n\r\n\r\n\r\n> # PREBUILT Entity definitions\r\n\r\n@ prebuilt age\r\n\r\n@ prebuilt datetimeV2\r\n\r\n\r\n> # Phrase list definitions\r\n\r\n@ phraselist phraselist1(interchangeable) = \r\n\t- why,where,when,what,how,who\r\n\r\n\r\n> # List entities\r\n\r\n@ list closedlist = \r\n\t- a :\r\n\t\t- b\r\n\t\t- c\r\n\t\t- d\r\n\r\n\r\n> # RegEx entities\r\n\r\n\r\n> # Composite entities\r\n\r\n@ composite compositeentity1 usesFeatures simpleentity1,Calendar.Subject = [simpleentity1, datetimeV2]\r\n" + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/bd72e8d7-62b8-48f5-9dcb-e3b0588b803a/versions/0.2" + }, + "body": "0.2" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json new file mode 100644 index 000000000000..432c95236290 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json @@ -0,0 +1,308 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "luisAppV2": { + "luis_schema_version": "3.0.0", + "versionId": "0.1", + "name": "LuisBot", + "desc": "", + "culture": "en-us", + "intents": [ + { + "name": "HomeAutomation.TurnOff", + "inherits": { + "domain_name": "HomeAutomation", + "model_name": "TurnOff" + } + }, + { + "name": "dateintent" + }, + { + "name": "Help" + }, + { + "name": "None" + }, + { + "name": "SearchHotels" + }, + { + "name": "ShowHotelsReviews" + } + ], + "entities": [ + { + "name": "AirportCode", + "roles": [ + "destination" + ] + }, + { + "name": "Hotel", + "roles": [] + } + ], + "composites": [], + "closedLists": [], + "patternAnyEntities": [ + { + "name": "patternAny1", + "explicitList": [], + "roles": [ + "role1", + "role2" + ] + } + ], + "regex_entities": [ + { + "name": "regex1", + "regexPattern": "[^a]+", + "roles": [ + "regex role" + ] + } + ], + "prebuiltEntities": [ + { + "name": "datetimeV2", + "roles": [ + "datetime role" + ] + } + ], + "model_features": [ + { + "name": "Near", + "mode": true, + "words": "near,around,close,nearby", + "activated": true + }, + { + "name": "Show", + "mode": true, + "words": "show,find,look,search", + "activated": true + } + ], + "regex_features": [ + { + "name": "AirportCodeRegex", + "pattern": "[a-z]{3}", + "activated": true + } + ], + "patterns": [ + { + "pattern": "this is [a test] {patternAny1:role1}", + "intent": "Help" + } + ], + "utterances": [ + { + "text": "i need help", + "intent": "Help", + "entities": [] + }, + { + "text": "help me", + "intent": "Help", + "entities": [] + }, + { + "text": "tomorrow", + "intent": "dateintent", + "entities": [] + }, + { + "text": "search for hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "what can i do?", + "intent": "Help", + "entities": [] + }, + { + "text": "next monday", + "intent": "dateintent", + "entities": [] + }, + { + "text": "next year", + "intent": "dateintent", + "entities": [] + }, + { + "text": "look for hotels in miami", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me hotels in california", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me the reviews of the amazing bot resort", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 23, + "endPos": 44 + } + ] + }, + { + "text": "can i see the reviews of extended bot hotel?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 25, + "endPos": 42 + } + ] + }, + { + "text": "find reviews of hotelxya", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 16, + "endPos": 23 + } + ] + }, + { + "text": "show me reviews of the amazing hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 19, + "endPos": 35 + } + ] + }, + { + "text": "what are the available options?", + "intent": "Help", + "entities": [] + }, + { + "text": "best hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "hotels in los angeles", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me hotels from los angeles?", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me the reviews of the amazing resort & hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 31, + "endPos": 56 + } + ] + }, + { + "text": "what are the reviews of the hotel bot framework?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 24, + "endPos": 46 + } + ] + }, + { + "text": "find hotels near eze", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "where can i stay near nnn?", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 22, + "endPos": 24 + } + ] + }, + { + "text": "show hotels near att airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels near agl", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels around eze airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 19, + "endPos": 21 + } + ] + }, + { + "text": "01/7", + "intent": "dateintent", + "entities": [] + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/bd72e8d7-62b8-48f5-9dcb-e3b0588b803a/versions/0.2" + }, + "body": "0.2" + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md index 494125d82c26..28c107b25da3 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md @@ -4,23 +4,19 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.knowledge.qnamaker - package-name: azure-cognitiveservices-knowledge-qnamaker - clear-output-folder: true +``` yaml +license-header: MICROSOFT_MIT_NO_VERSION +add-credentials: true +payload-flattening-threshold: 2 +package-name: azure-cognitiveservices-knowledge-qnamaker +no-namespace-folders: true +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker +``` yaml $(tag) == 'release_4_0' +namespace: azure.cognitiveservices.knowledge.qnamaker.authoring +output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/authoring ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker +``` yaml $(tag) == 'runtime_release_4_0' +namespace: azure.cognitiveservices.knowledge.qnamaker.runtime +output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/runtime ``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json index 928efa6d8bd0..4e2a55047833 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json @@ -894,7 +894,7 @@ "type": "boolean", "description": "Enable hierarchical extraction of Q-A from files and urls. Value to be considered False if this field is not present." }, - "defaultAnswerUsedForExtraction":{ + "defaultAnswerUsedForExtraction": { "type": "string", "description": "Text string to be used as the answer in any Q-A which has no extracted answer from the document but has a hierarchy. Required when EnableHierarchicalExtraction field is set to True.", "maxLength": 300, diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json index 041e089e05a1..0413615b20ca 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json @@ -18,354 +18,72 @@ "questions": [ "How can I change the default message from QnA Maker?" ], - "metadata": [] + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } }, { "id": 2, - "answer": "You can use our REST apis to manage your KB. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa", + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", "source": "Custom Editorial", "questions": [ - "How do I programmatically update my KB?" + "How do I programmatically create a KB?" ], "metadata": [ { "name": "category", "value": "api" } - ] - }, - { - "id": 3, - "answer": "QnA Maker provides an FAQ data source that you can query from your bot or application. Although developers will find this useful, content owners will especially benefit from this tool. QnA Maker is a completely no-code way of managing the content that powers your bot or application.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Who is the target audience for the QnA Maker tool?" - ], - "metadata": [] - }, - { - "id": 4, - "answer": "

You can sign in with your Microsoft account

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How do I sign in to the QnA Maker portal?" - ], - "metadata": [] - }, - { - "id": 5, - "answer": "

Yes, currently the QnA Maker tool is free to use. However, usage is metered for each account. For more information, see Authentication and subscription keys

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Is the QnA Maker Service free?" - ], - "metadata": [] - }, - { - "id": 6, - "answer": "It’s possible that the tool can't auto-extract some question-and-answer (QnA) content from valid FAQ URLs. In such cases, you can paste the QnA content in a .txt file and see if the tool can ingest it. Alternately, you can editorially add content to your knowledge base.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "My URLs have valid FAQ content, but the tool cannot extract them. Why not?" - ], - "metadata": [] - }, - { - "id": 7, - "answer": "

The tool supports the following file formats for ingestion:

  • .tsv: QnA contained in the format Question(tab)Answer.
  • .txt, .docx, .pdf: QnA contained as regular FAQ content--that is, a sequence of questions and answers.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What format does the tool expect for the file content?" - ], - "metadata": [] - }, - { - "id": 8, - "answer": "

No, you don’t. However, QnA Maker is offered as one of several templates in Azure Bot Service. Bot Service enables rapid intelligent bot development through Microsoft Bot Framework, and it runs in a serverless environment.

Bots scale based on demand. You pay for only the resources that you consume.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Do I need to use Bot Framework in order to use QnA Maker?" - ], - "metadata": [] - }, - { - "id": 9, - "answer": "

QnAMaker provides a REST endpoint that you can call from any bot code. However, if you'd like a quick way to set up a QnAMaker bot, you can use the Azure Bot Service. Follow the instructions here and choose the \"Question and Answer\" bot template. Once the bot is created, you will need to do the following steps to complete setup.

  1. In Azure portal, open the newly created Web App Bot resource.
  2. Click on \"Application Settings\" and in the App Settings list, add QnASubscriptionKey and QnAKnowledgebaseId. The corresponding values can be obtained from the KB Settings page in http://qnamaker.ai.
  3. The QnAMaker-enabled Azure bot service app is now ready to use. To try it out click on \"Test in Web Chat\" to chat with your QnA bot.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I create a bot with QnAMaker?" - ], - "metadata": [] - }, - { - "id": 10, - "answer": "

Follow these steps to embed the QnA Maker service as a web-chat control in your website:

  1. Create your knowledge base from the QnA Maker webpage.
  2. Create your bot as shown in Create a bot with the Azure Bot Service.
  3. Look for the Question and Answer bot template.
  4. Enable the bot on the Web Chat channel. Get the embed keys.
  5. Embed the web chat as shown in Connect a bot to Web Chat.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How do I embed the QnA Maker service in my website?" - ], - "metadata": [] - }, - { - "id": 11, - "answer": "Currently, the QnA Maker tool handles semi-structured FAQ content and certain types of product manuals. Eventually, the vision is to be able to answer questions from unstructured content as well.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What is the roadmap of QnA Maker?" ], - "metadata": [] + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 3, + "displayText": "Update KB" + } + ] + } }, { - "id": 12, - "answer": "Currently, the limit is a 20-MB knowledge base.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How large a knowledge base can I create?" - ], - "metadata": [] - }, - { - "id": 13, - "answer": "Every edit operation, whether in a table update, test, or settings, needs to be saved before it can be published. Be sure to select the Save and retrain button after every edit operation.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "The updates that I made to my knowledge base are not reflected on publish. Why not?" - ], - "metadata": [] - }, - { - "id": 14, - "answer": "The upload feature expects the file to be formatted as tab-separated columns of question, answer, and source.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Why can’t I replace my knowledge base with the upload feature?" - ], - "metadata": [] - }, - { - "id": 15, - "answer": "You should refresh your subscription keys if you suspect that they have been compromised. Any requests with your subscription key will count toward your quota.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "When should I refresh my subscription keys?" - ], - "metadata": [] - }, - { - "id": 16, - "answer": "The QnA Maker tool stores all knowledge base content in Azure Storage. You need a combination of knowledge base ID and subscription key to access the knowledge base. The tool doesn't use knowledge base content for any other purpose.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How safe is the data in my knowledge base?" - ], - "metadata": [] - }, - { - "id": 17, - "answer": "

The knowledge base supports Markdown. However, the auto-extraction from URLs has limited HTML-to-Markdown conversion capability. If you want to use full-fledged Markdown, you can modify your content directly in the table, or upload a knowledge base with the rich content.

Multimedia, such as images and videos, is not supported at this time.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Does the knowledge base support rich data or multimedia?" - ], - "metadata": [] - }, - { - "id": 18, - "answer": "

The QnA Maker tool ingests and matches data in UTF-16 encoding. Any language should work as is. But, we have extensively tested the relevance of the service for English only.

If you have content from multiple languages, be sure to create a separate service for each language.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Does QnA Maker support non-English languages?" - ], - "metadata": [] - }, - { - "id": 19, - "answer": "The chat logs are tab-separated files, with the query and the frequency as the columns. Frequency is the number of times that the same query was seen. The file is sorted in descending order of frequency. Select questions from the downloaded file that you want to test, and then upload it to see what responses the system returned for them.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What is the format of the downloaded chat logs?" - ], - "metadata": [] - }, - { - "id": 20, - "answer": "

The new service doesn't include the test URL. The reason is that all calls are metered, as part of Cognitive Services. Because the test URL exposed the subscription key and the knowledge base ID, it was a security risk.

However, it's still easy to share your knowledge base and use it in chats. Check out the Azure Bot Service template for the Question and Answer bot. You can create the Question and Answer bot in Skype in a few clicks, and then share it with anyone.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Where is the test web-chat URL from the old portal? How do I share my knowledge base with others now?" - ], - "metadata": [] - }, - { - "id": 21, - "answer": "

Current transaction limits are 10 calls per minute and 10,000 calls per month. If you require higher limits, a free premium tier is available with limits of 1,000 calls per minute and 500,000 calls per month. To sign up for this option, fill in the request form. Note that these tiers are subject to change when the tool goes to general availability.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I increase the transaction limits?" - ], - "metadata": [] - }, - { - "id": 22, - "answer": "

If QnA Maker doesn't match any of the questions, it shows a default \"Sorry, no match found\" message. You can change this default message in the code-behind by using the QnAMakerDialog object. For more information, see Create a bot using the Question and Answer template.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I change the default message when no good match is found?" - ], - "metadata": [] - }, - { - "id": 23, - "answer": "The tool parses only public URLs and does not support authenticated data sources at this time. Alternately, you can download the file and use the file-upload option to extract questions and answers.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Why is my SharePoint link not getting extracted?" - ], - "metadata": [] - }, - { - "id": 24, - "answer": "

There is no direct integration of LUIS with QnA Maker. But, in your bot code, you can use LUIS and QnA Maker together. View a sample bot

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I integrate LUIS with QnA Maker?" - ], - "metadata": [] - }, - { - "id": 25, - "answer": "QnAMaker is currently in free Preview and does not have support SLAs. If you want to report an issue or provide feedback, you do so on UserVoice through the \"Feedback\" button in the top navigation bar.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I report issues or contact support for QnAMaker?" - ], - "metadata": [] - }, - { - "id": 26, - "answer": "

While the Conversation User Interface (CUI) is upon us, at this point few developers have the expertise and tools needed to create new conversational experiences or enable existing applications and services with a conversational interface their users can enjoy. We have created the Bot Framework to make it easier for developers to build and connect great bots to users, wherever they converse, including on Microsoft's premier channels.

Channels

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Why did Microsoft develop the Bot Framework?" - ], - "metadata": [] - }, - { - "id": 27, - "answer": "

We plan on making continuous improvements to the Bot Framework, including additional channels, but cannot provide a schedule at this time.If you would like a specific channel added to the framework, let us know.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "When will you add more conversation experiences to the Bot Framework?" - ], - "metadata": [] - }, - { - "id": 28, - "answer": "

We have not provided a general mechanism for developers to add new channels to Bot Framework, but you can connect your bot to your app via the Direct Line API. If you are a developer of a communication channel and would like to work with us to enable your channel in the Bot Framework we’d love to hear from you.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "I have a communication channel I’d like to be configurable with Bot Framework. Can I work with Microsoft to do that?" - ], - "metadata": [] - }, - { - "id": 29, - "answer": "

The Bot Framework is designed to build, connect, and deploy high quality, responsive, performant and scalable bots for Skype and many other channels. The SDK can be used to create text/sms, image, button and card-capable bots (which constitute the majority of bot interactions today across conversation experiences) as well as bot interactions which are Skype-specific such as rich audio and video experiences.

If you already have a great bot and would like to reach the Skype audience, your bot can easily be connected to Skype (or any supported channel) via the Bot Builder for REST API (provided it has an internet-accessible REST endpoint).

Security and Privacy

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "If I want to create a bot for Skype, what tools and services should I use?" - ], - "metadata": [] - }, - { - "id": 30, - "answer": "

Each bot is its own service, and developers of these services are required to provide Terms of Service and Privacy Statements per their Developer Code of Conduct. You can access this information from the bot’s card in the Bot Directory.

to provide the I/O service, the Bot Framework transmits your message and message content (including your ID), from the chat service you used to the bot.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Do the bots registered with the Bot Framework collect personal information? If yes, how can I be sure the data is safe and secure? What about privacy?" - ], - "metadata": [] - }, - { - "id": 31, - "answer": "Users have a way to report a misbehaving bot via the bot’s contact card in the directory. Developers must abide by Microsoft terms of service to participate in the service.", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How do you ban or remove bots from the service?" - ], - "metadata": [] - }, - { - "id": 32, - "answer": "

You'll need to whitelist the following URLs in your corporate firewall:

  • login.botframework.com (Bot authentication)
  • login.microsoftonline.com (Bot authentication)
  • westus.api.cognitive.microsoft.com (for Luis.ai NLP integration)
  • state.botframework.com (Bot state storage for prototyping)
  • cortanabfchanneleastus.azurewebsites.net (Cortana channel)
  • cortanabfchannelwestus.azurewebsites.net (Cortana Channel)
  • *.botFramework.com (channels)

Rate limiting

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Which specific URLs do I need to whitelist in my corporate firewall to access bot services?" - ], - "metadata": [] - }, - { - "id": 33, - "answer": "The Bot Framework service must protect itself and its customers against abusive call patterns (e.g., denial of service attack), so that no single bot can adversely affect the performance of other bots. To achieve this kind of protection, we’ve added rate limits (also known as throttling) to all endpoints. By enforcing a rate limit, we can restrict the frequency with which a bot can make a specific call. For example: with rate limiting enabled, if a bot wanted to post a large number of activities, it would have to space them out over a time period. Please note that the purpose of rate-limiting is not to cap the total volume for a bot. It is designed to prevent abuse of the conversational infrastructure that does not follow human conversation patterns.", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What is rate limiting?" - ], - "metadata": [] - }, - { - "id": 34, - "answer": "It is unlikely you’ll experience rate limiting, even at high volume. Most rate limiting would only occur due to bulk sending of activities (from a bot or from a client), extreme load testing, or a bug. When a request is throttled, an HTTP 429 (Too Many Requests) response is returned along with a Retry-After header indicating the amount of time (in seconds) to wait before retrying the request would succeed. You can collect this information by enabling analytics for your bot via Azure Application Insights. Or, you can add code in your bot to log messages. ", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How will I know if I’m impacted?" - ], - "metadata": [] - }, - { - "id": 35, - "answer": "

It can happen if:

  • a bot sends messages too frequently
  • a client of a bot sends messages too frequently
  • Direct Line clients request a new Web Socket too frequently
", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How does rate limiting occur?" - ], - "metadata": [] - }, - { - "id": 36, - "answer": "

We’re continuously tuning the rate limits to make them as lenient as possible while at the same time protecting our service and our users. Because thresholds will occasionally change, we aren’t publishing the numbers at this time. If you are impacted by rate limiting, feel free to reach out to us at bf-reports@microsoft.com.

Related Services

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What are the rate limits?" - ], - "metadata": [] - }, - { - "id": 37, - "answer": "

Both the Bot Framework and Cognitive Services are new capabilities introduced at Microsoft Build 2016 that will also be integrated into Cortana Intelligence Suite at GA. Both these services are built from years of research and use in popular Microsoft products. These capabilities combined with ‘Cortana Intelligence’ enable every organization to take advantage of the power of data, the cloud and intelligence to build their own intelligent systems that unlock new opportunities, increase their speed of business and lead the industries in which they serve their customers.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "id": 3, + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "source": "Editorial", "questions": [ - "How does the Bot Framework relate to Cognitive Services?" + "How do I programmatically update my KB?" ], - "metadata": [] - }, - { - "id": 38, - "answer": "

Cortana Intelligence is a fully managed Big Data, Advanced Analytics and Intelligence suite that transforms your data into intelligent action.It is a comprehensive suite that brings together technologies founded upon years of research and innovation throughout Microsoft (spanning advanced analytics, machine learning, big data storage and processing in the cloud) and:

  • Allows you to collect, manage and store all your data that can seamlessly and cost effectively grow over time in a scalable and secure way.
  • Provides easy and actionable analytics powered by the cloud that allow you to predict, prescribe and automate decision making for the most demanding problems.
  • Enables intelligent systems through cognitive services and agents that allow you to see, hear, interpret and understand the world around you in more contextual and natural ways.

With Cortana Intelligence, we hope to help our enterprise customers unlock new opportunities, increase their speed of business and be leaders in their industries.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What is Cortana Intelligence?" + "metadata": [ + { + "name": "category", + "value": "api" + } ], - "metadata": [] + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 4, + "displayText": "Refresh Endpoint Keys" + } + ] + } }, { - "id": 39, - "answer": "

Direct Line is a REST API that allows you to add your bot into your service, mobile app, or webpage.

You can write a client for the Direct Line API in any language. Simply code to the Direct Line protocol, generate a secret in the Direct Line configuration page, and talk to your bot from wherever your code lives.

Direct Line is suitable for:

  • Mobile apps on iOS, Android, and Windows Phone, and others
  • Desktop applications on Windows, OSX, and more
  • Webpages where you need more customization than the embeddable Web Chat channel offers
  • Service-to-service applications
", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "id": 4, + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "source": "Editorial", "questions": [ - "What is the Direct Line channel?" + "How do I programmatically refresh endpoint keys?" ], - "metadata": [] + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } } ] } diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json index de606593fa4f..074f4541e639 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json @@ -5,20 +5,75 @@ "Ocp-Apim-Subscription-Key": "{API key}", "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", "replaceKb": { - "qnAList": [ + "qnaList": [ { "id": 0, - "answer": "string", - "source": "string", + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", "questions": [ - "string" + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically create a KB?" ], "metadata": [ { - "name": "string", - "value": "string" + "name": "category", + "value": "api" } - ] + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Update KB", + "qna": { + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Refresh Endpoint Keys", + "qna": { + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "questions": [ + "How do I programmatically refresh endpoint keys?" + ] + } + } + ] + } + } + } + ] + } + } + ], + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" } ] } diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json index 2c826b9ba1c4..3ecddf3e6b15 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json @@ -1119,4 +1119,4 @@ "x-ms-skip-url-encoding": true } } -} \ No newline at end of file +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json new file mode 100644 index 000000000000..675210bab169 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json @@ -0,0 +1,1347 @@ +{ + "swagger": "2.0", + "info": { + "version": "v3.1-preview.1", + "contact": { + "name": "Microsoft Cognitive Services", + "url": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/", + "email": "mlapi@microsoft.com" + }, + "title": "Text Analytics Client", + "description": "The Text Analytics API is a suite of text analytics web services built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction and language detection. No training data is needed to use this API; just bring your text data. This API uses advanced natural language processing techniques to deliver best in class predictions. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/overview" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/text/analytics/v3.1-preview.1", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/entities/recognition/general": { + "post": { + "summary": "Named Entity Recognition", + "description": "The API returns a list of general named entities in a given document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesRecognitionGeneral", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "required": false, + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean", + "required": false + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities returned for each valid document.", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entities request": { + "$ref": ".//examples//SuccessfulEntitiesRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/recognition/pii": { + "post": { + "summary": "Entities containing personal information", + "description": "The API returns a list of entities with personal information (\\\"SSN\\\", \\\"Bank Account\\\" etc) in the document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.\n", + "operationId": "EntitiesRecognitionPii", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "name": "domain", + "in": "query", + "description": "(Optional) if set to 'PHI', response will contain only PHI entities.", + "type": "string" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of entities containing personal information returned for each valid document", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity PII request": { + "$ref": ".//examples//SuccessfulEntityPIIRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/linking": { + "post": { + "summary": "Linked entities from a well-known knowledge base", + "description": "The API returns a list of recognized entities with links to a well-known knowledge base. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesLinking", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities with links to a well-known knowledge base returned for each valid document", + "schema": { + "$ref": "#/definitions/EntityLinkingResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity Linking request": { + "$ref": ".//examples//SuccessfulEntityLinkingRequest.json" + } + }, + "deprecated": false + } + }, + "/keyPhrases": { + "post": { + "summary": "Key Phrases", + "description": "The API returns a list of strings denoting the key phrases in the input text. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "KeyPhrases", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze. Documents can now contain a language field to indicate the text language", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful response results in 0 or more key phrases identified in each valid document", + "schema": { + "$ref": "#/definitions/KeyPhraseResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Key Phrase request": { + "$ref": ".//examples//SuccessfulKeyPhrasesRequest.json" + } + }, + "deprecated": false + } + }, + "/languages": { + "post": { + "summary": "Detect Language", + "description": "The API returns the detected language and a numeric score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Languages", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in the detected language with the highest probability for each valid document", + "schema": { + "$ref": "#/definitions/LanguageResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Detect Language request": { + "$ref": ".//examples//SuccessfulLanguagesRequest.json" + } + }, + "deprecated": false + } + }, + "/sentiment": { + "post": { + "summary": "Sentiment", + "description": "The API returns a detailed sentiment analysis for the input text. The analysis is done in multiple levels of granularity, start from the a document level, down to sentence and key terms (aspects) and opinions.", + "operationId": "Sentiment", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "name": "opinionMining", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics including aspect-based sentiment analysis results.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a document sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral)", + "schema": { + "$ref": "#/definitions/SentimentResponse" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Sentiment request": { + "$ref": ".//examples//SuccessfulSentimentRequest.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "MultiLanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "description": "The set of documents to process as part of this batch.", + "items": { + "$ref": "#/definitions/MultiLanguageInput" + } + } + }, + "description": "Contains a set of input documents to be analyzed by the service." + }, + "MultiLanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "A unique, non-empty document identifier." + }, + "text": { + "type": "string", + "description": "The input text to process." + }, + "language": { + "type": "string", + "description": "(Optional) This is the 2 letter ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default." + } + }, + "description": "Contains an input document to be analyzed by the service." + }, + "DocumentError": { + "type": "object", + "required": [ + "id", + "error" + ], + "properties": { + "id": { + "type": "string", + "description": "Document Id." + }, + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "TextAnalyticsError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidRequest", + "invalidArgument", + "internalServerError", + "serviceUnavailable" + ], + "x-ms-enum": { + "name": "ErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + }, + "details": { + "type": "array", + "description": "Details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + } + }, + "TextAnalyticsWarning": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "LongWordsInDocument", + "DocumentTruncated" + ], + "x-ms-enum": { + "name": "WarningCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Warning message." + }, + "targetRef": { + "type": "string", + "description": "A JSON pointer reference indicating the target object." + } + } + }, + "InnerError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidParameterValue", + "invalidRequestBodyFormat", + "emptyRequest", + "missingInputRecords", + "invalidDocument", + "modelVersionIncorrect", + "invalidDocumentBatch", + "unsupportedLanguageCode", + "invalidCountryHint" + ], + "x-ms-enum": { + "name": "InnerErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Error details." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + } + } + }, + "SentimentResponse": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Sentiment analysis per document.", + "items": { + "$ref": "#/definitions/DocumentSentiment" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentSentiment": { + "type": "object", + "required": [ + "id", + "sentiment", + "confidenceScores", + "sentences", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "sentiment": { + "type": "string", + "description": "Predicted sentiment for document (Negative, Neutral, Positive, or Mixed).", + "enum": [ + "positive", + "neutral", + "negative", + "mixed" + ], + "x-ms-enum": { + "name": "DocumentSentimentValue", + "modelAsString": false + } + }, + "statistics": { + "$ref": "#/definitions/DocumentStatistics" + }, + "confidenceScores": { + "description": "Document level sentiment confidence scores between 0 and 1 for each sentiment class.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "sentences": { + "type": "array", + "description": "Sentence level sentiment analysis.", + "items": { + "$ref": "#/definitions/SentenceSentiment" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + } + } + }, + "RequestStatistics": { + "type": "object", + "required": [ + "documentsCount", + "validDocumentsCount", + "erroneousDocumentsCount", + "transactionsCount" + ], + "properties": { + "documentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of documents submitted in the request." + }, + "validDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of valid documents. This excludes empty, over-size limit or non-supported languages documents." + }, + "erroneousDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of invalid documents. This includes empty, over-size limit or non-supported languages documents." + }, + "transactionsCount": { + "type": "integer", + "format": "int64", + "description": "Number of transactions for the request." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the request payload." + }, + "DocumentStatistics": { + "type": "object", + "required": [ + "charactersCount", + "transactionsCount" + ], + "properties": { + "charactersCount": { + "type": "integer", + "format": "int32", + "description": "Number of text elements recognized in the document." + }, + "transactionsCount": { + "type": "integer", + "format": "int32", + "description": "Number of transactions for the document." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the document payload." + }, + "SentimentConfidenceScorePerLabel": { + "type": "object", + "required": [ + "positive", + "neutral", + "negative" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "neutral": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores between 0 and 1 across all sentiment classes: positive, neutral, negative." + }, + "SentenceSentiment": { + "type": "object", + "required": [ + "text", + "sentiment", + "confidenceScores", + "offset", + "length", + "aspects", + "opinions" + ], + "properties": { + "text": { + "type": "string", + "description": "The sentence text." + }, + "sentiment": { + "type": "string", + "description": "The predicted Sentiment for the sentence.", + "enum": [ + "positive", + "neutral", + "negative" + ], + "x-ms-enum": { + "name": "SentenceSentimentValue", + "modelAsString": false + } + }, + "confidenceScores": { + "description": "The sentiment confidence score between 0 and 1 for the sentence for all classes.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The sentence offset from the start of the document." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the sentence." + }, + "aspects": { + "type": "array", + "description": "The array of aspect object for the sentence.", + "items": { + "$ref": "#/definitions/SentenceAspect" + } + }, + "opinions": { + "type": "array", + "description": "The array of opinion object for the sentence.", + "items": { + "$ref": "#/definitions/SentenceOpinion" + } + } + } + }, + "SentenceAspect": { + "type": "object", + "required": [ + "confidenceScores", + "length", + "offset", + "relations", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "description": "Aspect level sentiment for the aspect in the sentence." + }, + "confidenceScores": { + "description": "Aspect level sentiment confidence scores for the aspect in the sentence.", + "$ref": "#/definitions/AspectConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The aspect offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the aspect." + }, + "text": { + "type": "string", + "description": "The aspect text detected." + }, + "relations": { + "type": "array", + "description": "The array of either opinion or aspect object which is related to the aspect.", + "items": { + "$ref": "#/definitions/AspectRelation" + } + } + } + }, + "SentenceOpinion": { + "type": "object", + "required": [ + "confidenceScores", + "isNegated", + "length", + "offset", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "description": "Opinion level sentiment for the aspect in the sentence." + }, + "confidenceScores": { + "description": "Opinion level sentiment confidence scores for the aspect in the sentence.", + "$ref": "#/definitions/AspectConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The opinion offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the opinion." + }, + "text": { + "type": "string", + "description": "The aspect text detected." + }, + "isNegated": { + "type": "boolean", + "description": "The indicator representing if the opinion is negated." + } + } + }, + "AspectRelation": { + "type": "object", + "required": [ + "ref", + "relationType" + ], + "properties": { + "relationType": { + "type": "string", + "enum": [ + "opinion", + "aspect" + ], + "description": "The type related to the aspect." + }, + "ref": { + "type": "string", + "description": "The JSON pointer indicating the linked object." + } + } + }, + "AspectConfidenceScoreLabel": { + "type": "object", + "required": [ + "negative", + "positive" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores across all sentiment classes: positive, neutral, negative." + }, + "EntitiesResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "Entity": { + "type": "object", + "required": [ + "text", + "category", + "offset", + "length", + "confidenceScore" + ], + "properties": { + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "category": { + "type": "string", + "description": "Entity type, such as Person/Location/Org/SSN etc" + }, + "subcategory": { + "type": "string", + "description": "Entity sub type, such as Age/Year/TimeRange etc" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity text." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "Confidence score between 0 and 1 of the extracted entity." + } + } + }, + "EntityLinkingResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLinkedEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLinkedEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized well-known entities in the document.", + "items": { + "$ref": "#/definitions/LinkedEntity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LinkedEntity": { + "type": "object", + "required": [ + "name", + "matches", + "language", + "url", + "dataSource" + ], + "properties": { + "name": { + "type": "string", + "description": "Entity Linking formal name." + }, + "matches": { + "type": "array", + "description": "List of instances this entity appears in the text.", + "items": { + "$ref": "#/definitions/Match" + } + }, + "language": { + "type": "string", + "description": "Language used in the data source." + }, + "id": { + "type": "string", + "description": "Unique identifier of the recognized entity from the data source." + }, + "url": { + "type": "string", + "description": "URL for the entity's page from the data source." + }, + "dataSource": { + "type": "string", + "description": "Data source used to extract entity linking, such as Wiki/Bing etc." + } + } + }, + "Match": { + "type": "object", + "required": [ + "confidenceScore", + "text", + "offset", + "length" + ], + "properties": { + "confidenceScore": { + "type": "number", + "format": "double", + "description": "If a well-known item is recognized, a decimal number denoting the confidence level between 0 and 1 will be returned." + }, + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity match text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity match text." + } + } + }, + "KeyPhraseResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentKeyPhrases" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentKeyPhrases": { + "type": "object", + "required": [ + "id", + "keyPhrases", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "keyPhrases": { + "type": "array", + "description": "A list of representative words or phrases. The number of key phrases returned is proportional to the number of words in the input document.", + "items": { + "type": "string" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageInput" + } + } + } + }, + "LanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "text": { + "type": "string" + }, + "countryHint": { + "type": "string" + } + } + }, + "LanguageResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLanguage" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLanguage": { + "type": "object", + "required": [ + "id", + "detectedLanguages", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "detectedLanguages": { + "type": "array", + "description": "A list of extracted languages.", + "items": { + "$ref": "#/definitions/DetectedLanguage" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "DetectedLanguage": { + "type": "object", + "required": [ + "name", + "iso6391Name", + "confidenceScore" + ], + "properties": { + "name": { + "type": "string", + "description": "Long name of a detected language (e.g. English, French)." + }, + "iso6391Name": { + "type": "string", + "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true." + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json new file mode 100644 index 000000000000..75b4489dcb2d --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "text": "Seattle", + "category": "Location", + "offset": 26, + "length": 7, + "confidenceScore": 0.80 + }, + { + "text": "last week", + "category": "DateTime", + "subcategory": "DateRange", + "offset": 34, + "length": 9, + "confidenceScore": 0.8 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "Microsoft", + "category": "Organization", + "offset": 10, + "length": 9, + "confidenceScore": 0.99 + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "text": "Space Needle", + "category": "Organization", + "offset": 10, + "length": 12, + "confidenceScore": 0.75 + }, + { + "text": "2", + "category": "Quantity", + "subcategory": "Number", + "offset": 23, + "length": 1, + "confidenceScore": 0.8 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json new file mode 100644 index 000000000000..caf12d36bc11 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "name": "Seattle", + "matches": [ + { + "text": "Seattle", + "offset": 26, + "length": 7, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Seattle", + "url": "https://en.wikipedia.org/wiki/Seattle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "name": "Microsoft", + "matches": [ + { + "text": "Microsoft", + "offset": 10, + "length": 9, + "confidenceScore": 0.18 + } + ], + "language": "en", + "id": "Microsoft", + "url": "https://en.wikipedia.org/wiki/Microsoft", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "name": "Space Needle", + "matches": [ + { + "text": "Space Needle", + "offset": 10, + "length": 12, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Space Needle", + "url": "https://en.wikipedia.org/wiki/Space_Needle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json new file mode 100644 index 000000000000..70d30744fd02 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "0", + "text": "Microsoft employee with ssn 859-98-0987 is using our awesome API's." + }, + { + "language": "en", + "id": "1", + "text": "Your ABA number - 111000025 - is the first 9 digits in the lower left hand corner of your personal check." + }, + { + "language": "en", + "id": "2", + "text": "Is 998.214.865-68 your Brazilian CPF number?" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "0", + "entities": [ + { + "text": "859-98-0987", + "category": "U.S. Social Security Number (SSN)", + "subcategory": "", + "offset": 28, + "length": 11, + "confidenceScore": 0.65 + } + ], + "warnings": [] + }, + { + "id": "1", + "entities": [ + { + "text": "111000025", + "category": "ABA Routing Number", + "subcategory": "", + "offset": 18, + "length": 9, + "confidenceScore": 0.75 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "998.214.865-68", + "category": "Brazil CPF Number", + "subcategory": "", + "offset": 3, + "length": 14, + "confidenceScore": 0.85 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json new file mode 100644 index 000000000000..12ff0ccce583 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "fr", + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "language": "es", + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "keyPhrases": [ + "world", + "input text" + ], + "warnings": [] + }, + { + "id": "2", + "keyPhrases": [ + "monde" + ], + "warnings": [] + }, + { + "id": "3", + "keyPhrases": [ + "carretera", + "tráfico", + "día" + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json new file mode 100644 index 000000000000..fad894b10669 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "countryHint": "US", + "id": "1", + "text": "Hello world" + }, + { + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "detectedLanguages": [ + { + "name": "English", + "iso6391Name": "en", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "2", + "detectedLanguages": [ + { + "name": "French", + "iso6391Name": "fr", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "3", + "detectedLanguages": [ + { + "name": "Spanish", + "iso6391Name": "es", + "confidenceScore": 1 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json new file mode 100644 index 000000000000..ad3fc48d2cae --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json @@ -0,0 +1,323 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Great atmosphere. Close to plenty of restaurants, hotels, and transit! Staff are friendly and helpful." + }, + { + "language": "en", + "id": "2", + "text": "Bad atmosphere. Not close to plenty of restaurants, hotels, and transit! Staff are not friendly and helpful." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "sentences": [ + { + "text": "Great atmosphere.", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "offset": 0, + "length": 17, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 6, + "length": 10, + "text": "atmosphere", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/0/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 0, + "length": 5, + "text": "great", + "isNegated": false + } + ] + }, + { + "text": "Close to plenty of restaurants, hotels, and transit!", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.13, + "neutral": 0.86, + "negative": 0.01 + }, + "offset": 18, + "length": 52, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 37, + "length": 11, + "text": "restaurants", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/1/opinions/0" + } + ] + }, + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 50, + "length": 6, + "text": "hotels", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/1/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 18, + "length": 15, + "text": "close to plenty", + "isNegated": false + } + ] + }, + { + "text": "Staff are friendly and helpful.", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "offset": 71, + "length": 31, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 71, + "length": 5, + "text": "Staff", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/2/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 81, + "length": 8, + "text": "friendly", + "isNegated": false + } + ] + } + ], + "warnings": [] + }, + { + "id": "2", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "neutral": 0.14, + "negative": 0.85 + }, + "sentences": [ + { + "text": "Bad atmosphere.", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "neutral": 0.0, + "negative": 1.0 + }, + "offset": 8, + "length": 15, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "negative": 0.99 + }, + "offset": 4, + "length": 10, + "text": "atmosphere", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/0/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "negative": 0.99 + }, + "offset": 0, + "length": 3, + "text": "bad", + "isNegated": false + } + ] + }, + { + "text": "Not close to plenty of restaurants, hotels, and transit!", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.02, + "neutral": 0.44, + "negative": 0.54 + }, + "offset": 16, + "length": 56, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.03, + "negative": 0.97 + }, + "offset": 39, + "length": 11, + "text": "restaurants", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/1/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.03, + "negative": 0.97 + }, + "offset": 20, + "length": 5, + "text": "close", + "isNegated": true + } + ] + }, + { + "text": "Staff are not friendly and helpful.", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "neutral": 0.0, + "negative": 1.0 + }, + "offset": 73, + "length": 35, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "negative": 1.0 + }, + "offset": 73, + "length": 5, + "text": "Staff", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/2/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "negative": 1.0 + }, + "offset": 87, + "length": 8, + "text": "friendly", + "isNegated": true + } + ] + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md index aaa4fc2829e7..3cad53b7f8b5 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md @@ -128,7 +128,6 @@ These settings apply only when `--tag=release_2_0` is specified on the command l ``` yaml $(tag) == 'release_2_0' input-file: stable/v2.0/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 2.1 @@ -137,7 +136,6 @@ These settings apply only when `--tag=release_2_1` is specified on the command l ``` yaml $(tag) == 'release_2_1' input-file: stable/v2.1/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 2.1-Preview @@ -146,7 +144,6 @@ These settings apply only when `--tag=release_2_1_preview` is specified on the c ``` yaml $(tag) == 'release_2_1_preview' input-file: preview/v2.1/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 3.0-Preview.1 @@ -155,7 +152,22 @@ These settings apply only when `--tag=release_3_0_preview.1` is specified on the ``` yaml $(tag) == 'release_3_0_preview.1' input-file: preview/v3.0-preview.1/TextAnalytics.json -log-file: logs/log.txt +``` + +### Release 3.0 + +These settings apply only when `--tag=release_3_0` is specified on the command line. + +``` yaml $(tag) == 'release_3_0' +input-file: stable/v3.0/TextAnalytics.json +``` + +### Release 3.1-Preview.1 + +These settings apply only when `--tag=release_3_1_preview.1` is specified on the command line. + +``` yaml $(tag) == 'release_3_1_preview.1' +input-file: preview/v3.1-preview.1/TextAnalytics.json ``` ## Swagger to SDK @@ -254,6 +266,8 @@ input-file: - $(this-folder)/stable/v2.1/TextAnalytics.json - $(this-folder)/preview/v2.1/TextAnalytics.json - $(this-folder)/preview/v3.0-preview.1/TextAnalytics.json + - $(this-folder)/stable/v3.0/TextAnalytics.json + - $(this-folder)/preview/v3.1-preview.1/TextAnalytics.json ``` diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json new file mode 100644 index 000000000000..81ec70c74f6b --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json @@ -0,0 +1,1127 @@ +{ + "swagger": "2.0", + "info": { + "version": "v3.0", + "contact": { + "name": "Microsoft Cognitive Services", + "url": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/", + "email": "mlapi@microsoft.com" + }, + "title": "Text Analytics Client", + "description": "The Text Analytics API is a suite of text analytics web services built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction and language detection. No training data is needed to use this API; just bring your text data. This API uses advanced natural language processing techniques to deliver best in class predictions. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/overview" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/text/analytics/v3.0", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/entities/recognition/general": { + "post": { + "summary": "Named Entity Recognition", + "description": "The API returns a list of general named entities in a given document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesRecognitionGeneral", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "required": false, + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean", + "required": false + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities returned for each valid document.", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entities request": { + "$ref": ".//examples//SuccessfulEntitiesRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/linking": { + "post": { + "summary": "Linked entities from a well-known knowledge base", + "description": "The API returns a list of recognized entities with links to a well-known knowledge base. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesLinking", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities with links to a well-known knowledge base returned for each valid document", + "schema": { + "$ref": "#/definitions/EntityLinkingResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity Linking request": { + "$ref": ".//examples//SuccessfulEntityLinkingRequest.json" + } + }, + "deprecated": false + } + }, + "/keyPhrases": { + "post": { + "summary": "Key Phrases", + "description": "The API returns a list of strings denoting the key phrases in the input text. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "KeyPhrases", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze. Documents can now contain a language field to indicate the text language", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful response results in 0 or more key phrases identified in each valid document", + "schema": { + "$ref": "#/definitions/KeyPhraseResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Key Phrase request": { + "$ref": ".//examples//SuccessfulKeyPhrasesRequest.json" + } + }, + "deprecated": false + } + }, + "/languages": { + "post": { + "summary": "Detect Language", + "description": "The API returns the detected language and a numeric score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Languages", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in the detected language with the highest probability for each valid document", + "schema": { + "$ref": "#/definitions/LanguageResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Detect Language request": { + "$ref": ".//examples//SuccessfulLanguagesRequest.json" + } + }, + "deprecated": false + } + }, + "/sentiment": { + "post": { + "summary": "Sentiment", + "description": "The API returns a sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral) for the document and each sentence within it. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Sentiment", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a document sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral)", + "schema": { + "$ref": "#/definitions/SentimentResponse" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Sentiment request": { + "$ref": ".//examples//SuccessfulSentimentRequest.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "MultiLanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "description": "The set of documents to process as part of this batch.", + "items": { + "$ref": "#/definitions/MultiLanguageInput" + } + } + }, + "description": "Contains a set of input documents to be analyzed by the service." + }, + "MultiLanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "A unique, non-empty document identifier." + }, + "text": { + "type": "string", + "description": "The input text to process." + }, + "language": { + "type": "string", + "description": "(Optional) This is the 2 letter ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default." + } + }, + "description": "Contains an input document to be analyzed by the service." + }, + "DocumentError": { + "type": "object", + "required": [ + "id", + "error" + ], + "properties": { + "id": { + "type": "string", + "description": "Document Id." + }, + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "TextAnalyticsError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidRequest", + "invalidArgument", + "internalServerError", + "serviceUnavailable" + ], + "x-ms-enum": { + "name": "ErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + }, + "details": { + "type": "array", + "description": "Details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + } + }, + "TextAnalyticsWarning": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "LongWordsInDocument", + "DocumentTruncated" + ], + "x-ms-enum": { + "name": "WarningCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Warning message." + }, + "targetRef": { + "type": "string", + "description": "A JSON pointer reference indicating the target object." + } + } + }, + "InnerError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidParameterValue", + "invalidRequestBodyFormat", + "emptyRequest", + "missingInputRecords", + "invalidDocument", + "modelVersionIncorrect", + "invalidDocumentBatch", + "unsupportedLanguageCode", + "invalidCountryHint" + ], + "x-ms-enum": { + "name": "InnerErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Error details." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + } + } + }, + "SentimentResponse": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Sentiment analysis per document.", + "items": { + "$ref": "#/definitions/DocumentSentiment" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentSentiment": { + "type": "object", + "required": [ + "id", + "sentiment", + "confidenceScores", + "sentences", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "sentiment": { + "type": "string", + "description": "Predicted sentiment for document (Negative, Neutral, Positive, or Mixed).", + "enum": [ + "positive", + "neutral", + "negative", + "mixed" + ], + "x-ms-enum": { + "name": "DocumentSentimentValue", + "modelAsString": false + } + }, + "statistics": { + "$ref": "#/definitions/DocumentStatistics" + }, + "confidenceScores": { + "description": "Document level sentiment confidence scores between 0 and 1 for each sentiment class.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "sentences": { + "type": "array", + "description": "Sentence level sentiment analysis.", + "items": { + "$ref": "#/definitions/SentenceSentiment" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + } + } + }, + "RequestStatistics": { + "type": "object", + "required": [ + "documentsCount", + "validDocumentsCount", + "erroneousDocumentsCount", + "transactionsCount" + ], + "properties": { + "documentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of documents submitted in the request." + }, + "validDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of valid documents. This excludes empty, over-size limit or non-supported languages documents." + }, + "erroneousDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of invalid documents. This includes empty, over-size limit or non-supported languages documents." + }, + "transactionsCount": { + "type": "integer", + "format": "int64", + "description": "Number of transactions for the request." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the request payload." + }, + "DocumentStatistics": { + "type": "object", + "required": [ + "charactersCount", + "transactionsCount" + ], + "properties": { + "charactersCount": { + "type": "integer", + "format": "int32", + "description": "Number of text elements recognized in the document." + }, + "transactionsCount": { + "type": "integer", + "format": "int32", + "description": "Number of transactions for the document." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the document payload." + }, + "SentimentConfidenceScorePerLabel": { + "type": "object", + "required": [ + "positive", + "neutral", + "negative" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "neutral": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores between 0 and 1 across all sentiment classes: positive, neutral, negative." + }, + "SentenceSentiment": { + "type": "object", + "required": [ + "sentiment", + "confidenceScores", + "offset", + "length" + ], + "properties": { + "text": { + "type": "string", + "description": "The sentence text." + }, + "sentiment": { + "type": "string", + "description": "The predicted Sentiment for the sentence.", + "enum": [ + "positive", + "neutral", + "negative" + ], + "x-ms-enum": { + "name": "SentenceSentimentValue", + "modelAsString": false + } + }, + "confidenceScores": { + "description": "The sentiment confidence score between 0 and 1 for the sentence for all classes.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The sentence offset from the start of the document." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the sentence by Unicode standard." + } + } + }, + "EntitiesResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "Entity": { + "type": "object", + "required": [ + "text", + "category", + "offset", + "length", + "confidenceScore" + ], + "properties": { + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "category": { + "type": "string", + "description": "Entity type, such as Person/Location/Org/SSN etc" + }, + "subcategory": { + "type": "string", + "description": "Entity sub type, such as Age/Year/TimeRange etc" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position (in Unicode characters) for the entity text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length (in Unicode characters) for the entity text." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "Confidence score between 0 and 1 of the extracted entity." + } + } + }, + "EntityLinkingResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLinkedEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLinkedEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized well-known entities in the document.", + "items": { + "$ref": "#/definitions/LinkedEntity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LinkedEntity": { + "type": "object", + "required": [ + "name", + "matches", + "language", + "url", + "dataSource" + ], + "properties": { + "name": { + "type": "string", + "description": "Entity Linking formal name." + }, + "matches": { + "type": "array", + "description": "List of instances this entity appears in the text.", + "items": { + "$ref": "#/definitions/Match" + } + }, + "language": { + "type": "string", + "description": "Language used in the data source." + }, + "id": { + "type": "string", + "description": "Unique identifier of the recognized entity from the data source." + }, + "url": { + "type": "string", + "description": "URL for the entity's page from the data source." + }, + "dataSource": { + "type": "string", + "description": "Data source used to extract entity linking, such as Wiki/Bing etc." + } + } + }, + "Match": { + "type": "object", + "required": [ + "confidenceScore", + "text", + "offset", + "length" + ], + "properties": { + "confidenceScore": { + "type": "number", + "format": "double", + "description": "If a well-known item is recognized, a decimal number denoting the confidence level between 0 and 1 will be returned." + }, + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position (in Unicode characters) for the entity match text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length (in Unicode characters) for the entity match text." + } + } + }, + "KeyPhraseResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentKeyPhrases" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentKeyPhrases": { + "type": "object", + "required": [ + "id", + "keyPhrases", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "keyPhrases": { + "type": "array", + "description": "A list of representative words or phrases. The number of key phrases returned is proportional to the number of words in the input document.", + "items": { + "type": "string" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageInput" + } + } + } + }, + "LanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "text": { + "type": "string" + }, + "countryHint": { + "type": "string" + } + } + }, + "LanguageResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLanguage" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLanguage": { + "type": "object", + "required": [ + "id", + "detectedLanguage", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "detectedLanguage": { + "description": "Detected Language.", + "$ref": "#/definitions/DetectedLanguage" + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "DetectedLanguage": { + "type": "object", + "required": [ + "name", + "iso6391Name", + "confidenceScore" + ], + "properties": { + "name": { + "type": "string", + "description": "Long name of a detected language (e.g. English, French)." + }, + "iso6391Name": { + "type": "string", + "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true." + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json new file mode 100644 index 000000000000..4217d33a1c61 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "text": "Seattle", + "category": "Location", + "offset": 26, + "length": 7, + "confidenceScore": 0.80 + }, + { + "text": "last week", + "category": "DateTime", + "subcategory": "DateRange", + "offset": 34, + "length": 9, + "confidenceScore": 0.8 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "Microsoft", + "category": "Organization", + "offset": 10, + "length": 9, + "confidenceScore": 0.99 + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "text": "Space Needle", + "category": "Organization", + "offset": 10, + "length": 12, + "confidenceScore": 0.75 + }, + { + "text": "2", + "category": "Quantity", + "subcategory": "Number", + "offset": 23, + "length": 1, + "confidenceScore": 0.8 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json new file mode 100644 index 000000000000..ecb5818e578a --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "name": "Seattle", + "matches": [ + { + "text": "Seattle", + "offset": 26, + "length": 7, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Seattle", + "url": "https://en.wikipedia.org/wiki/Seattle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "name": "Microsoft", + "matches": [ + { + "text": "Microsoft", + "offset": 10, + "length": 9, + "confidenceScore": 0.18 + } + ], + "language": "en", + "id": "Microsoft", + "url": "https://en.wikipedia.org/wiki/Microsoft", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "name": "Space Needle", + "matches": [ + { + "text": "Space Needle", + "offset": 10, + "length": 12, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Space Needle", + "url": "https://en.wikipedia.org/wiki/Space_Needle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json new file mode 100644 index 000000000000..77ea9c553b0e --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "fr", + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "language": "es", + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "keyPhrases": [ + "world", + "input text" + ], + "warnings": [] + }, + { + "id": "2", + "keyPhrases": [ + "monde" + ], + "warnings": [] + }, + { + "id": "3", + "keyPhrases": [ + "carretera", + "tráfico", + "día" + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json new file mode 100644 index 000000000000..3cee2aef5bd1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "countryHint": "US", + "id": "1", + "text": "Hello world" + }, + { + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "detectedLanguage": { + "name": "English", + "iso6391Name": "en", + "confidenceScore": 1 + }, + "warnings": [] + }, + { + "id": "2", + "detectedLanguage": { + "name": "French", + "iso6391Name": "fr", + "confidenceScore": 1 + }, + "warnings": [] + }, + { + "id": "3", + "detectedLanguage": { + "name": "Spanish", + "iso6391Name": "es", + "confidenceScore": 1 + }, + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json new file mode 100644 index 000000000000..680392d80510 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "en", + "id": "2", + "text": "It's incredibly sunny outside! I'm so happy." + }, + { + "language": "en", + "id": "3", + "text": "Pike place market is my favorite Seattle attraction." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "Hello world.", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.07, + "neutral": 0.91, + "negative": 0.02 + }, + "offset": 0, + "length": 12 + }, + { + "text": "This is some input text that I love.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 13, + "length": 36 + } + ], + "warnings": [] + }, + { + "id": "2", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "It's incredibly sunny outside!", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.04, + "neutral": 0.93, + "negative": 0.03 + }, + "offset": 0, + "length": 30 + }, + { + "text": "I'm so happy.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 31, + "length": 13 + } + ], + "warnings": [] + }, + { + "id": "3", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "Pike place market is my favorite Seattle attraction.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 0, + "length": 52 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json index 5267da0e37c2..6fd63f97971f 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json @@ -37,25 +37,17 @@ "x-ms-examples": { "Create Account": { "$ref": "./examples/CreateAccount.json" + }, + "Create Account Min": { + "$ref": "./examples/CreateAccountMin.json" } }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { "name": "account", @@ -67,10 +59,10 @@ "description": "The parameters to provide for the created account." }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -113,21 +105,10 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { "name": "account", @@ -139,10 +120,10 @@ "description": "The parameters to provide for the created account." }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -179,27 +160,16 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -233,27 +203,16 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -286,17 +245,13 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -332,10 +287,10 @@ }, "parameters": [ { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -371,27 +326,16 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -424,21 +368,10 @@ }, "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { "name": "parameters", @@ -451,10 +384,10 @@ "description": "regenerate key parameters." }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -488,10 +421,10 @@ }, "parameters": [ { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -521,27 +454,16 @@ "operationId": "Accounts_ListSkus", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -574,27 +496,16 @@ "operationId": "Accounts_GetUsages", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "maxLength": 64, - "minLength": 2, - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "description": "The name of Cognitive Services account." + "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/usageFilterParameter" @@ -630,7 +541,7 @@ }, "parameters": [ { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -661,10 +572,10 @@ }, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/locationParameter" @@ -704,10 +615,10 @@ }, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -729,6 +640,164 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "GetPrivateEndpointConnection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Update the state of specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "PutPrivateEndpointConnection": { + "$ref": "./examples/PutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the Cognitive Services account.", + "x-ms-examples": { + "DeletePrivateEndpointConnection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_List", + "description": "Gets the private link resources that need to be created for a Cognitive Services account.", + "x-ms-examples": { + "ListPrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } } }, "definitions": { @@ -885,6 +954,25 @@ }, "description": "The storage accounts for this resource." }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection associated with the Cognitive Services account." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this account. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, "apiProperties": { "$ref": "#/definitions/CognitiveServicesAccountApiProperties", "description": "The api properties for special APIs." @@ -1548,22 +1636,153 @@ } }, "description": "The user owned storage for Cognitive Services account." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource group ids." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The private link resource display name.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." } }, "parameters": { - "subscriptionIdParameter": { - "name": "subscriptionId", + "accountNameParameter": { + "name": "accountName", "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 2017-04-18" + "maxLength": 64, + "minLength": 2, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", + "description": "The name of Cognitive Services account.", + "x-ms-parameter-location": "method" }, "locationParameter": { "name": "location", @@ -1580,6 +1799,14 @@ "type": "string", "description": "An OData filter expression that describes a subset of usages to return. The supported parameter is name.value (name of the metric, can have an or of multiple names).", "x-ms-parameter-location": "method" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Cognitive Services Account", + "x-ms-parameter-location": "method" } } } diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json index 65fe3be46b54..87b331d5d723 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "location": "westus", "parameters": { "subdomainName": "contosodemoapp1", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json index a3b259417294..d8e7bd7b7cb7 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "location": "westus", "parameters": { "skus": [ diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json index f92907ff8513..ac85d6759873 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", "accountName": "testCreate1", "account": { "location": "West US", @@ -21,7 +21,7 @@ }, "userOwnedStorage": [ { - "resourceId": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.Storage/storageAccounts/felixwatest" + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" } ] }, @@ -33,7 +33,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -56,7 +56,7 @@ }, "userOwnedStorage": [ { - "resourceId": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.Storage/storageAccounts/felixwatest" + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" } ] }, @@ -69,7 +69,7 @@ }, "201": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -92,7 +92,7 @@ }, "userOwnedStorage": [ { - "resourceId": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.Storage/storageAccounts/felixwatest" + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" } ] }, @@ -105,7 +105,7 @@ }, "202": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -128,7 +128,7 @@ }, "userOwnedStorage": [ { - "resourceId": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.Storage/storageAccounts/felixwatest" + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" } ] }, diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json new file mode 100644 index 000000000000..3225934ca1d0 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2017-04-18", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "testCreate1", + "account": { + "location": "West US", + "kind": "CognitiveServices", + "sku": { + "name": "S0" + }, + "properties": {}, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T08%3A00%3A05.445595Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json index cd0244d1544b..423e42527176 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", "accountName": "PropTest01" }, "responses": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeletePrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..00f982aa7123 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json index 3c3d1b7d3ed4..53d581055e1f 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json @@ -1,15 +1,15 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/felixwatest1", - "name": "felixwatest1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", "sku": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetPrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..89b0fccf74d9 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json index 40250856670b..0c3a973f67fe 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2017-04-18", "subscriptionId": "5a4f5c2e-6983-4ccb-bd34-2196d5b5bbd3", - "resourceGroupName": "felixwa-01", + "resourceGroupName": "myResourceGroup", "accountName": "TestUsage02" }, "responses": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json index d6f656c9ef28..72504ce83dc1 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json @@ -1,16 +1,16 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/felixwatest1", - "name": "felixwatest1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", "sku": { @@ -29,7 +29,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/TestPropertyWU2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/TestPropertyWU2", "name": "TestPropertyWU2", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json index 56d3877c167c..5757a59b23d3 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json @@ -1,14 +1,14 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", @@ -24,7 +24,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/CrisProd", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/CrisProd", "name": "CrisProd", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", @@ -43,7 +43,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/rayrptest0308", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/rayrptest0308", "name": "rayrptest0308", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", @@ -59,7 +59,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/raytest02", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/raytest02", "name": "raytest02", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json index d28be3e1f80b..db539b01627a 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListPrivateLinkResources.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..c35569afa3c2 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.CognitiveServices/accounts/sto2527/privateLinkResources/account", + "name": "blob", + "type": "Microsoft.CognitiveServices/accounts/privateLinkResources", + "properties": { + "groupId": "account", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.cognitiveservices.azure.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json index 2beeae951aca..5b8fdce3a688 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/PutPrivateEndpointConnection.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..f1153309ffb0 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/PutPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "sto9699", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.CognitiveServices/accounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.CognitiveServices/accounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json index 541529babd1d..0d12fa3590ca 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount", "parameters": { "keyName": "Key2" } diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json index e4ba6c016f26..eca3f0d116f3 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "resourceGroupName": "bvttest", "accountName": "bingSearch", "account": { @@ -13,7 +13,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", @@ -31,7 +31,7 @@ }, "202": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", diff --git a/specification/cognitiveservices/resource-manager/readme.cli.md b/specification/cognitiveservices/resource-manager/readme.cli.md new file mode 100644 index 000000000000..f17e2a6fd19e --- /dev/null +++ b/specification/cognitiveservices/resource-manager/readme.cli.md @@ -0,0 +1,24 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + test-scenario: + - name: /Accounts/put/Create Account Min + - name: /Accounts/put/Create Account + disabled: true + - name: /Accounts/get/Get Usages + - name: /Accounts/get/List SKUs + - name: /Accounts/get/Get Account + - name: /Accounts/get/List Accounts by Resource Group + - name: /Accounts/get/List Accounts by Subscription + - name: /ResourceSkus/get/Regenerate Keys + - name: /Operations/get/Get Operations + - name: /Accounts/post/Regenerate Keys + - name: /Accounts/post/List Keys + - name: /Accounts/patch/Update Account + disabled: true + - name: //post/Check SKU Availability + - name: //post/Check SKU Availability + - name: /Accounts/delete/Delete Account \ No newline at end of file diff --git a/specification/common-types/resource-management/v1/privatelinks.json b/specification/common-types/resource-management/v1/privatelinks.json new file mode 100644 index 000000000000..d6cb94988421 --- /dev/null +++ b/specification/common-types/resource-management/v1/privatelinks.json @@ -0,0 +1,174 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "./types.json#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "./types.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connection associated with the specified storage account" + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json index 5204705be158..66735a54b30d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json @@ -3318,7 +3318,7 @@ "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." } }, - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4005,7 +4005,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "UpgradePolicy": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json index 6aad2238b4a0..939d08a0e931 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json @@ -3425,7 +3425,7 @@ "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." } }, - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4147,7 +4147,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "UpgradePolicy": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json index c7fac4e111ba..9cb759885ebe 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json @@ -4489,7 +4489,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4579,7 +4579,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS" @@ -5303,7 +5303,7 @@ "capacity": { "type": "integer", "format": "int64", - "description": "Specifies the number of virtual machines in the scale set." + "description": "Specifies the number of virtual machines in the scale set. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." } }, "description": "Describes a virtual machine scale set sku." @@ -6106,7 +6106,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -6546,7 +6546,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -6574,7 +6574,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index b5ac7173a036..0cb61c92bf74 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -5253,7 +5253,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5343,7 +5343,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS" @@ -6129,7 +6129,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -6769,7 +6769,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7250,7 +7250,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -7278,7 +7278,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json index 63aa5067caf8..e0f8125e5df8 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json @@ -5432,7 +5432,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5522,7 +5522,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6318,7 +6318,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -6968,7 +6968,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7473,7 +7473,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7505,7 +7505,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json index e7be3a3930dc..6ec3b585ce05 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json @@ -5572,7 +5572,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5662,7 +5662,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6516,7 +6516,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -7196,7 +7196,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7716,7 +7716,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7748,7 +7748,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index c89b023b2579..11aeaedc3244 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -5590,7 +5590,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5680,7 +5680,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6086,7 +6086,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -6547,7 +6547,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -7227,7 +7227,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7763,7 +7763,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7795,7 +7795,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 871d390b7f43..6ab37f15f568 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -6466,7 +6466,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -6556,7 +6556,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types ", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types ", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6970,7 +6970,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -7498,7 +7498,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -8223,7 +8223,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -8767,7 +8767,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", @@ -8807,7 +8807,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json index 4b09489a0bf1..377484903de9 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json @@ -104,4 +104,4 @@ } } } - } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json index e579007e9eaa..c568990135eb 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json @@ -54,7 +54,7 @@ "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The filter to apply on the operation. Only **location** filter is supported currently." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json index 84387c9e29f6..b125a7a590f1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json @@ -6994,7 +6994,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set" }, "KeyVaultSecretReference": { "properties": { @@ -7092,7 +7092,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", "enum": [ "Standard_LRS", "Premium_LRS", @@ -7486,7 +7486,7 @@ }, "customData": { "type": "string", - "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

**Note: Do not pass any secrets or passwords in customData property**

This property cannot be updated after the VM is created.

customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/en-us/blog/custom-data-and-cloud-init-on-windows-azure/)

For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

**Note: Do not pass any secrets or passwords in customData property**

This property cannot be updated after the VM is created.

customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://docs.microsoft.com/azure/virtual-machines/custom-data)

For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" }, "windowsConfiguration": { "$ref": "#/definitions/WindowsConfiguration", @@ -7522,7 +7522,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -8050,7 +8050,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -8764,7 +8764,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -9349,7 +9349,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines.NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", @@ -9389,7 +9389,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json index f26d12155db6..6d6aa15f3f12 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json @@ -104,4 +104,4 @@ } } } - } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json index 271186b61e9a..ad40111669f1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/gallery.json @@ -2223,9 +2223,6 @@ "description": "The id of the gallery artifact version source. Can specify a disk uri, snapshot uri, or user image." } }, - "required": [ - "id" - ], "description": "The gallery artifact version source." }, "GalleryOSDiskImage": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json new file mode 100644 index 000000000000..dbeecd29ccce --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json @@ -0,0 +1,11037 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.Compute/operations": { + "get": { + "tags": [ + "ComputeOperations" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ComputeOperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}": { + "put": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_CreateOrUpdate", + "description": "Create or update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "Parameters supplied to the Create Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + }, + "x-ms-examples": { + "Create an availability set.": { + "$ref": "./examples/CreateAnAvailabilitySet.json" + } + } + }, + "patch": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Update", + "description": "Update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySetUpdate" + }, + "description": "Parameters supplied to the Update Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + }, + "delete": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Delete", + "description": "Delete an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Get", + "description": "Retrieves information about an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListBySubscription", + "description": "Lists all availability sets in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_List", + "description": "Lists all availability sets in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListAvailableSizes", + "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}": { + "put": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_CreateOrUpdate", + "description": "Create or update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "Parameters supplied to the Create Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create or Update a proximity placement group.": { + "$ref": "./examples/CreateOrUpdateAProximityPlacementGroup.json" + } + } + }, + "patch": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Update", + "description": "Update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupUpdate" + }, + "description": "Parameters supplied to the Update Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/PatchAProximityPlacementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Delete", + "description": "Delete a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/DeleteAProximityPlacementGroup.json" + } + } + }, + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Get", + "description": "Retrieves information about a proximity placement group .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "includeColocationStatus", + "in": "query", + "required": false, + "type": "string", + "description": "includeColocationStatus=true enables fetching the colocation status of all the resources in the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/GetAProximityPlacementGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListBySubscription", + "description": "Lists all proximity placement groups in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListByResourceGroup", + "description": "Lists all proximity placement groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInAResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}": { + "put": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_CreateOrUpdate", + "description": "Create or update a dedicated host group. For details of Dedicated Host and Dedicated Host Groups please see [Dedicated Host Documentation] (https://go.microsoft.com/fwlink/?linkid=2082596)", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "Parameters supplied to the Create Dedicated Host Group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host group.": { + "$ref": "./examples/CreateOrUpdateADedicatedHostGroup.json" + } + } + }, + "patch": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Update", + "description": "Update an dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroupUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + } + }, + "delete": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Delete", + "description": "Delete a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Get", + "description": "Retrieves information about a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create a dedicated host group.": { + "$ref": "./examples/GetADedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListByResourceGroup", + "description": "Lists all of the dedicated host groups in the specified resource group. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListBySubscription", + "description": "Lists all of the dedicated host groups in the subscription. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}": { + "put": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_CreateOrUpdate", + "description": "Create or update a dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "Parameters supplied to the Create Dedicated Host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host .": { + "$ref": "./examples/CreateOrUpdateADedicatedHost.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Update", + "description": "Update an dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Delete", + "description": "Delete a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Get", + "description": "Retrieves information about a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Get a dedicated host.": { + "$ref": "./examples/GetADedicatedHost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts": { + "get": { + "tags": [ + "DedicatedHost" + ], + "operationId": "DedicatedHosts_ListByHostGroup", + "description": "Lists all of the dedicated hosts in the specified dedicated host group. Use the nextLink property in the response to get the next page of dedicated hosts.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListBySubscription", + "description": "Lists all of the SSH public keys in the subscription. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListByResourceGroup", + "description": "Lists all of the SSH public keys in the specified resource group. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}": { + "put": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Create", + "description": "Creates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "Parameters supplied to create the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Create a new SSH public key resource.": { + "$ref": "./examples/CreateAnSshPublicKey.json" + } + } + }, + "patch": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Update", + "description": "Updates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyUpdateResource" + }, + "description": "Parameters supplied to update the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + } + }, + "delete": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Delete", + "description": "Delete an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Get", + "description": "Retrieves information about an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Get an ssh public key.": { + "$ref": "./examples/GetAnSshPublicKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}/generateKeyPair": { + "post": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_GenerateKeyPair", + "description": "Generates and returns a public/private key pair and populates the SSH public key resource with the public key. The length of the key will be 3072 bits. This operation can only be performed once per SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyGenerateKeyPairResult" + } + } + }, + "x-ms-examples": { + "Generate an SSH key pair.": { + "$ref": "./examples/GenerateSshKeyPair.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_Get", + "description": "Gets a virtual machine extension image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListTypes", + "description": "Gets a list of virtual machine extension image types.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListVersions", + "description": "Gets a list of virtual machine extension image versions.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + }, + "x-ms-odata": "#/definitions/VirtualMachineExtensionImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be created or updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Update", + "description": "The operation to update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be deleted." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions": { + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_List", + "description": "The operation to get all extensions of a Virtual Machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_Get", + "description": "Gets a virtual machine image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU version." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_List", + "description": "Gets a list of all virtual machine image versions for the specified location, publisher, offer, and SKU.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListOffers", + "description": "Gets a list of virtual machine image offers for the specified location and publisher.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListPublishers", + "description": "Gets a list of virtual machine image publishers for the specified Azure location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListSkus", + "description": "Gets a list of virtual machine image SKUs for the specified location, publisher, and offer.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usage_List", + "description": "Gets, for the specified location, the current compute resource usage information as well as the limits for compute resources under the subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListByLocation", + "description": "Gets all the virtual machines under the specified subscription for the specified location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which virtual machines under the subscription are queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-examples": { + "Lists all the virtual machines under the specified subscription for the specified location.": { + "$ref": "./examples/ListVirtualMachinesInASubscriptionByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "This API is deprecated. Use [Resources Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}": { + "put": { + "tags": [ + "Images" + ], + "operationId": "Images_CreateOrUpdate", + "description": "Create or update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Image" + }, + "description": "Parameters supplied to the Create Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Create a virtual machine image from a blob.": { + "$ref": "./examples/CreateAnImageFromABlob.json" + }, + "Create a virtual machine image from a snapshot.": { + "$ref": "./examples/CreateAnImageFromASnapshot.json" + }, + "Create a virtual machine image from a managed disk.": { + "$ref": "./examples/CreateAnImageFromAManagedDisk.json" + }, + "Create a virtual machine image from an existing virtual machine.": { + "$ref": "./examples/CreateAnImageFromAVM.json" + }, + "Create a virtual machine image that includes a data disk from a blob.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromABlob.json" + }, + "Create a virtual machine image that includes a data disk from a snapshot.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json" + }, + "Create a virtual machine image that includes a data disk from a managed disk.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json" + }, + "Create a virtual machine image from a blob with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromABlobWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a snapshot with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a managed disk with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Images" + ], + "operationId": "Images_Update", + "description": "Update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUpdate" + }, + "description": "Parameters supplied to the Update Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates tags of an Image.": { + "$ref": "./examples/UpdateImage.json" + } + } + }, + "delete": { + "tags": [ + "Images" + ], + "operationId": "Images_Delete", + "description": "Deletes an Image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_Get", + "description": "Gets an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Get information about a virtual machine image.": { + "$ref": "./examples/GetInformationAboutAnImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_ListByResourceGroup", + "description": "Gets the list of images under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a resource group.": { + "$ref": "./examples/ListImagesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_List", + "description": "Gets the list of Images in the subscription. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a subscription.": { + "$ref": "./examples/ListImagesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Capture", + "description": "Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureParameters" + }, + "description": "Parameters supplied to the Capture Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}": { + "put": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_CreateOrUpdate", + "description": "The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "Parameters supplied to the Create Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a vm with password authentication.": { + "$ref": "./examples/CreateAVmWithPasswordAuthentication.json" + }, + "Create a vm with ssh authentication.": { + "$ref": "./examples/CreateAVmWithSshAuthentication.json" + }, + "Create a vm with premium storage.": { + "$ref": "./examples/CreateAVmWithPremiumStorage.json" + }, + "Create a vm in an availability set.": { + "$ref": "./examples/CreateAVmInAnAvailabilitySet.json" + }, + "Create a vm with boot diagnostics.": { + "$ref": "./examples/CreateAVmWithBootDiagnostics.json" + }, + "Create a vm with empty data disks.": { + "$ref": "./examples/CreateAVmWithEmptyDataDisks.json" + }, + "Create a vm with a marketplace image plan.": { + "$ref": "./examples/CreateAVmWithAMarketplaceImagePlan.json" + }, + "Create a vm from a custom image.": { + "$ref": "./examples/CreateAVmFromACustomImage.json" + }, + "Create a platform-image vm with unmanaged os and data disks.": { + "$ref": "./examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json" + }, + "Create a custom-image vm from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a vm with ephemeral os disk.": { + "$ref": "./examples/CreateAVmWithADiffOsDisk.json" + }, + "Create a vm with DiskEncryptionSet resource id in the os disk and data disk.": { + "$ref": "./examples/CreateAVmWithDiskEncryptionSetResource.json" + }, + "Create a vm with ephemeral os disk provisioning in Resource disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json" + }, + "Create a vm with ephemeral os disk provisioning in Cache disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Update", + "description": "The operation to update a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a VM by detaching data disk": { + "$ref": "./examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Delete", + "description": "The operation to delete a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Get", + "description": "Retrieves information about the model view or the instance view of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-examples": { + "Get a Virtual Machine.": { + "$ref": "./examples/GetVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_InstanceView", + "description": "Retrieves information about the run-time state of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceView" + } + } + }, + "x-ms-examples": { + "Get Virtual Machine Instance View.": { + "$ref": "./examples/GetVirtualMachineInstanceView.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ConvertToManagedDisks", + "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Deallocate", + "description": "Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Generalize", + "description": "Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation.
For Windows, please refer to [Create a managed image of a generalized VM in Azure](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/capture-image-resource).
For Linux, please refer to [How to create an image of a virtual machine or VHD](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/capture-image).", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Generalize a Virtual Machine.": { + "$ref": "./examples/GeneralizeVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_List", + "description": "Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAll", + "description": "Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "statusOnly", + "in": "query", + "required": false, + "type": "string", + "description": "statusOnly=true enables fetching run time status of all Virtual Machines in the subscription." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAvailableSizes", + "description": "Lists all available virtual machine sizes to which the specified virtual machine can be resized.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Lists all available virtual machine sizes to which the specified virtual machine can be resized": { + "$ref": "./examples/ListAvailableVmSizes_VirtualMachines.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PowerOff", + "description": "The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reapply": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reapply", + "description": "The operation to reapply a virtual machine's state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reapply the state of a virtual machine.": { + "$ref": "./examples/ReapplyVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Restart", + "description": "The operation to restart a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Start", + "description": "The operation to start a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Redeploy", + "description": "Shuts down the virtual machine, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reimage", + "description": "Reimages the virtual machine which has an ephemeral OS disk back to its initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineReimageParameters" + }, + "description": "Parameters supplied to the Reimage Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reimage a Virtual Machine.": { + "$ref": "./examples/ReimageVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PerformMaintenance", + "description": "The operation to perform maintenance on a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/simulateEviction": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_simulateEviction", + "description": "The operation to simulate the eviction of spot virtual machine. The eviction will occur within 30 minutes of calling the API", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Simulate Eviction a virtual machine.": { + "$ref": "./examples/SimulateEvictionOfVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}": { + "put": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_CreateOrUpdate", + "description": "Create or update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a scale set with password authentication.": { + "$ref": "./examples/CreateAScaleSetWithPasswordAuthentication.json" + }, + "Create a scale set with ssh authentication.": { + "$ref": "./examples/CreateAScaleSetWithSshAuthentication.json" + }, + "Create a scale set with premium storage.": { + "$ref": "./examples/CreateAScaleSetWithPremiumStorage.json" + }, + "Create a scale set with empty data disks on each vm.": { + "$ref": "./examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json" + }, + "Create a scale set with an azure load balancer.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureLoadBalancer.json" + }, + "Create a scale set with an azure application gateway.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureApplicationGateway.json" + }, + "Create a scale set with boot diagnostics.": { + "$ref": "./examples/CreateAScaleSetWithBootDiagnostics.json" + }, + "Create a scale set with a marketplace image plan.": { + "$ref": "./examples/CreateAScaleSetWithAMarketplaceImagePlan.json" + }, + "Create a scale set from a custom image.": { + "$ref": "./examples/CreateAScaleSetFromACustomImage.json" + }, + "Create a platform-image scale set with unmanaged os disks.": { + "$ref": "./examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json" + }, + "Create a custom-image scale set from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a scale set with virtual machines in different zones.": { + "$ref": "./examples/CreateAScaleSetWithVMsInDifferentZones.json" + }, + "Create a scale set with ephemeral os disks.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" + }, + "Create a scale set with terminate scheduled events enabled.": { + "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" + }, + "Create a scale set with DiskEncryptionSet resource in os disk and data disk.": { + "$ref": "./examples/CreateAScalesetWithDiskEncryptionSetResource.json" + }, + "Create a scale set with ephemeral os disks using placement property.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Update", + "description": "Update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdate" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Delete", + "description": "Deletes a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Get", + "description": "Display information about a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Deallocate", + "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_DeleteInstances", + "description": "Deletes virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetInstanceView", + "description": "Gets the status of a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_List", + "description": "Gets a list of all VM scale sets under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_CreateOrUpdate", + "description": "The operation to create or update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "Parameters supplied to the Create VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Update", + "description": "The operation to update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionUpdate" + }, + "description": "Parameters supplied to the Update VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be deleted." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_List", + "description": "Gets a list of all extensions in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListAll", + "description": "Gets a list of all VM Scale Sets in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of VM Scale Sets. Do this till nextLink is null to fetch all the VM Scale Sets.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListWithLinkResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListSkus", + "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListSkusResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetOSUpgradeHistory", + "description": "Gets list of OS upgrades on a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListOSUpgradeHistory" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PowerOff", + "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Restart", + "description": "Restarts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Start", + "description": "Starts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Shuts down all the virtual machines in the virtual machine scale set, moves them to a new node, and powers them back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PerformMaintenance", + "description": "Perform maintenance on one or more virtual machines in a VM scale set. Operation on instances which are not eligible for perform maintenance will be failed. Please refer to best practices for more details: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_UpdateInstances", + "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Reimage", + "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmScaleSetReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetReimageParameters" + }, + "description": "Parameters for Reimaging VM ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ReimageAll", + "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_Cancel", + "description": "Cancels the current virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartOSUpgrade", + "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartExtensionUpgrade", + "description": "Starts a rolling upgrade to move all extensions for all virtual machine scale set instances to the latest available extension version. Instances which are already running the latest extension versions are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start an extension rolling upgrade.": { + "$ref": "./examples/VMScaleSetExtensionRollingUpgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest": { + "get": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_GetLatest", + "description": "Gets the status of the latest virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RollingUpgradeStatusInfo" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ForceRecoveryServiceFabricPlatformUpdateDomainWalk", + "description": "Manual platform update domain walk to update virtual machines in a service fabric virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "platformUpdateDomain", + "in": "query", + "required": true, + "type": "integer", + "description": "The platform update domain for which a manual recovery walk is requested" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryWalkResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/convertToSinglePlacementGroup": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ConvertToSinglePlacementGroup", + "description": "Converts SinglePlacementGroup property to false for a existing virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VMScaleSetConvertToSinglePlacementGroupInput" + }, + "description": "The input object for ConvertToSinglePlacementGroup API." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/setOrchestrationServiceState": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_SetOrchestrationServiceState", + "description": "Changes ServiceState property for a given service", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OrchestrationServiceStateInput" + }, + "description": "The input object for SetOrchestrationServiceState API." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_CreateOrUpdate", + "description": "The operation to create or update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Update", + "description": "The operation to update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/UpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Delete", + "description": "The operation to delete the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/DeleteVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Get", + "description": "The operation to get the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_List", + "description": "The operation to get all extensions of an instance in Virtual Machine Scaleset.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List extensions in Vmss instance.": { + "$ref": "./examples/ListVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Reimage", + "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmScaleSetVMReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + }, + "description": "Parameters for the Reimaging Virtual machine in ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_ReimageAll", + "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Deallocate", + "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Update", + "description": "Updates a virtual machine of a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "Parameters supplied to the Update Virtual Machine Scale Sets VM operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Delete", + "description": "Deletes a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Get", + "description": "Gets a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_GetInstanceView", + "description": "Gets the status of a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_List", + "description": "Gets a list of all virtual machines in a VM scale sets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply to the operation." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "The list parameters." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PowerOff", + "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Restart", + "description": "Restarts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Start", + "description": "Starts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Redeploy", + "description": "Shuts down the virtual machine in the virtual machine scale set, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance", + "description": "Performs maintenance on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/simulateEviction": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_simulateEviction", + "description": "The operation to simulate the eviction of spot virtual machine in a VM scale set. The eviction will occur within 30 minutes of calling the API", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Simulate Eviction a virtual machine.": { + "$ref": "./examples/SimulateEvictionOfVmssVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportRequestRateByInterval", + "x-ms-examples": { + "Export logs which contain all Api requests made to Compute Resource Provider within the given time period broken down by intervals.": { + "$ref": "./examples/LogAnalyticsRequestRateByInterval.json" + } + }, + "description": "Export logs that show Api requests made by this subscription in the given time window to show throttling activities.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RequestRateByIntervalInput" + }, + "description": "Parameters supplied to the LogAnalytics getRequestRateByInterval Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportThrottledRequests", + "x-ms-examples": { + "Export logs which contain all throttled Api requests made to Compute Resource Provider within the given time period.": { + "$ref": "./examples/LogAnalyticsThrottledRequests.json" + } + }, + "description": "Export logs that show total throttled Api requests for this subscription in the given time window.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThrottledRequestsInput" + }, + "description": "Parameters supplied to the LogAnalytics getThrottledRequests Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "ComputeOperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ComputeOperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "ComputeOperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ComputeOperationValueDisplay" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "ComputeOperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "HyperVGenerationType": { + "type": "string", + "description": "Specifies the HyperVGeneration Type", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationTypes", + "modelAsString": true + } + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "AvailabilitySetProperties": { + "properties": { + "platformUpdateDomainCount": { + "type": "integer", + "format": "int32", + "description": "Update Domain count." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machines in the availability set." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the availability set should be assigned to.

Minimum api-version: 2018-04-01." + }, + "statuses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a resource." + }, + "AvailabilitySetSkuType": { + "type": "string", + "description": "Specifies the sku of an Availability Set. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.", + "enum": [ + "Classic", + "Aligned" + ], + "x-ms-enum": { + "name": "AvailabilitySetSkuTypes", + "modelAsString": true + } + }, + "AvailabilitySet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "AvailabilitySetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Only tags may be updated." + }, + "AvailabilitySetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "The list of availability sets" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of AvailabilitySets. Call ListNext() with this URI to fetch the next page of AvailabilitySets." + } + }, + "required": [ + "value" + ], + "description": "The List Availability Set operation response." + }, + "SubResourceWithColocationStatus": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "colocationStatus": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "Describes colocation status of a resource in the Proximity Placement Group." + } + } + }, + "ProximityPlacementGroupProperties": { + "properties": { + "proximityPlacementGroupType": { + "type": "string", + "description": "Specifies the type of the proximity placement group.

Possible values are:

**Standard** : Co-locate resources within an Azure region or Availability Zone.

**Ultra** : For future use.", + "enum": [ + "Standard", + "Ultra" + ], + "x-ms-enum": { + "name": "ProximityPlacementGroupType", + "modelAsString": true + } + }, + "virtualMachines": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machines in the proximity placement group." + }, + "virtualMachineScaleSets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machine scale sets in the proximity placement group." + }, + "availabilitySets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all availability sets in the proximity placement group." + }, + "colocationStatus": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "Describes colocation status of the Proximity Placement Group." + } + }, + "description": "Describes the properties of a Proximity Placement Group." + }, + "ProximityPlacementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProximityPlacementGroupProperties", + "description": "Describes the properties of a Proximity Placement Group." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupUpdate": { + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "The list of proximity placement groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of proximity placement groups." + } + }, + "required": [ + "value" + ], + "description": "The List Proximity Placement Group operation response." + }, + "DedicatedHostGroupProperties": { + "properties": { + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 3, + "description": "Number of fault domains that the host group can span." + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all dedicated hosts in the dedicated host group." + } + }, + "required": [ + "platformFaultDomainCount" + ], + "description": "Dedicated Host Group Properties." + }, + "DedicatedHostGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated hosts should be assigned to.

Currently, a dedicated host can only be added to a dedicated host group at creation time. An existing dedicated host cannot be added to another dedicated host group." + }, + "DedicatedHostGroupUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated host should be assigned to. Only tags may be updated." + }, + "DedicatedHostGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "The list of dedicated host groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Dedicated Host Groups. Call ListNext() with this URI to fetch the next page of Dedicated Host Groups." + } + }, + "required": [ + "value" + ], + "description": "The List Dedicated Host Group with resource group response." + }, + "DedicatedHostLicenseType": { + "type": "string", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**", + "enum": [ + "None", + "Windows_Server_Hybrid", + "Windows_Server_Perpetual" + ], + "x-ms-enum": { + "name": "DedicatedHostLicenseTypes", + "modelAsString": false + } + }, + "DedicatedHostAllocatableVM": { + "properties": { + "vmSize": { + "type": "string", + "description": "VM size in terms of which the unutilized capacity is represented." + }, + "count": { + "type": "number", + "format": "double", + "description": "Maximum number of VMs of size vmSize that can fit in the dedicated host's remaining capacity." + } + }, + "description": "Represents the dedicated host unutilized capacity in terms of a specific VM size." + }, + "DedicatedHostAvailableCapacity": { + "properties": { + "allocatableVMs": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostAllocatableVM" + }, + "description": "The unutilized capacity of the dedicated host represented in terms of each VM size that is allowed to be deployed to the dedicated host." + } + }, + "description": "Dedicated host unutilized capacity." + }, + "DedicatedHostInstanceView": { + "properties": { + "assetId": { + "readOnly": true, + "type": "string", + "description": "Specifies the unique id of the dedicated physical machine on which the dedicated host resides." + }, + "availableCapacity": { + "$ref": "#/definitions/DedicatedHostAvailableCapacity", + "description": "Unutilized capacity of the dedicated host." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a dedicated host." + }, + "DedicatedHostProperties": { + "properties": { + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 2, + "description": "Fault domain of the dedicated host within a dedicated host group." + }, + "autoReplaceOnFailure": { + "type": "boolean", + "description": "Specifies whether the dedicated host should be replaced automatically in case of a failure. The value is defaulted to 'true' when not provided." + }, + "hostId": { + "readOnly": true, + "type": "string", + "description": "A unique id generated and assigned to the dedicated host by the platform.

Does not change throughout the lifetime of the host." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all virtual machines in the Dedicated Host." + }, + "licenseType": { + "$ref": "#/definitions/DedicatedHostLicenseType", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**" + }, + "provisioningTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date when the host was first provisioned." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/DedicatedHostInstanceView", + "readOnly": true, + "description": "The dedicated host instance view." + } + }, + "description": "Properties of the dedicated host." + }, + "DedicatedHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the dedicated host for Hardware Generation and VM family. Only name is required to be set. List Microsoft.Compute SKUs for a list of possible values." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ], + "description": "Specifies information about the Dedicated host." + }, + "DedicatedHostUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host. Only tags, autoReplaceOnFailure and licenseType may be updated." + }, + "DedicatedHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "The list of dedicated hosts" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of dedicated hosts. Call ListNext() with this URI to fetch the next page of dedicated hosts." + } + }, + "required": [ + "value" + ], + "description": "The list dedicated host operation response." + }, + "SshPublicKeyGenerateKeyPairResult": { + "properties": { + "privateKey": { + "type": "string", + "description": "Private key portion of the key pair used to authenticate to a virtual machine through ssh. The private key is returned in RFC3447 format and should be treated as a secret." + }, + "publicKey": { + "type": "string", + "description": "Public key portion of the key pair used to authenticate to a virtual machine through ssh. The public key is in ssh-rsa format." + }, + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{SshPublicKeyName}" + } + }, + "required": [ + "privateKey", + "publicKey", + "id" + ], + "description": "Response from generation of an SSH key pair." + }, + "SshPublicKeyResourceProperties": { + "properties": { + "publicKey": { + "type": "string", + "description": "SSH public key used to authenticate to a virtual machine through ssh. If this property is not initially provided when the resource is created, the publicKey property will be populated when generateKeyPair is called. If the public key is provided upon resource creation, the provided public key needs to be at least 2048-bit and in ssh-rsa format." + } + }, + "description": "Properties of the SSH public key." + }, + "SshPublicKeyResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeyUpdateResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeysGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "The list of SSH public keys" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of SSH public keys. Call ListNext() with this URI to fetch the next page of SSH public keys." + } + }, + "required": [ + "value" + ], + "description": "The list SSH public keys operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "description": "The name of the virtual machine size." + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "The number of cores supported by the virtual machine size." + }, + "osDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The OS disk size, in MB, allowed by the virtual machine size." + }, + "resourceDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The resource disk size, in MB, allowed by the virtual machine size." + }, + "memoryInMB": { + "type": "integer", + "format": "int32", + "description": "The amount of memory, in MB, supported by the virtual machine size." + }, + "maxDataDiskCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of data disks that can be attached to the virtual machine size." + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes." + } + }, + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineExtensionImageProperties": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system this extension supports." + }, + "computeRole": { + "type": "string", + "description": "The type of role (IaaS or PaaS) this extension supports." + }, + "handlerSchema": { + "type": "string", + "description": "The schema defined by publisher, where extension consumers should provide settings in a matching schema." + }, + "vmScaleSetEnabled": { + "type": "boolean", + "description": "Whether the extension can be used on xRP VMScaleSets. By default existing extensions are usable on scalesets, but there might be cases where a publisher wants to explicitly indicate the extension is only enabled for CRP VMs but not VMSS." + }, + "supportsMultipleExtensions": { + "type": "boolean", + "description": "Whether the handler can support multiple extensions." + } + }, + "required": [ + "operatingSystem", + "computeRole", + "handlerSchema" + ], + "description": "Describes the properties of a Virtual Machine Extension Image." + }, + "VirtualMachineExtensionImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension Image." + }, + "VirtualMachineImageResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource." + }, + "location": { + "type": "string", + "description": "The supported Azure location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Specifies the tags that are assigned to the virtual machine. For more information about using tags, see [Using tags to organize your Azure resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md)." + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Virtual machine image resource information." + }, + "VirtualMachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The virtual machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "substatuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine extension." + }, + "VirtualMachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView", + "description": "The virtual machine extension instance view." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtension": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The list of extensions" + } + }, + "description": "The List Extension operation response" + }, + "PurchasePlan": { + "properties": { + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "OSDiskImage": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system of the osDiskImage.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "operatingSystem" + ], + "description": "Contains the os disk image information." + }, + "DataDiskImage": { + "properties": { + "lun": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "description": "Contains the data disk images information." + }, + "AutomaticOSUpgradeProperties": { + "properties": { + "automaticOSUpgradeSupported": { + "type": "boolean", + "description": "Specifies whether automatic OS upgrade is supported on the image." + } + }, + "required": [ + "automaticOSUpgradeSupported" + ], + "description": "Describes automatic OS upgrade properties on the image." + }, + "VirtualMachineImageProperties": { + "properties": { + "plan": { + "$ref": "#/definitions/PurchasePlan" + }, + "osDiskImage": { + "$ref": "#/definitions/OSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImage" + } + }, + "automaticOSUpgradeProperties": { + "$ref": "#/definitions/AutomaticOSUpgradeProperties" + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType" + } + }, + "description": "Describes the properties of a Virtual Machine Image." + }, + "VirtualMachineImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineImageResource" + } + ], + "description": "Describes a Virtual Machine Image." + }, + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "properties": { + "unit": { + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "type": "integer", + "format": "int32", + "description": "The current usage of the resource." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes Compute Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of compute resource usages." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information." + } + }, + "required": [ + "value" + ], + "description": "The List Usages operation response." + }, + "VirtualMachineReimageParameters": { + "properties": { + "tempDisk": { + "type": "boolean", + "description": "Specifies whether to reimage temp disk. Default value: false. Note: This temp disk reimage parameter is only supported for VM/VMSS with Ephemeral OS disk." + } + }, + "description": "Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged" + }, + "VirtualMachineCaptureParameters": { + "properties": { + "vhdPrefix": { + "type": "string", + "description": "The captured virtual hard disk's name prefix." + }, + "destinationContainerName": { + "type": "string", + "description": "The destination container name." + }, + "overwriteVhds": { + "type": "boolean", + "description": "Specifies whether to overwrite the destination virtual hard disk, in case of conflict." + } + }, + "required": [ + "vhdPrefix", + "destinationContainerName", + "overwriteVhds" + ], + "description": "Capture Virtual Machine parameters." + }, + "VirtualMachineCaptureResult": { + "properties": { + "$schema": { + "readOnly": true, + "type": "string", + "description": "the schema of the captured virtual machine" + }, + "contentVersion": { + "readOnly": true, + "type": "string", + "description": "the version of the content" + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "parameters of the captured virtual machine" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "type": "object", + "description": "resource item" + }, + "description": "a list of resource items of the captured virtual machine" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Output of virtual machine capture operation." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + } + }, + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "HardwareProfile": { + "properties": { + "vmSize": { + "type": "string", + "description": "Specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

The available VM sizes depend on region and availability set. For a list of available sizes use these APIs:

[List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)

[List all available virtual machine sizes in a region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)

[List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes)", + "enum": [ + "Basic_A0", + "Basic_A1", + "Basic_A2", + "Basic_A3", + "Basic_A4", + "Standard_A0", + "Standard_A1", + "Standard_A2", + "Standard_A3", + "Standard_A4", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A9", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2_v2", + "Standard_A4_v2", + "Standard_A8_v2", + "Standard_A2m_v2", + "Standard_A4m_v2", + "Standard_A8m_v2", + "Standard_B1s", + "Standard_B1ms", + "Standard_B2s", + "Standard_B2ms", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D2", + "Standard_D3", + "Standard_D4", + "Standard_D11", + "Standard_D12", + "Standard_D13", + "Standard_D14", + "Standard_D1_v2", + "Standard_D2_v2", + "Standard_D3_v2", + "Standard_D4_v2", + "Standard_D5_v2", + "Standard_D2_v3", + "Standard_D4_v3", + "Standard_D8_v3", + "Standard_D16_v3", + "Standard_D32_v3", + "Standard_D64_v3", + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_D64s_v3", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_D15_v2", + "Standard_DS1", + "Standard_DS2", + "Standard_DS3", + "Standard_DS4", + "Standard_DS11", + "Standard_DS12", + "Standard_DS13", + "Standard_DS14", + "Standard_DS1_v2", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS11_v2", + "Standard_DS12_v2", + "Standard_DS13_v2", + "Standard_DS14_v2", + "Standard_DS15_v2", + "Standard_DS13-4_v2", + "Standard_DS13-2_v2", + "Standard_DS14-8_v2", + "Standard_DS14-4_v2", + "Standard_E2_v3", + "Standard_E4_v3", + "Standard_E8_v3", + "Standard_E16_v3", + "Standard_E32_v3", + "Standard_E64_v3", + "Standard_E2s_v3", + "Standard_E4s_v3", + "Standard_E8s_v3", + "Standard_E16s_v3", + "Standard_E32s_v3", + "Standard_E64s_v3", + "Standard_E32-16_v3", + "Standard_E32-8s_v3", + "Standard_E64-32s_v3", + "Standard_E64-16s_v3", + "Standard_F1", + "Standard_F2", + "Standard_F4", + "Standard_F8", + "Standard_F16", + "Standard_F1s", + "Standard_F2s", + "Standard_F4s", + "Standard_F8s", + "Standard_F16s", + "Standard_F2s_v2", + "Standard_F4s_v2", + "Standard_F8s_v2", + "Standard_F16s_v2", + "Standard_F32s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_GS4-8", + "Standard_GS4-4", + "Standard_GS5-16", + "Standard_GS5-8", + "Standard_H8", + "Standard_H16", + "Standard_H8m", + "Standard_H16m", + "Standard_H16r", + "Standard_H16mr", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s", + "Standard_M64s", + "Standard_M64ms", + "Standard_M128s", + "Standard_M128ms", + "Standard_M64-32ms", + "Standard_M64-16ms", + "Standard_M128-64ms", + "Standard_M128-32ms", + "Standard_NC6", + "Standard_NC12", + "Standard_NC24", + "Standard_NC24r", + "Standard_NC6s_v2", + "Standard_NC12s_v2", + "Standard_NC24s_v2", + "Standard_NC24rs_v2", + "Standard_NC6s_v3", + "Standard_NC12s_v3", + "Standard_NC24s_v3", + "Standard_NC24rs_v3", + "Standard_ND6s", + "Standard_ND12s", + "Standard_ND24s", + "Standard_ND24rs", + "Standard_NV6", + "Standard_NV12", + "Standard_NV24" + ], + "x-ms-enum": { + "name": "VirtualMachineSizeTypes", + "modelAsString": true + } + } + }, + "description": "Specifies the hardware settings for the virtual machine." + }, + "ImageReference": { + "properties": { + "publisher": { + "type": "string", + "description": "The image publisher." + }, + "offer": { + "type": "string", + "description": "Specifies the offer of the platform image or marketplace image used to create the virtual machine." + }, + "sku": { + "type": "string", + "description": "The image SKU." + }, + "version": { + "type": "string", + "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." + }, + "exactVersion": { + "type": "string", + "readOnly": true, + "description": "Specifies in decimal numbers, the version of platform image or marketplace image used to create the virtual machine. This readonly field differs from 'version', only if the value specified in 'version' field is 'latest'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." + }, + "KeyVaultSecretReference": { + "properties": { + "secretUrl": { + "type": "string", + "description": "The URL referencing a secret in a Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the secret." + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Secret" + }, + "DiskEncryptionSetParameters": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk.

NOTE: The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details." + }, + "KeyVaultKeyReference": { + "properties": { + "keyUrl": { + "type": "string", + "description": "The URL referencing a key encryption key in Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the key." + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Key" + }, + "DiskEncryptionSettings": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultSecretReference", + "description": "Specifies the location of the disk encryption key, which is a Key Vault Secret." + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultKeyReference", + "description": "Specifies the location of the key encryption key in Key Vault." + }, + "enabled": { + "type": "boolean", + "description": "Specifies whether disk encryption should be enabled on the virtual machine." + } + }, + "description": "Describes a Encryption Settings for a Disk" + }, + "VirtualHardDisk": { + "properties": { + "uri": { + "type": "string", + "description": "Specifies the virtual hard disk's uri." + } + }, + "description": "Describes the uri of a disk." + }, + "Caching": { + "type": "string", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "CreateOption": { + "type": "string", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.", + "enum": [ + "FromImage", + "Empty", + "Attach" + ], + "x-ms-enum": { + "name": "DiskCreateOptionTypes", + "modelAsString": true + } + }, + "StorageAccountType": { + "type": "string", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountTypes", + "modelAsString": true + } + }, + "DiffDiskOption": { + "type": "string", + "description": "Specifies the ephemeral disk option for operating system disk.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "DiffDiskOptions", + "modelAsString": true + } + }, + "DiffDiskPlacement": { + "type": "string", + "description": "Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk or resource disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements", + "enum": [ + "CacheDisk", + "ResourceDisk" + ], + "x-ms-enum": { + "name": "DiffDiskPlacement", + "modelAsString": true + } + }, + "DiffDiskSettings": { + "properties": { + "option": { + "$ref": "#/definitions/DiffDiskOption", + "description": "Specifies the ephemeral disk settings for operating system disk." + }, + "placement": { + "$ref": "#/definitions/DiffDiskPlacement", + "description": "Specifies the ephemeral disk placement for operating system disk.

Possible values are:

**CacheDisk**

**ResourceDisk**

Default: **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** is used.

Refer to VM size documentation for Windows VM at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sizes and Linux VM at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/sizes to check which VM sizes exposes a cache disk." + } + }, + "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk.

NOTE: The ephemeral disk settings can only be specified for managed disk." + }, + "ManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "The parameters of a managed disk." + }, + "OSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "encryptionSettings": { + "$ref": "#/definitions/DiskEncryptionSettings", + "description": "Specifies the encryption settings for the OS Disk.

Minimum api-version: 2015-06-15" + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None** for Standard storage. **ReadOnly** for Premium storage." + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "DataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + }, + "toBeDetached": { + "type": "boolean", + "description": "Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset" + }, + "diskIOPSReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + }, + "diskMBpsReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a data disk." + }, + "StorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/OSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Specifies the storage settings for the virtual machine disks." + }, + "AdditionalCapabilities": { + "properties": { + "ultraSSDEnabled": { + "type": "boolean", + "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." + } + }, + "description": "Enables or disables a capability on the virtual machine or virtual machine scale set." + }, + "AdditionalUnattendContent": { + "properties": { + "passName": { + "type": "string", + "description": "The pass name. Currently, the only allowable value is OobeSystem.", + "enum": [ + "OobeSystem" + ], + "x-ms-enum": { + "name": "PassNames", + "modelAsString": false + } + }, + "componentName": { + "type": "string", + "description": "The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.", + "enum": [ + "Microsoft-Windows-Shell-Setup" + ], + "x-ms-enum": { + "name": "ComponentNames", + "modelAsString": false + } + }, + "settingName": { + "type": "string", + "description": "Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.", + "enum": [ + "AutoLogon", + "FirstLogonCommands" + ], + "x-ms-enum": { + "name": "SettingNames", + "modelAsString": false + } + }, + "content": { + "type": "string", + "description": "Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted." + } + }, + "description": "Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied." + }, + "WinRMListener": { + "properties": { + "protocol": { + "type": "string", + "description": "Specifies the protocol of WinRM listener.

Possible values are:
**http**

**https**", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ProtocolTypes", + "modelAsString": false + } + }, + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + } + }, + "description": "Describes Protocol and thumbprint of Windows Remote Management listener" + }, + "WinRMConfiguration": { + "properties": { + "listeners": { + "type": "array", + "items": { + "$ref": "#/definitions/WinRMListener" + }, + "description": "The list of Windows Remote Management listeners" + } + }, + "description": "Describes Windows Remote Management configuration of the VM" + }, + "WindowsConfiguration": { + "properties": { + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + }, + "enableAutomaticUpdates": { + "type": "boolean", + "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true.

For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning." + }, + "timeZone": { + "type": "string", + "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".

Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.getsystemtimezones)." + }, + "additionalUnattendContent": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalUnattendContent" + }, + "description": "Specifies additional base-64 encoded XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup." + }, + "winRM": { + "$ref": "#/definitions/WinRMConfiguration", + "description": "Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell." + } + }, + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "SshPublicKey": { + "properties": { + "path": { + "type": "string", + "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys" + }, + "keyData": { + "type": "string", + "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.

For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + } + }, + "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed." + }, + "SshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with linux based VMs." + } + }, + "description": "SSH configuration for Linux based VMs running on Azure" + }, + "LinuxConfiguration": { + "properties": { + "disablePasswordAuthentication": { + "type": "boolean", + "description": "Specifies whether password authentication should be disabled." + }, + "ssh": { + "$ref": "#/definitions/SshConfiguration", + "description": "Specifies the ssh key configuration for a Linux OS." + }, + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + } + }, + "description": "Specifies the Linux operating system settings on the virtual machine.

For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "VaultCertificate": { + "properties": { + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + }, + "certificateStore": { + "type": "string", + "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted." + } + }, + "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." + }, + "VaultSecretGroup": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates." + }, + "vaultCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultCertificate" + }, + "description": "The list of key vault references in SourceVault which contain certificates." + } + }, + "description": "Describes a set of certificates which are all in the same Key Vault." + }, + "OSProfile": { + "properties": { + "computerName": { + "type": "string", + "description": "Specifies the host OS name of the virtual machine.

This name cannot be updated after the VM is created.

**Max-length (Windows):** 15 characters

**Max-length (Linux):** 64 characters.

For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions)." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

This property cannot be updated after the VM is created.

**Windows-only restriction:** Cannot end in \".\"

**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

**Minimum-length (Linux):** 1 character

**Max-length (Linux):** 64 characters

**Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    **Note: Do not pass any secrets or passwords in customData property**

    This property cannot be updated after the VM is created.

    customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/en-us/blog/custom-data-and-cloud-init-on-windows-azure/)

    For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machine." + }, + "allowExtensionOperations": { + "type": "boolean", + "description": "Specifies whether extension operations should be allowed on the virtual machine.

    This may only be set to False when no extensions are present on the virtual machine." + }, + "requireGuestProvisionSignal": { + "type": "boolean", + "description": "Specifies whether the guest provision signal is required to infer provision success of the virtual machine." + } + }, + "description": "Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, + "NetworkInterfaceReferenceProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + } + }, + "description": "Describes a network interface reference properties." + }, + "NetworkInterfaceReference": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceReferenceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a network interface reference." + }, + "NetworkProfile": { + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceReference" + }, + "description": "Specifies the list of resource Ids for the network interfaces associated with the virtual machine." + } + }, + "description": "Specifies the network interfaces of the virtual machine." + }, + "BootDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether boot diagnostics should be enabled on the Virtual Machine." + }, + "storageUri": { + "type": "string", + "description": "Uri of the storage account to use for placing the console output and screenshot." + } + }, + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "DiagnosticsProfile": { + "properties": { + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnostics", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + } + }, + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "priority": { + "type": "string", + "description": "Specifies the priority for a standalone virtual machine or the virtual machines in the scale set.

    'Low' enum will be deprecated in the future, please use 'Spot' as the enum to deploy Azure Spot VM/VMSS.", + "enum": [ + "Regular", + "Low", + "Spot" + ], + "x-ms-enum": { + "name": "VirtualMachinePriorityTypes", + "modelAsString": true + } + }, + "evictionPolicy": { + "type": "string", + "description": "Specifies the eviction policy for the Azure Spot VM/VMSS", + "enum": [ + "Deallocate", + "Delete" + ], + "x-ms-enum": { + "name": "VirtualMachineEvictionPolicyTypes", + "modelAsString": true + } + }, + "BillingProfile": { + "properties": { + "maxPrice": { + "type": "number", + "format": "double", + "description": "Specifies the maximum price you are willing to pay for a Azure Spot VM/VMSS. This price is in US Dollars.

    This price will be compared with the current Azure Spot price for the VM size. Also, the prices are compared at the time of create/update of Azure Spot VM/VMSS and the operation will only succeed if the maxPrice is greater than the current Azure Spot price.

    The maxPrice will also be used for evicting a Azure Spot VM/VMSS if the current Azure Spot price goes beyond the maxPrice after creation of VM/VMSS.

    Possible values are:

    - Any decimal value greater than zero. Example: 0.01538

    -1 – indicates default price to be up-to on-demand.

    You can set the maxPrice to -1 to indicate that the Azure Spot VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.

    Minimum api-version: 2019-03-01." + } + }, + "description": "Specifies the billing related details of a Azure Spot VM or VMSS.

    Minimum api-version: 2019-03-01." + }, + "VirtualMachineExtensionHandlerInstanceView": { + "properties": { + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "The extension handler status." + } + }, + "description": "The instance view of a virtual machine extension handler." + }, + "VirtualMachineAgentInstanceView": { + "properties": { + "vmAgentVersion": { + "type": "string", + "description": "The VM Agent full version." + }, + "extensionHandlers": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionHandlerInstanceView" + }, + "description": "The virtual machine extension handler instance view." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the VM Agent running on the virtual machine." + }, + "DiskInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSettings" + }, + "description": "Specifies the encryption settings for the OS Disk.

    Minimum api-version: 2015-06-15" + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the disk." + }, + "BootDiagnosticsInstanceView": { + "properties": { + "consoleScreenshotBlobUri": { + "readOnly": true, + "type": "string", + "description": "The console screenshot blob URI." + }, + "serialConsoleLogBlobUri": { + "readOnly": true, + "type": "string", + "description": "The Linux serial console log blob Uri." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The boot diagnostics status information for the VM.

    NOTE: It will be set only if there are errors encountered in enabling boot diagnostics." + } + }, + "description": "The instance view of a virtual machine boot diagnostics." + }, + "VirtualMachineIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the virtual machine." + }, + "MaintenanceRedeployStatus": { + "properties": { + "isCustomerInitiatedMaintenanceAllowed": { + "type": "boolean", + "description": "True, if customer is allowed to perform Maintenance." + }, + "preMaintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Pre Maintenance Window." + }, + "preMaintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Pre Maintenance Window." + }, + "maintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Maintenance Window." + }, + "maintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Maintenance Window." + }, + "lastOperationResultCode": { + "type": "string", + "description": "The Last Maintenance Operation Result Code.", + "enum": [ + "None", + "RetryLater", + "MaintenanceAborted", + "MaintenanceCompleted" + ], + "x-ms-enum": { + "name": "MaintenanceOperationResultCodeTypes", + "modelAsString": false + } + }, + "lastOperationMessage": { + "type": "string", + "description": "Message returned for the last Maintenance Operation." + } + }, + "description": "Maintenance Operation Status." + }, + "VirtualMachineInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the update domain of the virtual machine." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the fault domain of the virtual machine." + }, + "computerName": { + "type": "string", + "description": "The computer name assigned to the virtual machine." + }, + "osName": { + "type": "string", + "description": "The Operating System running on the virtual machine." + }, + "osVersion": { + "type": "string", + "description": "The version of Operating System running on the virtual machine." + }, + "hyperVGeneration": { + "type": "string", + "description": "Specifies the HyperVGeneration Type associated with a resource", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationType", + "modelAsString": true + } + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The virtual machine disk information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine." + }, + "VirtualMachineProperties": { + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. The availability set to which the VM is being added should be under the same resource group as the availability set resource. An existing VM cannot be added to an availability set.

    This property cannot exist along with a non-null properties.virtualMachineScaleSet reference." + }, + "virtualMachineScaleSet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set.

    This property cannot exist along with a non-null properties.availabilitySet reference.

    Minimum api‐version: 2019‐03‐01" + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "priority": { + "$ref": "#/definitions/priority", + "description": "Specifies the priority for the virtual machine.

    Minimum api-version: 2019-03-01" + }, + "evictionPolicy": { + "$ref": "#/definitions/evictionPolicy", + "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

    For Azure Spot virtual machines, the only supported value is 'Deallocate' and the minimum api-version is 2019-03-01.

    For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot virtual machine.

    Minimum api-version: 2019-03-01." + }, + "host": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the dedicated host that the virtual machine resides in.

    Minimum api-version: 2018-10-01." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands." + } + }, + "description": "Describes the properties of a Virtual Machine." + }, + "VirtualMachine": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "VirtualMachineUpdate": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Update." + }, + "VirtualMachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "The list of virtual machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of Virtual Machines." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The sku name." + }, + "tier": { + "type": "string", + "description": "Specifies the tier of virtual machines in a scale set.

    Possible Values:

    **Standard**

    **Basic**" + }, + "capacity": { + "type": "integer", + "format": "int64", + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." + }, + "AutomaticOSUpgradePolicy": { + "properties": { + "enableAutomaticOSUpgrade": { + "type": "boolean", + "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available. Default value is false.

    If this is set to true for Windows based scale sets, [enableAutomaticUpdates](https://docs.microsoft.com/dotnet/api/microsoft.azure.management.compute.models.windowsconfiguration.enableautomaticupdates?view=azure-dotnet) is automatically set to false and cannot be set to true." + }, + "disableAutomaticRollback": { + "type": "boolean", + "description": "Whether OS image rollback feature should be disabled. Default value is false." + } + }, + "description": "The configuration parameters used for performing automatic OS upgrade." + }, + "UpgradePolicy": { + "properties": { + "mode": { + "type": "string", + "description": "Specifies the mode of an upgrade to virtual machines in the scale set.

    Possible values are:

    **Manual** - You control the application of updates to virtual machines in the scale set. You do this by using the manualUpgrade action.

    **Automatic** - All virtual machines in the scale set are automatically updated at the same time.", + "enum": [ + "Automatic", + "Manual", + "Rolling" + ], + "x-ms-enum": { + "name": "UpgradeMode", + "modelAsString": false + } + }, + "rollingUpgradePolicy": { + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "automaticOSUpgradePolicy": { + "$ref": "#/definitions/AutomaticOSUpgradePolicy", + "description": "Configuration parameters used for performing automatic OS Upgrade." + } + }, + "description": "Describes an upgrade policy - automatic, manual, or rolling." + }, + "RollingUpgradePolicy": { + "properties": { + "maxBatchInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. The default value for this parameter is 20%." + }, + "maxUnhealthyInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. The default value for this parameter is 20%." + }, + "maxUnhealthyUpgradedInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. The default value for this parameter is 20%." + }, + "pauseTimeBetweenBatches": { + "type": "string", + "description": "The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. The default value is 0 seconds (PT0S)." + } + }, + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "ScaleInPolicy": { + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Default", + "OldestVM", + "NewestVM" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetScaleInRules", + "modelAsString": true + } + }, + "description": "The rules to be followed when scaling-in a virtual machine scale set.

    Possible values are:

    **Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

    **OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

    **NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

    " + } + }, + "description": "Describes a scale-in policy for a virtual machine scale set." + }, + "ImageOSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "The OS State.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false, + "values": [ + { + "value": "Generalized", + "description": "Generalized image. Needs to be provisioned during deployment time." + }, + { + "value": "Specialized", + "description": "Specialized image. Contains already provisioned OS Disk." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "osType", + "osState" + ], + "description": "Describes an Operating System disk." + }, + "ImageDataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "lun" + ], + "description": "Describes a data disk." + }, + "ImageDisk": { + "properties": { + "snapshot": { + "$ref": "#/definitions/SubResource", + "description": "The snapshot." + }, + "managedDisk": { + "$ref": "#/definitions/SubResource", + "description": "The managedDisk." + }, + "blobUri": { + "type": "string", + "description": "The Virtual Hard Disk." + }, + "caching": { + "type": "string", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed image disk." + } + }, + "description": "Describes a image disk." + }, + "ImageStorageProfile": { + "properties": { + "osDisk": { + "$ref": "#/definitions/ImageOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "zoneResilient": { + "type": "boolean", + "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)." + } + }, + "description": "Describes a storage profile." + }, + "ImageProperties": { + "properties": { + "sourceVirtualMachine": { + "$ref": "#/definitions/SubResource", + "description": "The source virtual machine from which Image is created." + }, + "storageProfile": { + "$ref": "#/definitions/ImageStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state." + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType", + "description": "Gets the HyperVGenerationType of the VirtualMachine created from the image" + } + }, + "description": "Describes the properties of an Image." + }, + "Image": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "ImageUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "The source user image virtual hard disk. Only tags may be updated." + }, + "ImageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + }, + "description": "The list of Images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Images. Call ListNext() with this to fetch the next page of Images." + } + }, + "required": [ + "value" + ], + "description": "The List Image operation response." + }, + "VirtualMachineScaleSetIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine scale set identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine scale set. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine scale set.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the virtual machine scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the virtual machine scale set." + }, + "VirtualMachineScaleSetOSProfile": { + "properties": { + "computerNamePrefix": { + "type": "string", + "description": "Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

    **Windows-only restriction:** Cannot end in \".\"

    **Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

    **Minimum-length (Linux):** 1 character

    **Max-length (Linux):** 64 characters

    **Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetUpdateOSProfile": { + "properties": { + "customData": { + "type": "string", + "description": "A base-64 encoded string of custom data." + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "The Windows Configuration of the OS profile." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "The Linux Configuration of the OS profile." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "The List of certificates for addition to the VM." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "description": "Describes the parameters of a ScaleSet managed disk." + }, + "VirtualMachineScaleSetOSDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machines in the scale set should be created.

    The only allowed value is: **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral disk Settings for the operating system disk used by the virtual machine scale set." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "Specifies information about the unmanaged user image to base the scale set on." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the container urls that are used to store operating system disks for the scale set." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Describes a virtual machine scale set operating system disk." + }, + "VirtualMachineScaleSetUpdateOSDisk": { + "properties": { + "caching": { + "$ref": "#/definitions/Caching", + "description": "The caching type." + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of virtual hard disk container uris." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "description": "Describes virtual machine scale set operating system disk Update Object. This should be used for Updating VMSS OS Disk." + }, + "VirtualMachineScaleSetDataDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "The create option." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a virtual machine scale set data disk." + }, + "VirtualMachineScaleSetStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "Specifies the parameters that are used to add data disks to the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "VirtualMachineScaleSetUpdateStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "The image reference." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSDisk", + "description": "The OS disk." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "The data disks." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "ApiEntityReference": { + "properties": { + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." + } + }, + "description": "The API entity reference." + }, + "VirtualMachineScaleSetIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "Specifies the identifier of the subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to inbound Nat pools of the load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer" + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetUpdateIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "The subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary IP Configuration in case the network interface has more than one IP Configuration." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The application gateway backend address pools." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer backend address pools." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer inbound nat pools." + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetIPConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network" + }, + "VirtualMachineScaleSetNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIPConfiguration" + }, + "description": "Specifies the IP configurations of the network interface." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "required": [ + "ipConfigurations" + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Whether this is a primary NIC on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfiguration" + }, + "description": "The virtual machine scale set IP Configuration." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "description": "Describes a virtual machine scale set updatable network profile's IP configuration.Use this object for updating network profile's IP Configuration." + }, + "VirtualMachineScaleSetNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetUpdateNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetNetworkConfigurationDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses" + } + }, + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The Domain name label.The concatenation of the domain name label and vm index will be the domain name labels of the PublicIPAddress resources that will be created" + } + }, + "required": [ + "domainNameLabel" + ], + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetIpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "IP tag associated with the public IP. Example: SQL, Storage etc." + } + }, + "description": "Contains the IP tag associated with the public IP address." + }, + "VirtualMachineScaleSetPublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationProperties" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties" + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIpTag" + }, + "description": "The list of IP tags associated with the public IP address." + }, + "publicIPPrefix": { + "$ref": "#/definitions/SubResource", + "description": "The PublicIPPrefix from which to allocate publicIP addresses." + }, + "publicIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetUpdateNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "provisionAfterExtensions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of extension names after which this extension needs to be provisioned." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtensionUpdate": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtensionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The list of VM scale set extensions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of VM scale set extensions. Call ListNext() with this to fetch the next page of VM scale set extensions." + } + }, + "required": [ + "value" + ], + "description": "The List VM scale set extension operation response." + }, + "VirtualMachineScaleSetExtensionProfile": { + "properties": { + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The virtual machine scale set child extension resources." + } + }, + "description": "Describes a virtual machine scale set extension profile." + }, + "VirtualMachineScaleSetVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetOSProfile", + "description": "Specifies the operating system settings for the virtual machines in the scale set." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", + "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "Specifies a collection of settings for extensions installed on virtual machines in the scale set." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "priority": { + "$ref": "#/definitions/priority", + "description": "Specifies the priority for the virtual machines in the scale set.

    Minimum api-version: 2017-10-30-preview" + }, + "evictionPolicy": { + "$ref": "#/definitions/evictionPolicy", + "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

    For Azure Spot virtual machines, the only supported value is 'Deallocate' and the minimum api-version is 2019-03-01.

    For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetUpdateVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSProfile", + "description": "The virtual machine scale set OS profile." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateStorageProfile", + "description": "The virtual machine scale set storage profile." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkProfile", + "description": "The virtual machine scale set network profile." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "The virtual machine scale set diagnostics profile." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "The virtual machine scale set extension profile." + }, + "licenseType": { + "type": "string", + "description": "The license type, which is for bring your own license scenario." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProfile", + "description": "The virtual machine profile." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "uniqueId": { + "readOnly": true, + "type": "string", + "description": "Specifies the ID which uniquely identifies a Virtual Machine Scale Set." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." + }, + "zoneBalance": { + "type": "boolean", + "description": "Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count for each placement group." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetUpdateProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile", + "description": "The virtual machine profile." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

    Minimum api-version: 2018-04-01." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSet": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMReimageParameters": { + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetReimageParameters": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetUpdate": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "The purchase plan when deploying a virtual machine scale set from VM Marketplace images." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMInstanceIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineScaleSetVMInstanceRequiredIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids." + } + }, + "required": [ + "instanceIds" + ], + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineStatusCodeCount": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The instance view status code." + }, + "count": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances having a particular status code." + } + }, + "description": "The status code and count of the virtual machine scale set instance view status summary." + }, + "VirtualMachineScaleSetInstanceViewStatusesSummary": { + "properties": { + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Instance view statuses summary for virtual machines of a virtual machine scale set." + }, + "VirtualMachineScaleSetVMExtensionsSummary": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The extension name." + }, + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Extensions summary for virtual machines of a virtual machine scale set." + }, + "OrchestrationServiceSummary": { + "properties": { + "serviceName": { + "type": "string", + "readOnly": true, + "description": "The name of the service.", + "enum": [ + "AutomaticRepairs" + ], + "x-ms-enum": { + "name": "OrchestrationServiceNames", + "modelAsString": true + } + }, + "serviceState": { + "type": "string", + "readOnly": true, + "description": "The current state of the service.", + "enum": [ + "NotRunning", + "Running", + "Suspended" + ], + "x-ms-enum": { + "name": "OrchestrationServiceState", + "modelAsString": true + } + } + }, + "description": "Summary for an orchestration service of a virtual machine scale set." + }, + "VirtualMachineScaleSetInstanceView": { + "properties": { + "virtualMachine": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceViewStatusesSummary", + "readOnly": true, + "description": "The instance view status summary for the virtual machine scale set." + }, + "extensions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsSummary" + }, + "description": "The extensions information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "orchestrationServices": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/OrchestrationServiceSummary" + }, + "description": "The orchestration services information." + } + }, + "description": "The instance view of a virtual machine scale set." + }, + "VirtualMachineScaleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of VMSS." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetListWithLinkResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of Virtual Machine Scale Sets." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetSkuCapacity": { + "properties": { + "minimum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum capacity." + }, + "maximum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum capacity that can be set." + }, + "defaultCapacity": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default capacity." + }, + "scaleType": { + "readOnly": true, + "type": "string", + "description": "The scale type applicable to the sku.", + "enum": [ + "Automatic", + "None" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetSkuScaleType", + "modelAsString": false + } + } + }, + "description": "Describes scaling information of a sku." + }, + "VirtualMachineScaleSetSku": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the sku applies to." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The Sku." + }, + "capacity": { + "$ref": "#/definitions/VirtualMachineScaleSetSkuCapacity", + "readOnly": true, + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes an available virtual machine scale set sku." + }, + "VirtualMachineScaleSetListSkusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetSku" + }, + "description": "The list of skus available for the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set Skus. Call ListNext() with this to fetch the next page of VMSS Skus." + } + }, + "required": [ + "value" + ], + "description": "The Virtual Machine Scale Set List Skus operation response." + }, + "RollbackStatusInfo": { + "properties": { + "successfullyRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which have been successfully rolled back." + }, + "failedRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which failed to rollback." + }, + "rollbackError": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error details if OS rollback failed." + } + }, + "description": "Information about rollback on failed VM instances after a OS Upgrade operation." + }, + "UpgradeOperationHistoryStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "UpgradeState", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "UpgradeOperationHistoricalStatusInfoProperties": { + "properties": { + "runningStatus": { + "$ref": "#/definitions/UpgradeOperationHistoryStatus", + "readOnly": true, + "description": "Information about the overall status of the upgrade operation." + }, + "progress": { + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "readOnly": true, + "description": "Counts of the VMs in each state." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error Details for this upgrade if there are any." + }, + "startedBy": { + "readOnly": true, + "type": "string", + "description": "Invoker of the Upgrade Operation", + "enum": [ + "Unknown", + "User", + "Platform" + ], + "x-ms-enum": { + "name": "UpgradeOperationInvoker", + "modelAsString": false + } + }, + "targetImageReference": { + "$ref": "#/definitions/ImageReference", + "readOnly": true, + "description": "Image Reference details" + }, + "rollbackInfo": { + "$ref": "#/definitions/RollbackStatusInfo", + "readOnly": true, + "description": "Information about OS rollback if performed" + } + }, + "description": "Describes each OS upgrade on the Virtual Machine Scale Set." + }, + "UpgradeOperationHistoricalStatusInfo": { + "properties": { + "properties": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfoProperties", + "readOnly": true, + "description": "Information about the properties of the upgrade operation." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + } + }, + "description": "Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetListOSUpgradeHistory": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfo" + }, + "description": "The list of OS upgrades performed on the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of OS Upgrade History. Call ListNext() with this to fetch the next page of history of upgrades." + } + }, + "required": [ + "value" + ], + "description": "List of Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetVMProperties": { + "properties": { + "latestModelApplied": { + "readOnly": true, + "type": "boolean", + "description": "Specifies whether the latest model has been applied to the virtual machine." + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Azure VM unique ID." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the virtual machine." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "networkProfileConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetVMNetworkProfileConfiguration", + "description": "Specifies the network profile configuration of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "modelDefinitionApplied": { + "readOnly": true, + "type": "string", + "description": "Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine." + }, + "protectionPolicy": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProtectionPolicy", + "description": "Specifies the protection policy of the virtual machine." + } + }, + "description": "Describes the properties of a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVM": { + "properties": { + "instanceId": { + "readOnly": true, + "type": "string", + "description": "The virtual machine instance ID." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The virtual machine SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetVMProperties" + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVMInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "The Update Domain count." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "The Fault Domain count." + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The disks information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "vmHealth": { + "readOnly": true, + "$ref": "#/definitions/VirtualMachineHealthStatus", + "description": "The health status for the VM." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "placementGroupId": { + "type": "string", + "description": "The placement group in which the VM is running. If the VM is deallocated it will not have a placementGroupId." + } + }, + "description": "The instance view of a virtual machine scale set VM." + }, + "VirtualMachineScaleSetVMNetworkProfileConfiguration": { + "properties": { + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set VM network profile." + }, + "VirtualMachineScaleSetVMProtectionPolicy": { + "properties": { + "protectFromScaleIn": { + "type": "boolean", + "description": "Indicates that the virtual machine scale set VM shouldn't be considered for deletion during a scale-in operation." + }, + "protectFromScaleSetActions": { + "type": "boolean", + "description": "Indicates that model updates or actions (including scale-in) initiated on the virtual machine scale set should not be applied to the virtual machine scale set VM." + } + }, + "description": "The protection policy of a virtual machine scale set VM." + }, + "ScheduledEventsProfile": { + "type": "object", + "properties": { + "terminateNotificationProfile": { + "$ref": "#/definitions/TerminateNotificationProfile", + "description": "Specifies Terminate Scheduled Event related configurations." + } + } + }, + "TerminateNotificationProfile": { + "type": "object", + "properties": { + "notBeforeTimeout": { + "type": "string", + "description": "Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)" + }, + "enable": { + "type": "boolean", + "description": "Specifies whether the Terminate Scheduled event is enabled or disabled." + } + } + }, + "VirtualMachineHealthStatus": { + "properties": { + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The health status information for the VM." + } + }, + "description": "The health status of the VM." + }, + "VirtualMachineScaleSetVMListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "The list of virtual machine scale sets VMs." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to fetch the next page of VMSS VMs" + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine Scale Set VMs operation response." + }, + "RollingUpgradeStatusInfo": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RollingUpgradeStatusInfoProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeStatusInfoProperties": { + "properties": { + "policy": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The rolling upgrade policies applied for this upgrade." + }, + "runningStatus": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeRunningStatus", + "description": "Information about the current running state of the overall upgrade." + }, + "progress": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/ApiError", + "description": "Error details for this upgrade, if there are any." + } + }, + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeRunningStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "RollingUpgradeStatusCode", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "lastAction": { + "type": "string", + "readOnly": true, + "description": "The last action performed on the rolling upgrade.", + "enum": [ + "Start", + "Cancel" + ], + "x-ms-enum": { + "name": "RollingUpgradeActionType", + "modelAsString": false + } + }, + "lastActionTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last action time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "RollingUpgradeProgressInfo": { + "properties": { + "successfulInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have been successfully upgraded." + }, + "failedInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have failed to be upgraded successfully." + }, + "inProgressInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that are currently being upgraded." + }, + "pendingInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have not yet begun to be upgraded." + } + }, + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "RecoveryWalkResponse": { + "properties": { + "walkPerformed": { + "type": "boolean", + "readOnly": true, + "description": "Whether the recovery walk was performed" + }, + "nextPlatformUpdateDomain": { + "type": "integer", + "readOnly": true, + "description": "The next update domain that needs to be walked. Null means walk spanning all update domains has been completed" + } + }, + "description": "Response after calling a manual recovery walk" + }, + "RequestRateByIntervalInput": { + "properties": { + "intervalLength": { + "type": "string", + "description": "Interval value in minutes used to create LogAnalytics call rate logs.", + "enum": [ + "ThreeMins", + "FiveMins", + "ThirtyMins", + "SixtyMins" + ], + "x-ms-enum": { + "name": "IntervalInMins", + "modelAsString": false + } + } + }, + "required": [ + "intervalLength" + ], + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getRequestRateByInterval Api." + }, + "ThrottledRequestsInput": { + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getThrottledRequests Api." + }, + "LogAnalyticsInputBase": { + "properties": { + "blobContainerSasUri": { + "type": "string", + "description": "SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to." + }, + "fromTime": { + "type": "string", + "format": "date-time", + "description": "From time of the query" + }, + "toTime": { + "type": "string", + "format": "date-time", + "description": "To time of the query" + }, + "groupByThrottlePolicy": { + "type": "boolean", + "description": "Group query result by Throttle Policy applied." + }, + "groupByOperationName": { + "type": "boolean", + "description": "Group query result by Operation Name." + }, + "groupByResourceName": { + "type": "boolean", + "description": "Group query result by Resource Name." + } + }, + "required": [ + "blobContainerSasUri", + "fromTime", + "toTime" + ], + "description": "Api input base class for LogAnalytics Api." + }, + "LogAnalyticsOperationResult": { + "properties": { + "properties": { + "readOnly": true, + "$ref": "#/definitions/LogAnalyticsOutput", + "description": "LogAnalyticsOutput" + } + }, + "description": "LogAnalytics operation status response" + }, + "LogAnalyticsOutput": { + "properties": { + "output": { + "readOnly": true, + "type": "string", + "description": "Output file Uri path to blob container." + } + }, + "description": "LogAnalytics output properties" + }, + "VMScaleSetConvertToSinglePlacementGroupInput": { + "properties": { + "activePlacementGroupId": { + "type": "string", + "description": "Id of the placement group in which you want future virtual machine instances to be placed. To query placement group Id, please use Virtual Machine Scale Set VMs - Get API. If not provided, the platform will choose one with maximum number of virtual machine instances." + } + } + }, + "OrchestrationServiceStateInput": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service.", + "enum": [ + "AutomaticRepairs" + ], + "x-ms-enum": { + "name": "OrchestrationServiceNames", + "modelAsString": true + } + }, + "action": { + "type": "string", + "description": "The action to be performed.", + "enum": [ + "Resume", + "Suspend" + ], + "x-ms-enum": { + "name": "OrchestrationServiceStateAction", + "modelAsString": true + } + } + }, + "description": "The input for OrchestrationServiceState", + "required": [ + "serviceName", + "action" + ] + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..dbdd3670c655 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "caching": "ReadWrite", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..c6522ca38961 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "osType": "Windows", + "createOption": "FromImage", + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + } + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json new file mode 100644 index 000000000000..89324f915e29 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "osDisk", + "vhdContainers": [ + "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer" + ] + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json new file mode 100644 index 000000000000..e40163f9e51c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -0,0 +1,213 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk0.vhd" + } + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk1.vhd" + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json new file mode 100644 index 000000000000..2b99350a9cce --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..4fc0963106cb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json new file mode 100644 index 000000000000..015a2e84368e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json new file mode 100644 index 000000000000..ec4e432a9b82 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json @@ -0,0 +1,251 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + }, + "publicIPAddressConfiguration": { + "name": "{vmss-name}", + "properties": { + "publicIPAddressVersion": "IPv4" + } + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ] + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..3933248b3858 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,227 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json new file mode 100644 index 000000000000..d38ef49585a7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json new file mode 100644 index 000000000000..9dc7c88c7617 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json new file mode 100644 index 000000000000..df35cc9d6f37 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json new file mode 100644 index 000000000000..90d6884cfc29 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Succeeded" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json new file mode 100644 index 000000000000..56f53234e109 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json new file mode 100644 index 000000000000..4b866e0d3263 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json new file mode 100644 index 000000000000..a58f58973c3f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json new file mode 100644 index 000000000000..4126fc106025 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json new file mode 100644 index 000000000000..5f8f6500019e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "location": "centralus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + } + }, + "zones": [ + "1", + "3" + ] + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Succeeded" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Creating" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..cc0f19f7fa52 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json @@ -0,0 +1,255 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json new file mode 100644 index 000000000000..38e0a03d3048 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json new file mode 100644 index 000000000000..f79ad983b0e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json new file mode 100644 index 000000000000..5ff85148da97 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json new file mode 100644 index 000000000000..1ec7212f924f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json new file mode 100644 index 000000000000..a326f559ffbb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..c149ca156cd8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json new file mode 100644 index 000000000000..75ab219273e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..780895017bee --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json @@ -0,0 +1,229 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskencryptionset-name}" + } + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json new file mode 100644 index 000000000000..02b683bc5301 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": false + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json new file mode 100644 index 000000000000..7914fcac877d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json new file mode 100644 index 000000000000..891f577e4c71 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json new file mode 100644 index 000000000000..674436b34282 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "{image_sku}", + "publisher": "{image_publisher}", + "version": "latest", + "offer": "{image_offer}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json new file mode 100644 index 000000000000..0b0da3f73e8a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "availabilitySetName": "myAvailabilitySet", + "parameters": { + "location": "westus", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Classic" + }, + "name": "myAvailabilitySet", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + }, + "location": "westus", + "type": "Microsoft.Compute/availabilitySets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json new file mode 100644 index 000000000000..a5b13c26a7c0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json new file mode 100644 index 000000000000..68531e51bbd4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json new file mode 100644 index 000000000000..3901568a5627 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json new file mode 100644 index 000000000000..44cc6b06415e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json new file mode 100644 index 000000000000..0014fd9e11cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json new file mode 100644 index 000000000000..9668dac6924e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json new file mode 100644 index 000000000000..f83f1d6baeeb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json new file mode 100644 index 000000000000..5b7c1615f4fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json new file mode 100644 index 000000000000..75359f1eb220 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json new file mode 100644 index 000000000000..da42be168779 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json new file mode 100644 index 000000000000..00074b2b3fd1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName", + "parameters": { + "location": "westus", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "201": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json new file mode 100644 index 000000000000..be99526847e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "parameters": { + "location": "westus", + "tags": { + "department": "HR" + }, + "properties": { + "platformFaultDomain": 1 + }, + "sku": { + "name": "DSv3-Type1" + } + }, + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myDedicatedHost" + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHost", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}" + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": false, + "licenseType": "Windows_Server_Hybrid", + "hostId": "{GUID}" + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "name": "myDedicatedHost", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "sku": { + "name": "DSv3-Type1" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json new file mode 100644 index 000000000000..3d4ec8a42903 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "parameters": { + "location": "westus", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3 + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHostGroup", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + }, + "location": "westus", + "tags": { + "department": "finance", + "owner": "myCompany" + }, + "name": "myDedicatedHostGroup", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json new file mode 100644 index 000000000000..732e46d6421b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "location": "westus", + "properties": { + "proximityPlacementGroupType": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + }, + "201": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..5d72d4832047 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01", + "extensionParameters": { + "location": "westus", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json new file mode 100644 index 000000000000..1aff7f57f6b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..8a7ab4029176 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json new file mode 100644 index 000000000000..9f9a80ff2f30 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVMName" + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json new file mode 100644 index 000000000000..72080e04acea --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "privateKey": "{ssh private key}", + "publicKey": "{ssh-rsa public key}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json new file mode 100644 index 000000000000..0da47da294d4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myHost" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}", + "provisioningTime": "2019-06-27T01:02:38.3138469+00:00", + "virtualMachines": [ + { + "id": "/subscriptions/subId/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/vm1" + } + ], + "provisioningState": "Succeeded", + "instanceView": { + "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + } + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "name": "myHost" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json new file mode 100644 index 000000000000..f383d65e8771 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [ + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost1" + }, + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost2" + } + ] + }, + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "name": "myDedicatedHostGroup", + "zones": [ + "3" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json new file mode 100644 index 000000000000..c9c7a8744348 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json new file mode 100644 index 000000000000..f79ee1d48ec0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json new file mode 100644 index 000000000000..e744e3f8b37f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json new file mode 100644 index 000000000000..eba3aa88f087 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1", + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet" + }, + "proximityPlacementGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/my-ppg01" + }, + "hardwareProfile": { + "vmSize": "Standard_DS3_v2" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter", + "version": "latest" + }, + "osDisk": { + "osType": "Windows", + "name": "myOsDisk", + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk" + }, + "diskSizeGB": 30 + }, + "dataDisks": [ + { + "lun": 0, + "name": "myDataDisk0", + "createOption": "Empty", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0" + }, + "diskSizeGB": 30 + }, + { + "lun": 1, + "name": "myDataDisk1", + "createOption": "Attach", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1" + }, + "diskSizeGB": 100 + } + ] + }, + "osProfile": { + "computerName": "myVM", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false + }, + "secrets": [] + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}" + } + ] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true, + "storageUri": "http://{myStorageAccount}.blob.core.windows.net" + } + }, + "provisioningState": "Succeeded" + }, + "resources": [ + { + "name": "CustomScriptExtension-DSC", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC", + "type": "Microsoft.Compute/virtualMachines/extensions", + "location": "west us", + "tags": { + "displayName": "CustomScriptExtension-DSC" + }, + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.9", + "settings": {} + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json new file mode 100644 index 000000000000..e031396756ad --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVM" + }, + "responses": { + "200": { + "body": { + "platformUpdateDomain": 1, + "platformFaultDomain": 1, + "computerName": "myVM", + "osName": "Windows Server 2016 Datacenter", + "osVersion": "Microsoft Windows NT 10.0.14393.0", + "vmAgent": { + "vmAgentVersion": "2.7.41491.949", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready", + "message": "GuestAgent is running and accepting new configurations.", + "time": "2019-10-14T23:11:22+00:00" + } + ], + "extensionHandlers": [ + { + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "status": { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready" + } + } + ] + }, + "disks": [ + { + "name": "myOsDisk", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.477089+00:00" + } + ] + }, + { + "name": "myDataDisk0", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.461517+00:00" + } + ] + } + ], + "bootDiagnostics": { + "consoleScreenshotBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.screenshot.bmp", + "serialConsoleLogBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.serialconsole.log" + }, + "extensions": [ + { + "name": "IaaSAntiMalware-ext0", + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "Microsoft Antimalware enabled" + } + ] + } + ], + "hyperVGeneration": "V1", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:30:12.8051917+00:00" + }, + { + "code": "PowerState/running", + "level": "Info", + "displayStatus": "VM running" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..1a8db6ef8795 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json new file mode 100644 index 000000000000..8a8af8f9e5d2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "api-version": "2019-12-01", + "$expand": "virtualMachines\\$ref" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json new file mode 100644 index 000000000000..85218ebb5a6d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVmName", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_A1_V2", + "numberOfCores": 1, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 10240, + "memoryInMB": 2048, + "maxDataDiskCount": 2 + }, + { + "name": "Standard_A2_V2", + "numberOfCores": 2, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 20480, + "memoryInMB": 4096, + "maxDataDiskCount": 4 + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json new file mode 100644 index 000000000000..04d2985e0888 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json new file mode 100644 index 000000000000..95e52d35b0f9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json new file mode 100644 index 000000000000..51299006df07 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json new file mode 100644 index 000000000000..802e82ccc1e2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..73f0a48b5d02 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + }, + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher1", + "type": "extType1", + "typeHandlerVersion": "1.0", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension1", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension1" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json new file mode 100644 index 000000000000..b5db6a799e5e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "location": "eastus", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + }, + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json new file mode 100644 index 000000000000..9bd505f5e469 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-12-01", + "parameters": { + "intervalLength": "FiveMins", + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByResourceName": true + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json new file mode 100644 index 000000000000..7276ee97118b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-12-01", + "parameters": { + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByOperationName": true, + "groupByResourceName": false + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json new file mode 100644 index 000000000000..4176ba9f9d05 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "tags": { + "additionalProp1": "string" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json new file mode 100644 index 000000000000..4a7dd834b855 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2019-12-01", + "vmName": "VMName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json new file mode 100644 index 000000000000..5b6ea8415e22 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVMName", + "parameters": { + "tempDisk": true + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json new file mode 100644 index 000000000000..78bc4b284a44 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2019-12-01", + "vmName": "VMName" + }, + "responses": { + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVmssVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVmssVM.json new file mode 100644 index 000000000000..5deaf5e36593 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVmssVM.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "vmScaleSetName": "VmScaleSetName", + "api-version": "2019-12-01", + "instanceId": "InstanceId" + }, + "responses": { + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json new file mode 100644 index 000000000000..ac22e73558ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "hyperVGeneration": "V1" + }, + "tags": { + "department": "HR" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json new file mode 100644 index 000000000000..a442be8554ac --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "toBeDetached": true + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "toBeDetached": false + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..3aebf40aa98c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01", + "extensionParameters": { + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json new file mode 100644 index 000000000000..1ebbb77d1d47 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json new file mode 100644 index 000000000000..416d54a420f8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "resourceGroupName": "crptestar98131", + "vmName": "vm3036", + "$top": 1, + "api-version": "2019-12-01", + "monitor": "true", + "parameters": { + "commandId": "RunPowerShellScript" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "code": "ComponentStatus/StdOut/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "This is a sample script with parameters value1 value2" + }, + { + "code": "ComponentStatus/StdErr/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json new file mode 100644 index 000000000000..a344dc72cd40 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "location": "SoutheastAsia", + "commandId": "RunPowerShellScript", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "script": [ + "param(", + " [string]$arg1,", + " [string]$arg2", + ")", + "Write-Host This is a sample script with parameters $arg1 $arg2" + ], + "parameters": [ + { + "name": "arg1", + "type": "string", + "defaultValue": "value1" + }, + { + "name": "arg2", + "type": "string", + "defaultValue": "value2" + } + ], + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json new file mode 100644 index 000000000000..ab2f1632f736 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "SoutheastAsia", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableRemotePS", + "osType": "Windows", + "label": "Enable remote PowerShell", + "description": "Configure the machine to enable remote PowerShell." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "IPConfig", + "osType": "Windows", + "label": "List IP configuration", + "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunShellScript", + "osType": "Linux", + "label": "Executes a Linux shell script", + "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ifconfig", + "osType": "Linux", + "label": "List network configuration", + "description": "Get the configuration of all network interfaces." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableAdminAccount", + "osType": "Windows", + "label": "Enable administrator account", + "description": "Checks if the local Administrator account is disabled, and if so enables it." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetAccountPassword", + "osType": "Windows", + "label": "Reset built-in Administrator account password", + "description": "Reset built-in Administrator account password." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RDPSettings", + "osType": "Windows", + "label": "Verify RDP Listener Settings", + "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "SetRDPPort", + "osType": "Windows", + "label": "Set Remote Desktop port", + "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetRDPCert", + "osType": "Windows", + "label": "Restore RDP Authentication mode to defaults", + "description": "Removes the SSL certificate tied to the RDP listener and restores the RDP listerner security to default. Use this script if you see any issues with the certificate." + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json index 2e11d82e5ebe..870eff714f3d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json @@ -2128,7 +2128,8 @@ "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", "enum": [ "Standard_LRS", - "Standard_ZRS" + "Standard_ZRS", + "Premium_LRS" ], "x-ms-enum": { "name": "StorageAccountType", @@ -2154,7 +2155,8 @@ "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", "enum": [ "Standard_LRS", - "Standard_ZRS" + "Standard_ZRS", + "Premium_LRS" ], "x-ms-enum": { "name": "StorageAccountType", @@ -2276,9 +2278,6 @@ "description": "The id of the gallery artifact version source. Can specify a disk uri, snapshot uri, or user image." } }, - "required": [ - "id" - ], "description": "The gallery artifact version source." }, "GalleryOSDiskImage": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json new file mode 100644 index 000000000000..9a3528df0d75 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json @@ -0,0 +1,467 @@ +{ + "swagger": "2.0", + "info": { + "title": "RunCommandsClient", + "description": "The Run Commands Client.", + "version": "2019-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/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.Compute/locations/{location}/runCommands": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_List", + "x-ms-examples": { + "VirtualMachineRunCommandList": { + "$ref": "./examples/VirtualMachineRunCommandList.json" + } + }, + "description": "Lists all available run commands for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Get", + "x-ms-examples": { + "VirtualMachineRunCommandGet": { + "$ref": "./examples/VirtualMachineRunCommandGet.json" + } + }, + "description": "Gets specific run command for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "The command id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandDocument" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RunCommand", + "x-ms-examples": { + "VirtualMachineRunCommand": { + "$ref": "./examples/VirtualMachineRunCommand.json" + } + }, + "description": "Run command on the VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_RunCommand", + "description": "Run command on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "RunCommandInputParameter": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "value": { + "type": "string", + "description": "The run command parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandInput": { + "properties": { + "commandId": { + "type": "string", + "description": "The run command id." + }, + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The script to be executed. When this value is given, the given script will override the default script of the command." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The run command parameters." + } + }, + "required": [ + "commandId" + ], + "description": "Capture Virtual Machine parameters." + }, + "RunCommandParameterDefinition": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "type": { + "type": "string", + "description": "The run command parameter type." + }, + "defaultValue": { + "type": "string", + "description": "The run command parameter default value." + }, + "required": { + "type": "boolean", + "description": "The run command parameter required.", + "default": false + } + }, + "required": [ + "name", + "type" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandDocumentBase": { + "properties": { + "$schema": { + "type": "string", + "description": "The VM run command schema." + }, + "id": { + "type": "string", + "description": "The VM run command id." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "label": { + "type": "string", + "description": "The VM run command label." + }, + "description": { + "type": "string", + "description": "The VM run command description." + } + }, + "required": [ + "$schema", + "id", + "osType", + "label", + "description" + ], + "description": "Describes the properties of a Run Command metadata." + }, + "RunCommandDocument": { + "allOf": [ + { + "$ref": "#/definitions/RunCommandDocumentBase" + } + ], + "properties": { + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The script to be executed." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandParameterDefinition" + }, + "description": "The parameters used by the script." + } + }, + "required": [ + "script" + ], + "description": "Describes the properties of a Run Command." + }, + "RunCommandListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandDocumentBase" + }, + "description": "The list of virtual machine run commands." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of run commands. Call ListNext() with this to fetch the next page of run commands." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "RunCommandResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "Run command operation response." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.csharp.md b/specification/compute/resource-manager/readme.csharp.md index a3fe8bb4dac8..3e85a94bd63f 100644 --- a/specification/compute/resource-manager/readme.csharp.md +++ b/specification/compute/resource-manager/readme.csharp.md @@ -15,6 +15,25 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 1 clear-output-folder: true + +# remove DUMMY member of enum +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + # remove it from the C# generated code + - from: source-file-csharp + where: $ + transform: >- + return $. + replace(/.*public const string DummyOrchestrationServiceName.*/g,''). + replace(/, 'DummyOrchestrationServiceName'/g,''); ``` ``` yaml $(csharp) && !$(multiapi) && !$(csharp-profile) diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index 9e6ad7ffc67c..6429e087e0ca 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -6,6 +6,25 @@ These settings apply only when `--go` is specified on the command line. go: license-header: MICROSOFT_APACHE_NO_VERSION clear-output-folder: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-go + where: $ + transform: >- + return $. + replace(/\/\/ DummyOrchestrationServiceName .../g,''). + replace(/DummyOrchestrationServiceName OrchestrationServiceNames = "DummyOrchestrationServiceName"\n/g,''). + replace(/,DummyOrchestrationServiceName/,''). + replace(/, 'DummyOrchestrationServiceName'/,''); ``` ### Go multi-api diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index b86a07067429..fd00318c0fe8 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -221,8 +221,8 @@ These settings apply only when `--tag=package-2019-12-01` is specified on the co ``` yaml $(tag) == 'package-2019-12-01' input-file: -- Microsoft.Compute/stable/2019-07-01/compute.json -- Microsoft.Compute/stable/2019-07-01/runCommands.json +- Microsoft.Compute/stable/2019-12-01/compute.json +- Microsoft.Compute/stable/2019-12-01/runCommands.json - Microsoft.Compute/stable/2019-04-01/skus.json - Microsoft.Compute/stable/2019-11-01/disk.json - Microsoft.Compute/stable/2019-12-01/gallery.json @@ -235,6 +235,8 @@ These settings apply only when `--tag=package-2019-12-01-only` is specified on t ``` yaml $(tag) == 'package-2019-12-01-only' input-file: +- Microsoft.Compute/stable/2019-12-01/compute.json +- Microsoft.Compute/stable/2019-12-01/runCommands.json - Microsoft.Compute/stable/2019-12-01/gallery.json ``` @@ -772,12 +774,14 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json + - $(this-folder)/Microsoft.Compute/stable/2019-12-01/compute.json + - $(this-folder)/Microsoft.Compute/stable/2019-12-01/runCommands.json - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - $(this-folder)/Microsoft.Compute/stable/2019-11-01/disk.json - $(this-folder)/Microsoft.Compute/stable/2019-12-01/gallery.json - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json + - $(this-folder)/Microsoft.Compute/stable/2019-07-01/compute.json + - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/gallery.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/disk.json - $(this-folder)/Microsoft.Compute/stable/2019-03-01/compute.json diff --git a/specification/compute/resource-manager/readme.nodejs.md b/specification/compute/resource-manager/readme.nodejs.md index 63a5186f2644..ee164648a54e 100644 --- a/specification/compute/resource-manager/readme.nodejs.md +++ b/specification/compute/resource-manager/readme.nodejs.md @@ -12,4 +12,20 @@ nodejs: generate-license-txt: true generate-package-json: true generate-readme-md: false + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-nodejs + where: $ + transform: >- + return $. + replace(/[,*] 'DummyOrchestrationServiceName'/g,''); ``` diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md index 3c71c18c7b4a..07382513e166 100644 --- a/specification/compute/resource-manager/readme.python.md +++ b/specification/compute/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -10,13 +10,59 @@ python: package-name: azure-mgmt-compute no-namespace-folders: true clear-output-folder: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-python + where: $ + transform: >- + return $. + replace(/, 'DummyOrchestrationServiceName'/g,''). + replace(/dummy_orchestration_service_name = "DummyOrchestrationServiceName"/g,''); +``` + +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-compute +no-namespace-folders: true ``` ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-2019-12-01-only + - tag: package-2019-11-01-only + - tag: package-2019-07-01-only + - tag: package-2019-04-01-only + - tag: package-2019-03-01-only + - tag: package-2018-10-01-only + - tag: package-2018-09-30-only + - tag: package-compute-only-2018-06 + - tag: package-compute-2018-04 + - tag: package-compute-only-2017-12 + - tag: package-skus-2017-09 + - tag: package-compute-2017-03 + - tag: package-compute-2016-04-preview + - tag: package-compute-2016-03 + - tag: package-compute-2015-06 +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true batch: - tag: package-2019-12-01-only - tag: package-2019-11-01-only @@ -33,6 +79,13 @@ batch: - tag: package-compute-2016-04-preview - tag: package-compute-2016-03 - tag: package-compute-2015-06 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/ +clear-output-folder: false +perform-load: false ``` ### Tag: package-2019-12-01-only and python @@ -40,7 +93,9 @@ batch: These settings apply only when `--tag=package-2019-12-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-12-01-only' && $(python) +``` yaml $(tag) == 'package-2019-12-01-only' +namespace: azure.mgmt.compute.v2019_12_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_12_01 python: namespace: azure.mgmt.compute.v2019_12_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_12_01 @@ -51,7 +106,9 @@ python: These settings apply only when `--tag=package-2019-11-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-11-01-only' && $(python) +``` yaml $(tag) == 'package-2019-11-01-only' +namespace: azure.mgmt.compute.v2019_11_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_11_01 python: namespace: azure.mgmt.compute.v2019_11_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_11_01 @@ -62,7 +119,9 @@ python: These settings apply only when `--tag=package-2019-07-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-07-01-only' && $(python) +``` yaml $(tag) == 'package-2019-07-01-only' +namespace: azure.mgmt.compute.v2019_07_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_07_01 python: namespace: azure.mgmt.compute.v2019_07_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_07_01 @@ -73,7 +132,9 @@ python: These settings apply only when `--tag=package-2019-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-04-01-only' && $(python) +``` yaml $(tag) == 'package-2019-04-01-only' +namespace: azure.mgmt.compute.v2019_04_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_04_01 python: namespace: azure.mgmt.compute.v2019_04_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_04_01 @@ -84,7 +145,9 @@ python: These settings apply only when `--tag=package-2019-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-03-01-only' && $(python) +``` yaml $(tag) == 'package-2019-03-01-only' +namespace: azure.mgmt.compute.v2019_03_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_03_01 python: namespace: azure.mgmt.compute.v2019_03_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_03_01 @@ -95,7 +158,9 @@ python: These settings apply only when `--tag=package-2018-10-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-10-01-only' && $(python) +``` yaml $(tag) == 'package-2018-10-01-only' +namespace: azure.mgmt.compute.v2018_10_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01 python: namespace: azure.mgmt.compute.v2018_10_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01 @@ -106,7 +171,9 @@ python: These settings apply only when `--tag=package-2018-09-30-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-09-30-only' && $(python) +``` yaml $(tag) == 'package-2018-09-30-only' +namespace: azure.mgmt.compute.v2018_09_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_09_30 python: namespace: azure.mgmt.compute.v2018_09_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_09_30 @@ -117,7 +184,9 @@ python: These settings apply only when `--tag=package-compute-only-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-only-2018-06' && $(python) +``` yaml $(tag) == 'package-compute-only-2018-06' +namespace: azure.mgmt.compute.v2018_06_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01 python: namespace: azure.mgmt.compute.v2018_06_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01 @@ -128,7 +197,9 @@ python: These settings apply only when `--tag=package-compute-2018-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2018-04' && $(python) +``` yaml $(tag) == 'package-compute-2018-04' +namespace: azure.mgmt.compute.v2018_04_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01 python: namespace: azure.mgmt.compute.v2018_04_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01 @@ -139,7 +210,9 @@ python: These settings apply only when `--tag=package-compute-only-2017-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-only-2017-12' && $(python) +``` yaml $(tag) == 'package-compute-only-2017-12' +namespace: azure.mgmt.compute.v2017_12_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01 python: namespace: azure.mgmt.compute.v2017_12_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01 @@ -150,7 +223,9 @@ python: These settings apply only when `--tag=package-skus-2017-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-skus-2017-09' && $(python) +``` yaml $(tag) == 'package-skus-2017-09' +namespace: azure.mgmt.compute.v2017_09_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_09_01 python: namespace: azure.mgmt.compute.v2017_09_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_09_01 @@ -161,7 +236,9 @@ python: These settings apply only when `--tag=package-compute-2017-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2017-03' && $(python) +``` yaml $(tag) == 'package-compute-2017-03' +namespace: azure.mgmt.compute.v2017_03_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30 python: namespace: azure.mgmt.compute.v2017_03_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30 @@ -172,7 +249,9 @@ python: These settings apply only when `--tag=package-compute-2016-04-preview --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2016-04-preview' && $(python) +``` yaml $(tag) == 'package-compute-2016-04-preview' +namespace: azure.mgmt.compute.v2016_04_30_preview +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview python: namespace: azure.mgmt.compute.v2016_04_30_preview output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview @@ -183,7 +262,9 @@ python: These settings apply only when `--tag=package-compute-2016-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2016-03' && $(python) +``` yaml $(tag) == 'package-compute-2016-03' +namespace: azure.mgmt.compute.v2016_03_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30 python: namespace: azure.mgmt.compute.v2016_03_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30 @@ -194,7 +275,9 @@ python: These settings apply only when `--tag=package-compute-2015-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2015-06' && $(python) +``` yaml $(tag) == 'package-compute-2015-06' +namespace: azure.mgmt.compute.v2015_06_15 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15 python: namespace: azure.mgmt.compute.v2015_06_15 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15 diff --git a/specification/compute/resource-manager/readme.ruby.md b/specification/compute/resource-manager/readme.ruby.md index d6d4616853ed..3127e109c081 100644 --- a/specification/compute/resource-manager/readme.ruby.md +++ b/specification/compute/resource-manager/readme.ruby.md @@ -6,12 +6,30 @@ These settings apply only when `--ruby` is specified on the command line. package-name: azure_mgmt_compute package-version: "0.17.1" azure-arm: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-ruby + where: $ + transform: >- + return $. + replace(/, 'DummyOrchestrationServiceName'/g,''). + replace(/DummyOrchestrationServiceName = "DummyOrchestrationServiceName"/g,''); ``` ### Ruby multi-api ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-compute-2019-12 - tag: package-disks-2018-04 - tag: package-compute-only-2017-12 - tag: package-skus-2017-09 @@ -21,6 +39,16 @@ batch: - tag: package-compute-2015-06 ``` +### Tag: package-compute-2019-12 and ruby + +These settings apply only when `--tag=package-compute-2019-12 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-compute-2019-12' && $(ruby) +namespace: "Azure::Compute::Mgmt::V2019_12_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_compute/lib +``` + ### Tag: package-disks-2018-04 and ruby These settings apply only when `--tag=package-disks-2018-04 --ruby` is specified on the command line. diff --git a/specification/compute/resource-manager/readme.typescript.md b/specification/compute/resource-manager/readme.typescript.md index edaa0c805343..e1e93d3bc56d 100644 --- a/specification/compute/resource-manager/readme.typescript.md +++ b/specification/compute/resource-manager/readme.typescript.md @@ -9,6 +9,22 @@ Please also specify `--typescript-sdks-folder=- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-typescript + where: $ + transform: >- + return $. + replace(/[,|*] 'DummyOrchestrationServiceName'/g,''); ``` ``` yaml $(typescript) && !$(profile) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json index 78c4194a23fe..8126edf921b9 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json @@ -104,7 +104,7 @@ }, { "name": "$filter", - "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", + "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/instanceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", "in": "query", "required": false, "type": "string" diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json index f7d99d7fac80..4d14b159469b 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json @@ -1070,6 +1070,54 @@ } } }, + "/{scope}/providers/Microsoft.Consumption/reservationRecommendationDetails": { + "get": { + "tags": [ + "ReservationRecommendationDetails" + ], + "operationId": "ReservationRecommendationDetails_Get", + "description": "Details of a reservation recommendation for what-if analysis of reserved instances.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + }, + "x-ms-examples": { + "ReservationRecommendationsBySubscription-Legacy": { + "$ref": "./examples/ReservationRecommendationDetailsBySubscription.json" + }, + "ReservationRecommendationsByBillingAccount-Legacy": { + "$ref": "./examples/ReservationRecommendationDetailsByBillingAccount.json" + }, + "ReservationRecommendationsByBillingProfile-Modern": { + "$ref": "./examples/ReservationRecommendationDetailsByBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeReservationRecommendationDetailsParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationRecommendationDetailsModel" + } + }, + "204": { + "description": "An empty response is sent when there are no recommendation details." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions": { "get": { "tags": [ @@ -2817,6 +2865,200 @@ } } }, + "ReservationRecommendationDetailsModel": { + "description": "Reservation recommendation details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationRecommendationDetailsProperties", + "title": "Reservation Recommendation details properties" + } + } + }, + "ReservationRecommendationDetailsProperties": { + "description": "The properties of the reservation recommendation.", + "properties": { + "currency": { + "description": "An ISO 4217 currency code identifier for the costs and savings ", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource specific properties.", + "$ref": "#/definitions/ReservationRecommendationDetailsResourceProperties", + "readOnly": true + }, + "resourceGroup": { + "description": "Resource Group.", + "type": "string", + "readOnly": true + }, + "savings": { + "description": "Savings information for the recommendation.", + "$ref": "#/definitions/ReservationRecommendationDetailsSavingsProperties", + "readOnly": true + }, + "scope": { + "description": "Scope of the reservation, ex: Single or Shared.", + "type": "string", + "readOnly": true + }, + "usage": { + "description": "Historical usage details used to calculate the estimated savings.", + "$ref": "#/definitions/ReservationRecommendationDetailsUsageProperties", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsCalculatedSavingsProperties": { + "description": "Details of estimated savings.", + "properties": { + "onDemandCost": { + "description": "The cost without reservation.", + "type": "number", + "readOnly": true + }, + "overageCost": { + "description": "The difference between total reservation cost and reservation cost.", + "type": "number", + "readOnly": true + }, + "quantity": { + "description": "The quantity for calculated savings.", + "type": "number", + "readOnly": true + }, + "reservationCost": { + "description": "The exact cost of the estimated usage using reservation.", + "type": "number", + "readOnly": true + }, + "totalReservationCost": { + "description": "The cost of the suggested quantity.", + "type": "number", + "readOnly": true + }, + "savings": { + "description": "The amount saved by purchasing the recommended quantity of reservation.", + "type": "number", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsResourceProperties": { + "description": "Details of the resource.", + "properties": { + "appliedScopes": { + "description": "List of subscriptions for which the reservation is applied.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "onDemandRate": { + "description": "On demand rate of the resource.", + "type": "number", + "readOnly": true + }, + "product": { + "description": "Azure product ex: Standard_E8s_v3 etc.", + "type": "string", + "readOnly": true + }, + "region": { + "description": "Azure resource region ex:EastUS, WestUS etc.", + "type": "string", + "readOnly": true + }, + "reservationRate": { + "description": "Reservation rate of the resource.", + "type": "number", + "readOnly": true + }, + "resourceType": { + "description": "The azure resource type.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsSavingsProperties": { + "description": "Details of the estimated savings.", + "properties": { + "calculatedSavings": { + "description": "List of calculated savings.", + "type": "array", + "items": { + "$ref": "#/definitions/ReservationRecommendationDetailsCalculatedSavingsProperties" + } + }, + "lookBackPeriod": { + "description": "Number of days of usage to look back used for computing the recommendation.", + "type": "integer", + "readOnly": true + }, + "recommendedQuantity": { + "description": "Number of recommended units of the resource.", + "type": "number", + "readOnly": true + }, + "reservationOrderTerm": { + "description": "Term period of the reservation, ex: P1Y or P3Y.", + "type": "string", + "readOnly": true + }, + "savingsType": { + "description": "Type of savings, ex: instance.", + "type": "string", + "readOnly": true + }, + "unitOfMeasure": { + "description": "Measurement unit ex: hour etc.", + "type": "string", + "readOnly": true + } + } + }, + "ReservationRecommendationDetailsUsageProperties": { + "description": "Details about historical usage data that has been used for computing the recommendation.", + "properties": { + "firstConsumptionDate": { + "description": "The first usage date used for looking back for computing the recommendation.", + "type": "string", + "readOnly": true + }, + "lastConsumptionDate": { + "description": "The last usage date used for looking back for computing the recommendation.", + "type": "string", + "readOnly": true + }, + "lookBackUnitType": { + "description": "What the usage data values represent ex: virtual machine instance.", + "type": "string", + "readOnly": true + }, + "usageData": { + "description": "The breakdown of historical resource usage. The values are in the order of usage between the firstConsumptionDate and the lastConsumptionDate.", + "type": "array", + "items": { + "type": "number" + }, + "readOnly": true + }, + "usageGrain": { + "description": "The grain of the values represented in the usage data ex: hourly.", + "type": "string", + "readOnly": true + } + } + }, "ReservationRecommendationsListResult": { "description": "Result of listing reservation recommendations.", "properties": { @@ -4015,7 +4257,7 @@ } }, "ErrorResponse": { - "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", "type": "object", "properties": { "error": { @@ -4465,6 +4707,15 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, + "scopeReservationRecommendationDetailsParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with reservation recommendation details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}', /providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, "apiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json index f759fea1fafe..f13960fdaeeb 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetails.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2019-10-01", "reservationOrderId": "00000000-0000-0000-0000-000000000000", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json index 3fab16efdadb..9554289c19d0 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingAccountId.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2019-10-01", "scope": "providers/Microsoft.Billing/billingAccounts/12345", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json index e8f3dd2d970d..b947faae5e6b 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsWithReservationId.json @@ -3,7 +3,7 @@ "api-version": "2019-10-01", "reservationOrderId": "00000000-0000-0000-0000-000000000000", "reservationId": "00000000-0000-0000-0000-000000000000", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-12-05'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-12-05" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingAccount.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingAccount.json new file mode 100644 index 000000000000..3349a95990bd --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingAccount.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/000000" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "USD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000", + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 1.482, + "product": "Standard_DS14_v2", + "region": "eastus", + "reservationRate": 0.70570776255707, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 529550.326618951, + "overageCost": 63253.5935111345, + "quantity": 220, + "reservationCost": 223102.452054792, + "totalReservationCost": 286356.045565927, + "savings": 243194.281053024 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 149335.025050147, + "quantity": 179, + "reservationCost": 181524.267808217, + "totalReservationCost": 330859.292858364, + "savings": 198691.033760586 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 195942.319606957, + "quantity": 157, + "reservationCost": 159214.022602738, + "totalReservationCost": 355156.342209695, + "savings": 174393.984409255 + }, + { + "onDemandCost": 529550.326618950, + "overageCost": 30975.2311896299, + "quantity": 241, + "reservationCost": 244398.595205477, + "totalReservationCost": 275373.826395107, + "savings": 254176.500223843 + } + ], + "lookBackPeriod": 60, + "recommendedQuantity": 253.0, + "reservationOrderTerm": "P1Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Shared", + "usage": { + "firstConsumptionDate": "2019-11-27T00:00:00", + "lastConsumptionDate": "2020-01-25T21:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 275.95003899999995, + 275.916705, + 276.0, + 276.0, + 275.916725, + 275.916705, + 275.98335299999997, + 276.0, + 276.0, + 276.0, + 276.0, + 276.0, + 275.98335299999997, + 276.0, + 276.0, + 276.0, + 276.0, + 275.933352 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingProfile.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingProfile.json new file mode 100644 index 000000000000..235b489b818b --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsByBillingProfile.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000" + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-00000000:00000000-0000-0000-0000-00000000/billingProfiles/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "AUD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 0.0725, + "product": "Standard_B2s", + "region": "australiaeast", + "reservationRate": 0.044141665317880413, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 632.884472049689441, + "overageCost": 0.0, + "quantity": 1, + "reservationCost": 387.740388152261739, + "totalReservationCost": 387.740388152261739, + "savings": 245.144083897427702 + } + ], + "lookBackPeriod": 7, + "recommendedQuantity": 1.0, + "reservationOrderTerm": "P1Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Shared", + "usage": { + "firstConsumptionDate": "2020-01-19T00:00:00", + "lastConsumptionDate": "2020-01-25T17:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.0 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsBySubscription.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsBySubscription.json new file mode 100644 index 000000000000..81401cfe5622 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationRecommendationDetailsBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "subscriptions/00000000-0000-0000-0000-00000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-00000000/providers/microsoft.consumption/reservationrecommendationdetails", + "name": "reservationRecommendationDetails", + "type": "Microsoft.Consumption/ReservationRecommendationDetails", + "properties": { + "currency": "USD", + "resource": { + "appliedScopes": [ + "00000000-0000-0000-0000-00000000" + ], + "onDemandRate": 0.519, + "product": "Standard_DS13_v2", + "region": "westus", + "reservationRate": 0.302549467275493, + "resourceType": "virtualmachines" + }, + "resourceGroup": null, + "savings": { + "calculatedSavings": [ + { + "onDemandCost": 368.4813602070006, + "overageCost": 0.0, + "quantity": 2, + "reservationCost": 429.01514459665, + "totalReservationCost": 429.01514459665, + "savings": -60.5337843896494 + }, + { + "onDemandCost": 368.481360207000, + "overageCost": 1.557, + "quantity": 1, + "reservationCost": 214.507572298325, + "totalReservationCost": 216.064572298325, + "savings": 152.416787908675 + } + ], + "lookBackPeriod": 30, + "recommendedQuantity": 1.0, + "reservationOrderTerm": "P3Y", + "savingsType": "instance", + "unitOfMeasure": "hour" + }, + "scope": "Single", + "usage": { + "firstConsumptionDate": "2020-02-03T00:00:00", + "lastConsumptionDate": "2020-03-03T13:00:00", + "lookBackUnitType": "virtualMachine quantity", + "usageData": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0 + ], + "usageGrain": "hourly" + } + } + } + }, + "204": {} + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json index 89cabe7ebef4..419293c3cb94 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDaily.json @@ -3,7 +3,7 @@ "api-version": "2019-10-01", "reservationOrderId": "00000000-0000-0000-0000-000000000000", "grain": "daily", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json index 05d17eec72c4..b0ccf6bbbe00 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingAccountId.json @@ -3,7 +3,7 @@ "api-version": "2019-10-01", "scope": "providers/Microsoft.Billing/billingAccounts/12345", "grain": "daily", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json index 197a751de0b1..218830e01808 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithReservationId.json @@ -4,7 +4,7 @@ "reservationOrderId": "00000000-0000-0000-0000-000000000000", "reservationId": "00000000-0000-0000-0000-000000000000", "grain": "daily", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + "$filter": "properties/usageDate ge 2017-10-01 AND properties/usageDate le 2017-11-20" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json index 6ce54b6b472a..7770a224b060 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2019-10-01", "billingAccountId": "123456", - "$filter": "properties/eventDate ge '2019-09-09' AND properties/eventDate le '2019-09-10'" + "$filter": "properties/eventDate ge 2019-09-09 AND properties/eventDate le 2019-09-10" }, "responses": { "200": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json index 7d459ea58817..933aa70dc501 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json @@ -50,7 +50,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/agentpool doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -108,7 +108,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -155,7 +155,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -214,7 +214,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -257,7 +257,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -305,7 +305,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/agentpool doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -359,7 +359,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -417,7 +417,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -474,7 +474,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -527,7 +527,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -589,7 +589,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -639,7 +639,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -688,7 +688,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -738,7 +738,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -800,7 +800,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -851,7 +851,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -914,7 +914,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -964,7 +964,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1006,7 +1006,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1051,7 +1051,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1099,7 +1099,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1157,7 +1157,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1213,7 +1213,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1272,7 +1272,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -1327,7 +1327,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -2980,7 +2980,7 @@ }, "x-ms-azure-resource": true }, - "Error": { + "ErrorResponseBody": { "description": "An error response from the Azure Container Registry service.", "required": [ "code", @@ -2994,18 +2994,48 @@ "message": { "description": "error message.", "type": "string" + }, + "target": { + "description": "target of the particular error.", + "type": "string" + }, + "details": { + "$ref": "#/definitions/InnerErrorDescription", + "description": "an array of additional nested error response info objects, as described by this contract.", + "type": "array" } } }, - "ErrorSchema": { + "ErrorResponse": { "description": "An error response from the Azure Container Registry service.", "properties": { "error": { - "$ref": "#/definitions/Error", + "$ref": "#/definitions/ErrorResponseBody", "description": "Azure container registry build API error body." } } }, + "InnerErrorDescription": { + "description": "inner error.", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "description": "error code.", + "type": "string" + }, + "message": { + "description": "error message.", + "type": "string" + }, + "target": { + "description": "target of the particular error.", + "type": "string" + } + } + }, "DockerBuildRequest": { "description": "The parameters for a docker quick build.", "required": [ diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json index fee5e737d941..6f70e0e72c62 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json @@ -15,132 +15,13 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage": { - "post": { - "tags": [ - "Registries" - ], - "description": "Copies an image to this container registry from the specified container registry.", - "operationId": "Registries_ImportImage", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/RegistryNameParameter" - }, - { - "name": "parameters", - "in": "body", - "description": "The parameters specifying the image to copy and the source container registry.", - "required": true, - "schema": { - "$ref": "#/definitions/ImportImageParameters" - } - } - ], - "responses": { - "200": { - "description": "The request was successful; the operation has completed successfully." - }, - "202": { - "description": "The request was successful; the operation will complete asynchronously." - } - }, - "x-ms-examples": { - "ImportImageByTag": { - "$ref": "./examples/ImportImageByTag.json" - }, - "ImportImageByManifestDigest": { - "$ref": "./examples/ImportImageByManifestDigest.json" - }, - "ImportImageFromPublicRegistry": { - "$ref": "./examples/ImportImageFromPublicRegistry.json" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": { - "post": { - "tags": [ - "Operation" - ], - "description": "Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.", - "operationId": "Registries_CheckNameAvailability", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "registryNameCheckRequest", - "in": "body", - "description": "The object containing information for the availability request.", - "required": true, - "schema": { - "$ref": "#/definitions/RegistryNameCheckRequest" - } - } - ], - "responses": { - "200": { - "description": "The request was successful; the request was well-formed and received properly.", - "schema": { - "$ref": "#/definitions/RegistryNameStatus" - } - } - }, - "x-ms-examples": { - "RegistryCheckNameAvailable": { - "$ref": "./examples/RegistryCheckNameAvailable.json" - }, - "RegistryCheckNameNotAvailable": { - "$ref": "./examples/RegistryCheckNameNotAvailable.json" - } - } - } - }, - "/providers/Microsoft.ContainerRegistry/operations": { - "get": { - "tags": [ - "Operation" - ], - "description": "Lists all of the available Azure Container Registry REST API operations.", - "operationId": "Operations_List", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "The request was successful; the request was well-formed and received properly.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines/{exportPipelineName}": { "get": { "tags": [ - "PrivateEndpointConnections" + "ExportPipelines" ], - "description": "Get the specified private endpoint connection associated with the container registry.", - "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the properties of the export pipeline.", + "operationId": "ExportPipelines_Get", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -155,29 +36,29 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + "$ref": "#/parameters/ExportPipelineNameParameter" } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/ExportPipeline" } } }, "x-ms-examples": { - "PrivateEndpointConnectionGet": { - "$ref": "./examples/PrivateEndpointConnectionGet.json" + "ExportPipelineGet": { + "$ref": "./examples/ExportPipelineGet.json" } } }, "put": { "tags": [ - "PrivateEndpointConnections" + "ExportPipelines" ], - "description": "Update the state of specified private endpoint connection associated with the container registry.", - "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Creates an export pipeline for a container registry with the specified parameters.", + "operationId": "ExportPipelines_Create", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -192,45 +73,45 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + "$ref": "#/parameters/ExportPipelineNameParameter" }, { - "name": "privateEndpointConnection", + "name": "exportPipelineCreateParameters", "in": "body", - "description": "The parameters for creating a private endpoint connection.", + "description": "The parameters for creating an export pipeline.", "required": true, "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/ExportPipeline" } } ], "responses": { "200": { - "description": "The request was successful; the request was well-formed and received properly.", + "description": "The request was successful; the operation has completed successfully.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/ExportPipeline" } }, "201": { "description": "The request was successful; the operation will complete asynchronously.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/ExportPipeline" } } }, "x-ms-examples": { - "PrivateEndpointConnectionCreateOrUpdate": { - "$ref": "./examples/PrivateEndpointConnectionCreateOrUpdate.json" + "ExportPipelineCreate": { + "$ref": "./examples/ExportPipelineCreate.json" } }, "x-ms-long-running-operation": true }, "delete": { "tags": [ - "PrivateEndpointConnections" + "ExportPipelines" ], - "description": "Deletes the specified private endpoint connection associated with the container registry.", - "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes an export pipeline from a container registry.", + "operationId": "ExportPipelines_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -245,7 +126,7 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + "$ref": "#/parameters/ExportPipelineNameParameter" } ], "responses": { @@ -256,24 +137,24 @@ "description": "The request was successful; the operation will complete asynchronously." }, "204": { - "description": "The private endpoint connection does not exist in the subscription." + "description": "The export pipeline does not exist in the subscription." } }, "x-ms-examples": { - "PrivateEndpointConnectionDelete": { - "$ref": "./examples/PrivateEndpointConnectionDelete.json" + "ExportPipelineDelete": { + "$ref": "./examples/ExportPipelineDelete.json" } }, "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/exportPipelines": { "get": { "tags": [ - "PrivateEndpointConnections" + "ExportPipelines" ], - "description": "List all private endpoint connections in a container registry.", - "operationId": "PrivateEndpointConnections_List", + "description": "Lists all export pipelines for the specified container registry.", + "operationId": "ExportPipelines_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -292,13 +173,13 @@ "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnectionListResult" + "$ref": "#/definitions/ExportPipelineListResult" } } }, "x-ms-examples": { - "PrivateEndpointConnectionList": { - "$ref": "./examples/PrivateEndpointConnectionList.json" + "ExportPipelineList": { + "$ref": "./examples/ExportPipelineList.json" } }, "x-ms-pageable": { @@ -306,13 +187,65 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage": { + "post": { "tags": [ "Registries" ], - "description": "Gets the properties of the specified container registry.", - "operationId": "Registries_Get", + "description": "Copies an image to this container registry from the specified container registry.", + "operationId": "Registries_ImportImage", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters specifying the image to copy and the source container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportImageParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the operation has completed successfully." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "ImportImageByTag": { + "$ref": "./examples/ImportImageByTag.json" + }, + "ImportImageByManifestDigest": { + "$ref": "./examples/ImportImageByManifestDigest.json" + }, + "ImportImageFromPublicRegistry": { + "$ref": "./examples/ImportImageFromPublicRegistry.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importPipelines/{importPipelineName}": { + "get": { + "tags": [ + "ImportPipelines" + ], + "description": "Gets the properties of the import pipeline.", + "operationId": "ImportPipelines_Get", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -325,28 +258,31 @@ }, { "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ImportPipelineNameParameter" } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Registry" + "$ref": "#/definitions/ImportPipeline" } } }, "x-ms-examples": { - "RegistryGet": { - "$ref": "./examples/RegistryGet.json" + "ImportPipelineGet": { + "$ref": "./examples/ImportPipelineGet.json" } } }, "put": { "tags": [ - "Registries" + "ImportPipelines" ], - "description": "Creates a container registry with the specified parameters.", - "operationId": "Registries_Create", + "description": "Creates an import pipeline for a container registry with the specified parameters.", + "operationId": "ImportPipelines_Create", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -361,42 +297,45 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "name": "registry", + "$ref": "#/parameters/ImportPipelineNameParameter" + }, + { + "name": "importPipelineCreateParameters", "in": "body", - "description": "The parameters for creating a container registry.", + "description": "The parameters for creating an import pipeline.", "required": true, "schema": { - "$ref": "#/definitions/Registry" + "$ref": "#/definitions/ImportPipeline" } } ], "responses": { "200": { - "description": "The request was successful; the request was well-formed and received properly.", + "description": "The request was successful; the operation has completed successfully.", "schema": { - "$ref": "#/definitions/Registry" + "$ref": "#/definitions/ImportPipeline" } }, "201": { "description": "The request was successful; the operation will complete asynchronously.", "schema": { - "$ref": "#/definitions/Registry" + "$ref": "#/definitions/ImportPipeline" } } }, "x-ms-examples": { - "RegistryCreate": { - "$ref": "./examples/RegistryCreate.json" + "ImportPipelineCreate": { + "$ref": "./examples/ImportPipelineCreate.json" } }, "x-ms-long-running-operation": true }, "delete": { "tags": [ - "Registries" + "ImportPipelines" ], - "description": "Deletes a container registry.", - "operationId": "Registries_Delete", + "description": "Deletes an import pipeline from a container registry.", + "operationId": "ImportPipelines_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -409,6 +348,9 @@ }, { "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ImportPipelineNameParameter" } ], "responses": { @@ -419,22 +361,24 @@ "description": "The request was successful; the operation will complete asynchronously." }, "204": { - "description": "The container registry does not exist in the subscription." + "description": "The import pipeline does not exist in the subscription." } }, "x-ms-examples": { - "RegistryDelete": { - "$ref": "./examples/RegistryDelete.json" + "ImportPipelineDelete": { + "$ref": "./examples/ImportPipelineDelete.json" } }, "x-ms-long-running-operation": true - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importPipelines": { + "get": { "tags": [ - "Registries" + "ImportPipelines" ], - "description": "Updates a container registry with the specified parameters.", - "operationId": "Registries_Update", + "description": "Lists all import pipelines for the specified container registry.", + "operationId": "ImportPipelines_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -447,46 +391,33 @@ }, { "$ref": "#/parameters/RegistryNameParameter" - }, - { - "name": "registryUpdateParameters", - "in": "body", - "description": "The parameters for updating a container registry.", - "required": true, - "schema": { - "$ref": "#/definitions/RegistryUpdateParameters" - } } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Registry" - } - }, - "201": { - "description": "The request was successful; the operation will complete asynchronously.", - "schema": { - "$ref": "#/definitions/Registry" + "$ref": "#/definitions/ImportPipelineListResult" } } }, "x-ms-examples": { - "RegistryUpdate": { - "$ref": "./examples/RegistryUpdate.json" + "ImportPipelineList": { + "$ref": "./examples/ImportPipelineList.json" } }, - "x-ms-long-running-operation": true + "x-ms-pageable": { + "nextLinkName": "nextLink" + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": { - "get": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": { + "post": { "tags": [ - "Registries" + "Operation" ], - "description": "Lists all the container registries under the specified resource group.", - "operationId": "Registries_ListByResourceGroup", + "description": "Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.", + "operationId": "Registries_CheckNameAvailability", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -495,67 +426,65 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "name": "registryNameCheckRequest", + "in": "body", + "description": "The object containing information for the availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryNameCheckRequest" + } } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/RegistryListResult" + "$ref": "#/definitions/RegistryNameStatus" } } }, "x-ms-examples": { - "RegistryListByResourceGroup": { - "$ref": "./examples/RegistryListByResourceGroup.json" + "RegistryCheckNameAvailable": { + "$ref": "./examples/RegistryCheckNameAvailable.json" + }, + "RegistryCheckNameNotAvailable": { + "$ref": "./examples/RegistryCheckNameNotAvailable.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": { + "/providers/Microsoft.ContainerRegistry/operations": { "get": { "tags": [ - "Registries" + "Operation" ], - "description": "Lists all the container registries under the specified subscription.", - "operationId": "Registries_List", + "description": "Lists all of the available Azure Container Registry REST API operations.", + "operationId": "Operations_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/RegistryListResult" + "$ref": "#/definitions/OperationListResult" } } }, - "x-ms-examples": { - "RegistryList": { - "$ref": "./examples/RegistryList.json" - } - }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/pipelineRuns/{pipelineRunName}": { + "get": { "tags": [ - "Registries" + "PipelineRuns" ], - "description": "Lists the login credentials for the specified container registry.", - "operationId": "Registries_ListCredentials", + "description": "Gets the detailed information for a given pipeline run.", + "operationId": "PipelineRuns_Get", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -568,30 +497,31 @@ }, { "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/PipelineRunNameParameter" } ], "responses": { "200": { - "description": "The request was successful; the list of credentials retrieved and returned successfully.", + "description": "The request was successful; the request was well - formed and received properly.", "schema": { - "$ref": "#/definitions/RegistryListCredentialsResult" + "$ref": "#/definitions/PipelineRun" } } }, "x-ms-examples": { - "RegistryListCredentials": { - "$ref": "./examples/RegistryListCredentials.json" + "PipelineRunGet": { + "$ref": "./examples/PipelineRunGet.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential": { - "post": { + }, + "put": { "tags": [ - "Registries" + "PipelineRuns" ], - "description": "Regenerates one of the login credentials for the specified container registry.", - "operationId": "Registries_RegenerateCredential", + "description": "Creates a pipeline run for a container registry with the specified parameters", + "operationId": "PipelineRuns_Create", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -606,37 +536,48 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "name": "regenerateCredentialParameters", + "$ref": "#/parameters/PipelineRunNameParameter" + }, + { + "name": "pipelineRunCreateParameters", "in": "body", - "description": "Specifies name of the password which should be regenerated -- password or password2.", + "description": "The parameters for creating a pipeline run.", "required": true, "schema": { - "$ref": "#/definitions/RegenerateCredentialParameters" + "$ref": "#/definitions/PipelineRun" } } ], "responses": { "200": { - "description": "The request was successful; the specified credential regenerated successfully.", + "description": "The request was successful; the request was well - formed and received properly.", "schema": { - "$ref": "#/definitions/RegistryListCredentialsResult" + "$ref": "#/definitions/PipelineRun" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/PipelineRun" } } }, "x-ms-examples": { - "RegistryRegenerateCredential": { - "$ref": "./examples/RegistryRegenerateCredential.json" + "PipelineRunCreate_Export": { + "$ref": "./examples/PipelineRunCreate_Export.json" + }, + "PipelineRunCreate_Import": { + "$ref": "./examples/PipelineRunCreate_Import.json" } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "delete": { "tags": [ - "Registries" + "PipelineRuns" ], - "description": "Gets the quota usages for the specified container registry.", - "operationId": "Registries_ListUsages", + "description": "Deletes a pipeline run from a container registry.", + "operationId": "PipelineRuns_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -649,30 +590,37 @@ }, { "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/PipelineRunNameParameter" } ], "responses": { "200": { - "description": "The request was successful; the registry usages retrieved and returned successfully.", - "schema": { - "$ref": "#/definitions/RegistryUsageListResult" - } + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The pipeline run does not exist in the subscription." } }, "x-ms-examples": { - "RegistryListUsages": { - "$ref": "./examples/RegistryListUsages.json" + "PipelineRunDelete": { + "$ref": "./examples/PipelineRunDelete.json" } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/pipelineRuns": { "get": { "tags": [ - "Registries" + "PipelineRuns" ], - "description": "Lists the private link resources for a container registry.", - "operationId": "Registries_ListPrivateLinkResources", + "description": "Lists all the pipeline runs for the specified container registry.", + "operationId": "PipelineRuns_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -689,15 +637,15 @@ ], "responses": { "200": { - "description": "The request was successful; the private link resources were retrieved and returned successfully.", + "description": "The request was successful; the request was well - formed and received properly.", "schema": { - "$ref": "#/definitions/PrivateLinkResourceListResult" + "$ref": "#/definitions/PipelineRunListResult" } } }, "x-ms-examples": { - "RegistryListPrivateLinkResources": { - "$ref": "./examples/RegistryListPrivateLinkResources.json" + "PipelineRunList": { + "$ref": "./examples/PipelineRunList.json" } }, "x-ms-pageable": { @@ -705,13 +653,13 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections/{privateEndpointConnectionName}": { "get": { "tags": [ - "Replications" + "PrivateEndpointConnections" ], - "description": "Gets the properties of the specified replication.", - "operationId": "Replications_Get", + "description": "Get the specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_Get", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -726,29 +674,29 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/ReplicationNameParameter" + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Replication" + "$ref": "#/definitions/PrivateEndpointConnection" } } }, "x-ms-examples": { - "ReplicationGet": { - "$ref": "./examples/ReplicationGet.json" + "PrivateEndpointConnectionGet": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" } } }, "put": { "tags": [ - "Replications" + "PrivateEndpointConnections" ], - "description": "Creates a replication for a container registry with the specified parameters.", - "operationId": "Replications_Create", + "description": "Update the state of specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -763,15 +711,15 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/ReplicationNameParameter" + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" }, { - "name": "replication", + "name": "privateEndpointConnection", "in": "body", - "description": "The parameters for creating a replication.", + "description": "The parameters for creating a private endpoint connection.", "required": true, "schema": { - "$ref": "#/definitions/Replication" + "$ref": "#/definitions/PrivateEndpointConnection" } } ], @@ -779,29 +727,29 @@ "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Replication" + "$ref": "#/definitions/PrivateEndpointConnection" } }, "201": { "description": "The request was successful; the operation will complete asynchronously.", "schema": { - "$ref": "#/definitions/Replication" + "$ref": "#/definitions/PrivateEndpointConnection" } } }, "x-ms-examples": { - "ReplicationCreate": { - "$ref": "./examples/ReplicationCreate.json" + "PrivateEndpointConnectionCreateOrUpdate": { + "$ref": "./examples/PrivateEndpointConnectionCreateOrUpdate.json" } }, "x-ms-long-running-operation": true }, "delete": { "tags": [ - "Replications" + "PrivateEndpointConnections" ], - "description": "Deletes a replication from a container registry.", - "operationId": "Replications_Delete", + "description": "Deletes the specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -816,7 +764,7 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/ReplicationNameParameter" + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" } ], "responses": { @@ -827,22 +775,24 @@ "description": "The request was successful; the operation will complete asynchronously." }, "204": { - "description": "The replication does not exist in the subscription." + "description": "The private endpoint connection does not exist in the subscription." } }, "x-ms-examples": { - "ReplicationDelete": { - "$ref": "./examples/ReplicationDelete.json" + "PrivateEndpointConnectionDelete": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" } }, "x-ms-long-running-operation": true - }, - "patch": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections": { + "get": { "tags": [ - "Replications" + "PrivateEndpointConnections" ], - "description": "Updates a replication for a container registry with the specified parameters.", - "operationId": "Replications_Update", + "description": "List all private endpoint connections in a container registry.", + "operationId": "PrivateEndpointConnections_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -855,49 +805,33 @@ }, { "$ref": "#/parameters/RegistryNameParameter" - }, - { - "$ref": "#/parameters/ReplicationNameParameter" - }, - { - "name": "replicationUpdateParameters", - "in": "body", - "description": "The parameters for updating a replication.", - "required": true, - "schema": { - "$ref": "#/definitions/ReplicationUpdateParameters" - } } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Replication" - } - }, - "201": { - "description": "The request was successful; the operation will complete asynchronously.", - "schema": { - "$ref": "#/definitions/Replication" + "$ref": "#/definitions/PrivateEndpointConnectionListResult" } } }, "x-ms-examples": { - "ReplicationUpdate": { - "$ref": "./examples/ReplicationUpdate.json" + "PrivateEndpointConnectionList": { + "$ref": "./examples/PrivateEndpointConnectionList.json" } }, - "x-ms-long-running-operation": true + "x-ms-pageable": { + "nextLinkName": "nextLink" + } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { "get": { "tags": [ - "Replications" + "Registries" ], - "description": "Lists all the replications for the specified container registry.", - "operationId": "Replications_List", + "description": "Gets the properties of the specified container registry.", + "operationId": "Registries_Get", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -916,27 +850,22 @@ "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/ReplicationListResult" + "$ref": "#/definitions/Registry" } } }, "x-ms-examples": { - "ReplicationList": { - "$ref": "./examples/ReplicationList.json" + "RegistryGet": { + "$ref": "./examples/RegistryGet.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}": { - "get": { + }, + "put": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Gets the properties of the specified webhook.", - "operationId": "Webhooks_Get", + "description": "Creates a container registry with the specified parameters.", + "operationId": "Registries_Create", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -951,52 +880,12 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/WebhookNameParameter" - } - ], - "responses": { - "200": { - "description": "The request was successful; the request was well-formed and received properly.", - "schema": { - "$ref": "#/definitions/Webhook" - } - } - }, - "x-ms-examples": { - "WebhookGet": { - "$ref": "./examples/WebhookGet.json" - } - } - }, - "put": { - "tags": [ - "Webhooks" - ], - "description": "Creates a webhook for a container registry with the specified parameters.", - "operationId": "Webhooks_Create", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/RegistryNameParameter" - }, - { - "$ref": "#/parameters/WebhookNameParameter" - }, - { - "name": "webhookCreateParameters", + "name": "registry", "in": "body", - "description": "The parameters for creating a webhook.", + "description": "The parameters for creating a container registry.", "required": true, "schema": { - "$ref": "#/definitions/WebhookCreateParameters" + "$ref": "#/definitions/Registry" } } ], @@ -1004,29 +893,29 @@ "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Webhook" + "$ref": "#/definitions/Registry" } }, "201": { "description": "The request was successful; the operation will complete asynchronously.", "schema": { - "$ref": "#/definitions/Webhook" + "$ref": "#/definitions/Registry" } } }, "x-ms-examples": { - "WebhookCreate": { - "$ref": "./examples/WebhookCreate.json" + "RegistryCreate": { + "$ref": "./examples/RegistryCreate.json" } }, "x-ms-long-running-operation": true }, "delete": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Deletes a webhook from a container registry.", - "operationId": "Webhooks_Delete", + "description": "Deletes a container registry.", + "operationId": "Registries_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1039,9 +928,6 @@ }, { "$ref": "#/parameters/RegistryNameParameter" - }, - { - "$ref": "#/parameters/WebhookNameParameter" } ], "responses": { @@ -1052,22 +938,22 @@ "description": "The request was successful; the operation will complete asynchronously." }, "204": { - "description": "The webhook does not exist in the subscription." + "description": "The container registry does not exist in the subscription." } }, "x-ms-examples": { - "WebhookDelete": { - "$ref": "./examples/WebhookDelete.json" + "RegistryDelete": { + "$ref": "./examples/RegistryDelete.json" } }, "x-ms-long-running-operation": true }, "patch": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Updates a webhook with the specified parameters.", - "operationId": "Webhooks_Update", + "description": "Updates a container registry with the specified parameters.", + "operationId": "Registries_Update", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1082,15 +968,12 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/WebhookNameParameter" - }, - { - "name": "webhookUpdateParameters", + "name": "registryUpdateParameters", "in": "body", - "description": "The parameters for updating a webhook.", + "description": "The parameters for updating a container registry.", "required": true, "schema": { - "$ref": "#/definitions/WebhookUpdateParameters" + "$ref": "#/definitions/RegistryUpdateParameters" } } ], @@ -1098,31 +981,31 @@ "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/Webhook" + "$ref": "#/definitions/Registry" } }, "201": { "description": "The request was successful; the operation will complete asynchronously.", "schema": { - "$ref": "#/definitions/Webhook" + "$ref": "#/definitions/Registry" } } }, "x-ms-examples": { - "WebhookUpdate": { - "$ref": "./examples/WebhookUpdate.json" + "RegistryUpdate": { + "$ref": "./examples/RegistryUpdate.json" } }, "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": { "get": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Lists all the webhooks for the specified container registry.", - "operationId": "Webhooks_List", + "description": "Lists all the container registries under the specified resource group.", + "operationId": "Registries_ListByResourceGroup", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1132,22 +1015,52 @@ }, { "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/RegistryListResult" + } + } + }, + "x-ms-examples": { + "RegistryListByResourceGroup": { + "$ref": "./examples/RegistryListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists all the container registries under the specified subscription.", + "operationId": "Registries_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/RegistryNameParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { "description": "The request was successful; the request was well-formed and received properly.", "schema": { - "$ref": "#/definitions/WebhookListResult" + "$ref": "#/definitions/RegistryListResult" } } }, "x-ms-examples": { - "WebhookList": { - "$ref": "./examples/WebhookList.json" + "RegistryList": { + "$ref": "./examples/RegistryList.json" } }, "x-ms-pageable": { @@ -1155,13 +1068,13 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials": { "post": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Triggers a ping event to be sent to the webhook.", - "operationId": "Webhooks_Ping", + "description": "Lists the login credentials for the specified container registry.", + "operationId": "Registries_ListCredentials", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1174,33 +1087,30 @@ }, { "$ref": "#/parameters/RegistryNameParameter" - }, - { - "$ref": "#/parameters/WebhookNameParameter" } ], "responses": { "200": { - "description": "The request was successful; the request was well-formed and received properly.", + "description": "The request was successful; the list of credentials retrieved and returned successfully.", "schema": { - "$ref": "#/definitions/EventInfo" + "$ref": "#/definitions/RegistryListCredentialsResult" } } }, "x-ms-examples": { - "WebhookPing": { - "$ref": "./examples/WebhookPing.json" + "RegistryListCredentials": { + "$ref": "./examples/RegistryListCredentials.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential": { "post": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Gets the configuration of service URI and custom headers for the webhook.", - "operationId": "Webhooks_GetCallbackConfig", + "description": "Regenerates one of the login credentials for the specified container registry.", + "operationId": "Registries_RegenerateCredential", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1215,31 +1125,37 @@ "$ref": "#/parameters/RegistryNameParameter" }, { - "$ref": "#/parameters/WebhookNameParameter" + "name": "regenerateCredentialParameters", + "in": "body", + "description": "Specifies name of the password which should be regenerated -- password or password2.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateCredentialParameters" + } } ], "responses": { "200": { - "description": "The request was successful; the request was well-formed and received properly.", + "description": "The request was successful; the specified credential regenerated successfully.", "schema": { - "$ref": "#/definitions/CallbackConfig" + "$ref": "#/definitions/RegistryListCredentialsResult" } } }, "x-ms-examples": { - "WebhookGetCallbackConfig": { - "$ref": "./examples/WebhookGetCallbackConfig.json" + "RegistryRegenerateCredential": { + "$ref": "./examples/RegistryRegenerateCredential.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages": { + "get": { "tags": [ - "Webhooks" + "Registries" ], - "description": "Lists recent events for the specified webhook.", - "operationId": "Webhooks_ListEvents", + "description": "Gets the quota usages for the specified container registry.", + "operationId": "Registries_ListUsages", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1252,106 +1168,1009 @@ }, { "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the registry usages retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/RegistryUsageListResult" + } + } + }, + "x-ms-examples": { + "RegistryListUsages": { + "$ref": "./examples/RegistryListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists the private link resources for a container registry.", + "operationId": "Registries_ListPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/WebhookNameParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" } ], "responses": { "200": { - "description": "The request was successful; the request was well-formed and received properly.", + "description": "The request was successful; the private link resources were retrieved and returned successfully.", "schema": { - "$ref": "#/definitions/EventListResult" + "$ref": "#/definitions/PrivateLinkResourceListResult" } } }, "x-ms-examples": { - "WebhookListEvents": { - "$ref": "./examples/WebhookListEvents.json" + "RegistryListPrivateLinkResources": { + "$ref": "./examples/RegistryListPrivateLinkResources.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } - } - }, - "definitions": { - "ImportImageParameters": { - "required": [ - "source" - ], - "type": "object", - "properties": { - "source": { - "$ref": "#/definitions/ImportSource", - "description": "The source of the image." - }, - "targetTags": { - "description": "List of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).", - "type": "array", - "items": { - "type": "string" - } - }, - "untaggedTargetRepositories": { - "description": "List of strings of repository names to do a manifest only copy. No tag will be created.", - "type": "array", - "items": { - "type": "string" - } - }, + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": { + "get": { + "tags": [ + "Replications" + ], + "description": "Gets the properties of the specified replication.", + "operationId": "Replications_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationGet": { + "$ref": "./examples/ReplicationGet.json" + } + } + }, + "put": { + "tags": [ + "Replications" + ], + "description": "Creates a replication for a container registry with the specified parameters.", + "operationId": "Replications_Create", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + }, + { + "name": "replication", + "in": "body", + "description": "The parameters for creating a replication.", + "required": true, + "schema": { + "$ref": "#/definitions/Replication" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationCreate": { + "$ref": "./examples/ReplicationCreate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Replications" + ], + "description": "Deletes a replication from a container registry.", + "operationId": "Replications_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The replication does not exist in the subscription." + } + }, + "x-ms-examples": { + "ReplicationDelete": { + "$ref": "./examples/ReplicationDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Replications" + ], + "description": "Updates a replication for a container registry with the specified parameters.", + "operationId": "Replications_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + }, + { + "name": "replicationUpdateParameters", + "in": "body", + "description": "The parameters for updating a replication.", + "required": true, + "schema": { + "$ref": "#/definitions/ReplicationUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationUpdate": { + "$ref": "./examples/ReplicationUpdate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications": { + "get": { + "tags": [ + "Replications" + ], + "description": "Lists all the replications for the specified container registry.", + "operationId": "Replications_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ReplicationListResult" + } + } + }, + "x-ms-examples": { + "ReplicationList": { + "$ref": "./examples/ReplicationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}": { + "get": { + "tags": [ + "Webhooks" + ], + "description": "Gets the properties of the specified webhook.", + "operationId": "Webhooks_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookGet": { + "$ref": "./examples/WebhookGet.json" + } + } + }, + "put": { + "tags": [ + "Webhooks" + ], + "description": "Creates a webhook for a container registry with the specified parameters.", + "operationId": "Webhooks_Create", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + }, + { + "name": "webhookCreateParameters", + "in": "body", + "description": "The parameters for creating a webhook.", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookCreateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookCreate": { + "$ref": "./examples/WebhookCreate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Webhooks" + ], + "description": "Deletes a webhook from a container registry.", + "operationId": "Webhooks_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The webhook does not exist in the subscription." + } + }, + "x-ms-examples": { + "WebhookDelete": { + "$ref": "./examples/WebhookDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Webhooks" + ], + "description": "Updates a webhook with the specified parameters.", + "operationId": "Webhooks_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + }, + { + "name": "webhookUpdateParameters", + "in": "body", + "description": "The parameters for updating a webhook.", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookUpdate": { + "$ref": "./examples/WebhookUpdate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks": { + "get": { + "tags": [ + "Webhooks" + ], + "description": "Lists all the webhooks for the specified container registry.", + "operationId": "Webhooks_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WebhookListResult" + } + } + }, + "x-ms-examples": { + "WebhookList": { + "$ref": "./examples/WebhookList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Triggers a ping event to be sent to the webhook.", + "operationId": "Webhooks_Ping", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/EventInfo" + } + } + }, + "x-ms-examples": { + "WebhookPing": { + "$ref": "./examples/WebhookPing.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Gets the configuration of service URI and custom headers for the webhook.", + "operationId": "Webhooks_GetCallbackConfig", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/CallbackConfig" + } + } + }, + "x-ms-examples": { + "WebhookGetCallbackConfig": { + "$ref": "./examples/WebhookGetCallbackConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Lists recent events for the specified webhook.", + "operationId": "Webhooks_ListEvents", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/EventListResult" + } + } + }, + "x-ms-examples": { + "WebhookListEvents": { + "$ref": "./examples/WebhookListEvents.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ExportPipeline": { + "description": "An object that represents an export pipeline for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/IdentityProperties", + "description": "The identity of the export pipeline." + }, + "properties": { + "$ref": "#/definitions/ExportPipelineProperties", + "description": "The properties of the export pipeline.", + "x-ms-client-flatten": true + } + } + }, + "IdentityProperties": { + "description": "Managed identity for the resource.", + "type": "object", + "properties": { + "principalId": { + "description": "The principal ID of resource identity.", + "type": "string" + }, + "tenantId": { + "description": "The tenant ID of resource.", + "type": "string" + }, + "type": { + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties" + } + } + } + }, + "ExportPipelineProperties": { + "description": "The properties of an export pipeline.", + "required": [ + "target" + ], + "type": "object", + "properties": { + "target": { + "$ref": "#/definitions/ExportPipelineTargetProperties", + "description": "The target properties of the export pipeline." + }, + "options": { + "description": "The list of all options configured for the pipeline.", + "type": "array", + "items": { + "enum": [ + "OverwriteTags", + "OverwriteBlobs", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "type": "string", + "x-ms-enum": { + "name": "PipelineOptions", + "modelAsString": true + } + } + }, + "provisioningState": { + "description": "The provisioning state of the pipeline at the time the operation was called.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "UserIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, + "ExportPipelineTargetProperties": { + "description": "The properties of the export pipeline target.", + "required": [ + "keyVaultUri" + ], + "type": "object", + "properties": { + "type": { + "description": "The type of target for the export pipeline.", + "type": "string" + }, + "uri": { + "description": "The target uri of the export pipeline.\r\nWhen 'AzureStorageBlob': \"https://accountName.blob.core.windows.net/containerName/blobName\"\r\nWhen 'AzureStorageBlobContainer': \"https://accountName.blob.core.windows.net/containerName\"", + "type": "string" + }, + "keyVaultUri": { + "description": "They key vault secret uri to obtain the target storage SAS token.", + "type": "string" + } + } + }, + "ExportPipelineListResult": { + "description": "The result of a request to list export pipelines for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of export pipelines. Since this list may be incomplete, the nextLink field should be used to request the next list of export pipelines.", + "type": "array", + "items": { + "$ref": "#/definitions/ExportPipeline" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of pipeline runs.", + "type": "string" + } + } + }, + "ImportImageParameters": { + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/ImportSource", + "description": "The source of the image." + }, + "targetTags": { + "description": "List of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).", + "type": "array", + "items": { + "type": "string" + } + }, + "untaggedTargetRepositories": { + "description": "List of strings of repository names to do a manifest only copy. No tag will be created.", + "type": "array", + "items": { + "type": "string" + } + }, "mode": { "description": "When Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins.", "default": "NoForce", "enum": [ - "NoForce", - "Force" + "NoForce", + "Force" + ], + "type": "string", + "x-ms-enum": { + "name": "ImportMode", + "modelAsString": true + } + } + } + }, + "ImportSource": { + "required": [ + "sourceImage" + ], + "type": "object", + "properties": { + "resourceId": { + "description": "The resource identifier of the source Azure Container Registry.", + "type": "string" + }, + "registryUri": { + "description": "The address of the source registry (e.g. 'mcr.microsoft.com').", + "type": "string" + }, + "credentials": { + "$ref": "#/definitions/ImportSourceCredentials", + "description": "Credentials used when importing from a registry uri." + }, + "sourceImage": { + "description": "Repository name of the source image.\r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').", + "type": "string" + } + } + }, + "ImportSourceCredentials": { + "required": [ + "password" + ], + "type": "object", + "properties": { + "username": { + "description": "The username to authenticate with the source registry.", + "type": "string" + }, + "password": { + "description": "The password used to authenticate with the source registry.", + "type": "string" + } + } + }, + "ImportPipeline": { + "description": "An object that represents an import pipeline for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/IdentityProperties", + "description": "The identity of the import pipeline." + }, + "properties": { + "$ref": "#/definitions/ImportPipelineProperties", + "description": "The properties of the import pipeline.", + "x-ms-client-flatten": true + } + } + }, + "ImportPipelineProperties": { + "description": "The properties of an import pipeline.", + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/ImportPipelineSourceProperties", + "description": "The source properties of the import pipeline." + }, + "trigger": { + "$ref": "#/definitions/PipelineTriggerProperties", + "description": "The properties that describe the trigger of the import pipeline." + }, + "options": { + "description": "The list of all options configured for the pipeline.", + "type": "array", + "items": { + "enum": [ + "OverwriteTags", + "OverwriteBlobs", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "type": "string", + "x-ms-enum": { + "name": "PipelineOptions", + "modelAsString": true + } + } + }, + "provisioningState": { + "description": "The provisioning state of the pipeline at the time the operation was called.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" ], "type": "string", + "readOnly": true, "x-ms-enum": { - "name": "ImportMode", + "name": "ProvisioningState", "modelAsString": true } } } }, - "ImportSource": { + "ImportPipelineSourceProperties": { + "description": "The properties of the import pipeline source.", "required": [ - "sourceImage" + "keyVaultUri" ], "type": "object", "properties": { - "resourceId": { - "description": "The resource identifier of the source Azure Container Registry.", - "type": "string" + "type": { + "description": "The type of source for the import pipeline.", + "default": "AzureStorageBlobContainer", + "enum": [ + "AzureStorageBlobContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "PipelineSourceType", + "modelAsString": true + } }, - "registryUri": { - "description": "The address of the source registry (e.g. 'mcr.microsoft.com').", + "uri": { + "description": "The source uri of the import pipeline.\r\nWhen 'AzureStorageBlob': \"https://accountName.blob.core.windows.net/containerName/blobName\"\r\nWhen 'AzureStorageBlobContainer': \"https://accountName.blob.core.windows.net/containerName\"", "type": "string" }, - "credentials": { - "$ref": "#/definitions/ImportSourceCredentials", - "description": "Credentials used when importing from a registry uri." - }, - "sourceImage": { - "description": "Repository name of the source image.\r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').", + "keyVaultUri": { + "description": "They key vault secret uri to obtain the source storage SAS token.", "type": "string" } } }, - "ImportSourceCredentials": { + "PipelineTriggerProperties": { + "type": "object", + "properties": { + "sourceTrigger": { + "$ref": "#/definitions/PipelineSourceTriggerProperties", + "description": "The source trigger properties of the pipeline." + } + } + }, + "PipelineSourceTriggerProperties": { "required": [ - "password" + "status" ], "type": "object", "properties": { - "username": { - "description": "The username to authenticate with the source registry.", - "type": "string" + "status": { + "description": "The current status of the source trigger.", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "TriggerStatus", + "modelAsString": true + } + } + } + }, + "ImportPipelineListResult": { + "description": "The result of a request to list import pipelines for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of import pipelines. Since this list may be incomplete, the nextLink field should be used to request the next list of import pipelines.", + "type": "array", + "items": { + "$ref": "#/definitions/ImportPipeline" + } }, - "password": { - "description": "The password used to authenticate with the source registry.", + "nextLink": { + "description": "The URI that can be used to request the next list of pipeline runs.", "type": "string" } } @@ -1384,135 +2203,354 @@ } } }, - "RegistryNameStatus": { - "description": "The result of a request to check the availability of a container registry name.", + "RegistryNameStatus": { + "description": "The result of a request to check the availability of a container registry name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value that indicates whether the name is available.", + "type": "boolean" + }, + "reason": { + "description": "If any, the reason that the name is not available.", + "type": "string" + }, + "message": { + "description": "If any, the error message that provides more detail for the reason that the name is not available.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "The result of a request to list container registry operations.", + "type": "object", + "properties": { + "value": { + "description": "The list of container registry operations. Since this list may be incomplete, the nextLink field should be used to request the next list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationDefinition" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of container registry operations.", + "type": "string" + } + } + }, + "OperationDefinition": { + "description": "The definition of a container registry operation.", + "type": "object", + "properties": { + "origin": { + "description": "The origin information of the container registry operation.", + "type": "string" + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayDefinition", + "description": "The display information for the container registry operation." + }, + "properties": { + "$ref": "#/definitions/OperationPropertiesDefinition", + "description": "The properties information for the container registry operation.", + "x-ms-client-flatten": true + } + } + }, + "OperationDisplayDefinition": { + "description": "The display information for a container registry operation.", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.ContainerRegistry.", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + }, + "OperationPropertiesDefinition": { + "description": "The definition of Azure Monitoring properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/OperationServiceSpecificationDefinition", + "description": "The definition of Azure Monitoring service." + } + } + }, + "OperationServiceSpecificationDefinition": { + "description": "The definition of Azure Monitoring list.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "A list of Azure Monitoring metrics definition.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationMetricSpecificationDefinition" + } + } + } + }, + "OperationMetricSpecificationDefinition": { + "description": "The definition of Azure Monitoring metric.", + "type": "object", + "properties": { + "name": { + "description": "Metric name.", + "type": "string" + }, + "displayName": { + "description": "Metric display name.", + "type": "string" + }, + "displayDescription": { + "description": "Metric description.", + "type": "string" + }, + "unit": { + "description": "Metric unit.", + "type": "string" + }, + "aggregationType": { + "description": "Metric aggregation type.", + "type": "string" + }, + "internalMetricName": { + "description": "Internal metric name.", + "type": "string" + } + } + }, + "PipelineRun": { + "description": "An object that represents a pipeline run for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PipelineRunProperties", + "description": "The properties of a pipeline run.", + "x-ms-client-flatten": true + } + } + }, + "PipelineRunProperties": { + "description": "The properties of a pipeline run.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of a pipeline run.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "request": { + "$ref": "#/definitions/PipelineRunRequest", + "description": "The request parameters for a pipeline run." + }, + "response": { + "$ref": "#/definitions/PipelineRunResponse", + "description": "The response of a pipeline run.", + "readOnly": true + }, + "forceUpdateTag": { + "description": "How the pipeline run should be forced to recreate even if the pipeline run configuration has not changed.", + "type": "string" + } + } + }, + "PipelineRunRequest": { + "description": "The request properties provided for a pipeline run.", + "type": "object", + "properties": { + "pipelineResourceId": { + "description": "The resource ID of the pipeline to run.", + "type": "string" + }, + "artifacts": { + "description": "List of source artifacts to be transferred by the pipeline. \r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').", + "type": "array", + "items": { + "type": "string" + } + }, + "source": { + "$ref": "#/definitions/PipelineRunSourceProperties", + "description": "The source properties of the pipeline run." + }, + "target": { + "$ref": "#/definitions/PipelineRunTargetProperties", + "description": "The target properties of the pipeline run." + }, + "catalogDigest": { + "description": "The digest of the tar used to transfer the artifacts.", + "type": "string" + } + } + }, + "PipelineRunResponse": { + "description": "The response properties returned for a pipeline run.", "type": "object", "properties": { - "nameAvailable": { - "description": "The value that indicates whether the name is available.", - "type": "boolean" + "status": { + "description": "The current status of the pipeline run.", + "type": "string" }, - "reason": { - "description": "If any, the reason that the name is not available.", + "importedArtifacts": { + "description": "The artifacts imported in the pipeline run.", + "type": "array", + "items": { + "type": "string" + } + }, + "progress": { + "$ref": "#/definitions/ProgressProperties", + "description": "The current progress of the copy operation." + }, + "startTime": { + "format": "date-time", + "description": "The time the pipeline run started.", "type": "string" }, - "message": { - "description": "If any, the error message that provides more detail for the reason that the name is not available.", + "finishTime": { + "format": "date-time", + "description": "The time the pipeline run finished.", + "type": "string" + }, + "source": { + "$ref": "#/definitions/ImportPipelineSourceProperties", + "description": "The source of the pipeline run." + }, + "target": { + "$ref": "#/definitions/ExportPipelineTargetProperties", + "description": "The target of the pipeline run." + }, + "catalogDigest": { + "description": "The digest of the tar used to transfer the artifacts.", + "type": "string" + }, + "trigger": { + "$ref": "#/definitions/PipelineTriggerDescriptor", + "description": "The trigger that caused the pipeline run." + }, + "pipelineRunErrorMessage": { + "description": "The detailed error message for the pipeline run in the case of failure.", "type": "string" } } }, - "OperationListResult": { - "description": "The result of a request to list container registry operations.", + "PipelineRunSourceProperties": { "type": "object", "properties": { - "value": { - "description": "The list of container registry operations. Since this list may be incomplete, the nextLink field should be used to request the next list of operations.", - "type": "array", - "items": { - "$ref": "#/definitions/OperationDefinition" + "type": { + "description": "The type of the source.", + "default": "AzureStorageBlob", + "enum": [ + "AzureStorageBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "PipelineRunSourceType", + "modelAsString": true } }, - "nextLink": { - "description": "The URI that can be used to request the next list of container registry operations.", + "name": { + "description": "The name of the source.", "type": "string" } } }, - "OperationDefinition": { - "description": "The definition of a container registry operation.", + "PipelineRunTargetProperties": { "type": "object", "properties": { - "origin": { - "description": "The origin information of the container registry operation.", - "type": "string" + "type": { + "description": "The type of the target.", + "default": "AzureStorageBlob", + "enum": [ + "AzureStorageBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "PipelineRunTargetType", + "modelAsString": true + } }, "name": { - "description": "Operation name: {provider}/{resource}/{operation}.", + "description": "The name of the target.", "type": "string" - }, - "display": { - "$ref": "#/definitions/OperationDisplayDefinition", - "description": "The display information for the container registry operation." - }, - "properties": { - "$ref": "#/definitions/OperationPropertiesDefinition", - "description": "The properties information for the container registry operation.", - "x-ms-client-flatten": true } } }, - "OperationDisplayDefinition": { - "description": "The display information for a container registry operation.", + "ProgressProperties": { "type": "object", "properties": { - "provider": { - "description": "The resource provider name: Microsoft.ContainerRegistry.", - "type": "string" - }, - "resource": { - "description": "The resource on which the operation is performed.", - "type": "string" - }, - "operation": { - "description": "The operation that users can perform.", - "type": "string" - }, - "description": { - "description": "The description for the operation.", + "percentage": { + "description": "The percentage complete of the copy operation.", "type": "string" } } }, - "OperationPropertiesDefinition": { - "description": "The definition of Azure Monitoring properties.", + "PipelineTriggerDescriptor": { "type": "object", "properties": { - "serviceSpecification": { - "$ref": "#/definitions/OperationServiceSpecificationDefinition", - "description": "The definition of Azure Monitoring service." + "sourceTrigger": { + "$ref": "#/definitions/PipelineSourceTriggerDescriptor", + "description": "The source trigger that caused the pipeline run." } } }, - "OperationServiceSpecificationDefinition": { - "description": "The definition of Azure Monitoring list.", + "PipelineSourceTriggerDescriptor": { "type": "object", "properties": { - "metricSpecifications": { - "description": "A list of Azure Monitoring metrics definition.", - "type": "array", - "items": { - "$ref": "#/definitions/OperationMetricSpecificationDefinition" - } + "timestamp": { + "format": "date-time", + "description": "The timestamp when the source update happened.", + "type": "string" } } }, - "OperationMetricSpecificationDefinition": { - "description": "The definition of Azure Monitoring metric.", + "PipelineRunListResult": { + "description": "The result of a request to list pipeline runs for a container registry.", "type": "object", "properties": { - "name": { - "description": "Metric name.", - "type": "string" - }, - "displayName": { - "description": "Metric display name.", - "type": "string" - }, - "displayDescription": { - "description": "Metric description.", - "type": "string" - }, - "unit": { - "description": "Metric unit.", - "type": "string" - }, - "aggregationType": { - "description": "Metric aggregation type.", - "type": "string" + "value": { + "description": "The list of pipeline runs. Since this list may be incomplete, the nextLink field should be used to request the next list of pipeline runs.", + "type": "array", + "items": { + "$ref": "#/definitions/PipelineRun" + } }, - "internalMetricName": { - "description": "Internal metric name.", + "nextLink": { + "description": "The URI that can be used to request the next list of pipeline runs.", "type": "string" } } @@ -1520,20 +2558,12 @@ "PrivateEndpointConnection": { "description": "An object that represents a private endpoint connection for a container registry.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], "properties": { - "type": { - "description": "The resource type is private endpoint connection.", - "type": "string", - "readOnly": true - }, - "id": { - "description": "The resource ID.", - "type": "string" - }, - "name": { - "description": "The name of the resource.", - "type": "string" - }, "properties": { "$ref": "#/definitions/PrivateEndpointConnectionProperties", "description": "The properties of a private endpoint connection.", @@ -1596,7 +2626,7 @@ ], "type": "string", "x-ms-enum": { - "name": "Status", + "name": "ConnectionStatus", "modelAsString": true } }, @@ -1700,41 +2730,6 @@ } } }, - "IdentityProperties": { - "description": "Managed identity for the resource.", - "type": "object", - "properties": { - "principalId": { - "description": "The principal ID of resource identity.", - "type": "string" - }, - "tenantId": { - "description": "The tenant ID of resource.", - "type": "string" - }, - "type": { - "description": "The identity type.", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceIdentityType", - "modelAsString": false - } - }, - "userAssignedIdentities": { - "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserIdentityProperties" - } - } - } - }, "RegistryProperties": { "description": "The properties of a container registry.", "type": "object", @@ -1812,19 +2807,19 @@ "$ref": "#/definitions/PrivateEndpointConnection" }, "readOnly": true - } - } - }, - "UserIdentityProperties": { - "type": "object", - "properties": { - "principalId": { - "description": "The principal id of user assigned identity.", - "type": "string" }, - "clientId": { - "description": "The client id of user assigned identity.", - "type": "string" + "publicNetworkAccess": { + "description": "Whether or not public network access is allowed for the container registry.", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } } } }, @@ -2138,6 +3133,18 @@ "dataEndpointEnabled": { "description": "Enable a single data endpoint per region for serving data.", "type": "boolean" + }, + "publicNetworkAccess": { + "description": "Whether or not public network access is allowed for the container registry.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } } } }, @@ -2369,6 +3376,11 @@ "$ref": "#/definitions/Status", "description": "The status of the replication at the time the operation was called.", "readOnly": true + }, + "regionEndpointEnabled": { + "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.", + "default": true, + "type": "boolean" } } }, @@ -2382,6 +3394,20 @@ "additionalProperties": { "type": "string" } + }, + "properties": { + "$ref": "#/definitions/ReplicationUpdateParametersProperties", + "description": "The parameters for updating a replication's properties", + "x-ms-client-flatten": true + } + } + }, + "ReplicationUpdateParametersProperties": { + "type": "object", + "properties": { + "regionEndpointEnabled": { + "description": "Specifies whether the replication's regional endpoint is enabled. Requests will not be routed to a replication whose regional endpoint is disabled, however its data will continue to be synced with other replications.", + "type": "boolean" } } }, @@ -2897,6 +3923,27 @@ } } }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, "Resource": { "description": "An Azure resource.", "required": [ @@ -3001,6 +4048,39 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "ExportPipelineNameParameter": { + "name": "exportPipelineName", + "in": "path", + "description": "The name of the export pipeline.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "x-ms-parameter-location": "method" + }, + "ImportPipelineNameParameter": { + "name": "importPipelineName", + "in": "path", + "description": "The name of the import pipeline.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "x-ms-parameter-location": "method" + }, + "PipelineRunNameParameter": { + "name": "pipelineRunName", + "in": "path", + "description": "The name of the pipeline run.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json new file mode 100644 index 000000000000..9c71dc64f11c --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "exportPipelineName": "myExportPipeline", + "exportPipelineCreateParameters": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "target": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + }, + "options": [ + "OverwriteBlobs" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "name": "myExportPipeline", + "type": "Microsoft.ContainerRegistry/registries/exportPipelines", + "properties": { + "target": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + }, + "options": [ + "OverwriteBlobs" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", + "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "name": "myExportPipeline", + "type": "Microsoft.ContainerRegistry/registries/exportPipelines", + "properties": { + "target": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + }, + "options": [ + "OverwriteBlobs" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", + "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineDelete.json new file mode 100644 index 000000000000..a4b812f4713f --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "exportPipelineName": "myExportPipeline" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json new file mode 100644 index 000000000000..6ff81e8d607a --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "exportPipelineName": "myExportPipeline" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "name": "myExportPipeline", + "type": "Microsoft.ContainerRegistry/registries/exportPipelines", + "properties": { + "target": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + }, + "options": [ + "OverwriteBlobs" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", + "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json new file mode 100644 index 000000000000..cff4002faea4 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "name": "myExportPipeline", + "type": "Microsoft.ContainerRegistry/registries/exportPipelines", + "properties": { + "target": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + }, + "options": [ + "OverwriteBlobs" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", + "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", + "type": "SystemAssigned" + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json new file mode 100644 index 000000000000..d348a3e20632 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "importPipelineName": "myImportPipeline", + "importPipelineCreateParameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {} + } + }, + "properties": { + "source": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "options": [ + "OverwriteTags", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline", + "name": "myImportPipeline", + "type": "Microsoft.ContainerRegistry/registries/importPipelines", + "properties": { + "source": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "trigger": { + "sourceTrigger": { + "status": "Enabled" + } + }, + "options": [ + "OverwriteTags", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e", + "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline", + "name": "myImportPipeline", + "type": "Microsoft.ContainerRegistry/registries/importPipelines", + "properties": { + "source": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "trigger": { + "sourceTrigger": { + "status": "Enabled" + } + }, + "options": [ + "OverwriteTags", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e", + "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466" + } + } + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineDelete.json new file mode 100644 index 000000000000..def5fce4b017 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "importPipelineName": "myImportPipeline" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json new file mode 100644 index 000000000000..f0d7d584162f --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "importPipelineName": "myImportPipeline" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline", + "name": "myImportPipeline", + "type": "Microsoft.ContainerRegistry/registries/importPipelines", + "properties": { + "source": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "trigger": { + "sourceTrigger": { + "status": "Enabled" + } + }, + "options": [ + "OverwriteTags", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e", + "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466" + } + } + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json new file mode 100644 index 000000000000..70b5b1c3fd11 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline", + "name": "myImportPipeline", + "type": "Microsoft.ContainerRegistry/registries/importPipelines", + "properties": { + "source": { + "type": "AzureStorageBlobContainer", + "uri": "https://accountname.blob.core.windows.net/containername", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "trigger": { + "sourceTrigger": { + "status": "Enabled" + } + }, + "options": [ + "OverwriteTags", + "DeleteSourceBlobOnSuccess", + "ContinueOnErrors" + ], + "provisioningState": "Succeeded" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "d3ce1bc2-f7d7-4a5b-9979-950f4e57680e", + "principalId": "b6p9f58b-6fbf-4efd-a7e0-fvd46911a466" + } + } + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Export.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Export.json new file mode 100644 index 000000000000..df26c76a9a4d --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Export.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "pipelineRunName": "myPipelineRun", + "pipelineRunCreateParameters": { + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "target": { + "type": "AzureStorageBlob", + "name": "myblob.tar.gz" + }, + "artifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "artifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ] + }, + "response": { + "status": "Running", + "catalogDigest": "sha256@", + "progress": { + "percentage": "20" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "target": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + } + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "artifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ] + }, + "response": { + "status": "Running", + "catalogDigest": "sha256@", + "progress": { + "percentage": "20" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "target": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + } + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Import.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Import.json new file mode 100644 index 000000000000..f95850d690dc --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunCreate_Import.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "pipelineRunName": "myPipelineRun", + "pipelineRunCreateParameters": { + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline", + "source": { + "type": "AzureStorageBlob", + "name": "myblob.tar.gz" + }, + "catalogDigest": "sha256@" + }, + "forceUpdateTag": "2020-03-04T17:23:21.9261521+00:00" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline" + }, + "response": { + "status": "Succeeded", + "progress": { + "percentage": "100" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "importedArtifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ], + "source": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "catalogDigest": "sha256@" + }, + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline" + }, + "response": { + "status": "Succeeded", + "progress": { + "percentage": "100" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "finishTime": "2020-03-04T17:25:21.9261521+00:00", + "importedArtifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ], + "source": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "catalogDigest": "sha256@" + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunDelete.json new file mode 100644 index 000000000000..b9f6e525f662 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "pipelineRunName": "myPipelineRun" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunGet.json new file mode 100644 index 000000000000..dd6e9eb2208e --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "pipelineRunName": "myPipelineRun" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "artifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ] + }, + "response": { + "status": "Running", + "catalogDigest": "sha256@", + "progress": { + "percentage": "20" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "target": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + } + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunList.json new file mode 100644 index 000000000000..38806c596b8d --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PipelineRunList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/exportPipelines/myExportPipeline", + "artifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ] + }, + "response": { + "status": "Running", + "catalogDigest": "sha256@", + "progress": { + "percentage": "20" + }, + "startTime": "2020-03-04T17:23:21.9261521+00:00", + "target": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrexportsas" + } + }, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/pipelineRuns/myPipelineRun", + "name": "myPipelineRun", + "type": "Microsoft.ContainerRegistry/registries/pipelineRuns", + "properties": { + "request": { + "pipelineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/importPipelines/myImportPipeline" + }, + "response": { + "status": "Succeeded", + "progress": { + "percentage": "100" + }, + "startTime": "2020-03-03T17:23:21.9261521+00:00", + "importedArtifacts": [ + "sourceRepository/hello-world", + "sourceRepository2@sha256:00000000000000000000000000000000000" + ], + "source": { + "type": "AzureStorageBlob", + "uri": "https://accountname.blob.core.windows.net/containername/myblob.tar.gz", + "keyVaultUri": "https://myvault.vault.azure.net/secrets/acrimportsas" + }, + "catalogDigest": "sha256@" + }, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/readme.java.md b/specification/containerregistry/resource-manager/readme.java.md index 87034cad98c9..7e591a145f73 100644 --- a/specification/containerregistry/resource-manager/readme.java.md +++ b/specification/containerregistry/resource-manager/readme.java.md @@ -12,6 +12,15 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-containerregistry ``` +These settings apply only when `--multiapi` is not specified on the command line. + +``` yaml $(java) && !$(multiapi) +directive: + - rename-model: + from: DockerBuildStep + to: DockerTaskStep +``` + ### Java multi-api ``` yaml $(java) && $(multiapi) diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index d4d66a50652f..dc042e35dca0 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the ContainerRegistry API. ``` yaml openapi-type: arm -tag: package-2019-06-preview +tag: package-2019-12-preview ``` diff --git a/specification/containerregistry/resource-manager/readme.typescript.md b/specification/containerregistry/resource-manager/readme.typescript.md index 8fc2768ada95..db34cc240a6d 100644 --- a/specification/containerregistry/resource-manager/readme.typescript.md +++ b/specification/containerregistry/resource-manager/readme.typescript.md @@ -5,7 +5,7 @@ Please also specify `--typescript-sdks-folder=`. + +``` yaml $(tag)=='package-2020-03' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + ### Tag: package-2020-02 and go These settings apply only when `--package-2020-02 --go` is specified on the command line. diff --git a/specification/containerservice/resource-manager/readme.java.md b/specification/containerservice/resource-manager/readme.java.md index 85807fd809dc..bbb60e7a0feb 100644 --- a/specification/containerservice/resource-manager/readme.java.md +++ b/specification/containerservice/resource-manager/readme.java.md @@ -22,6 +22,20 @@ batch: - tag: package-2019-11 - tag: package-2020-01 - tag: package-2020-02 + - tag: package-2020-03 +``` + +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2020-02 and java diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index 848e0fd49de4..aa5d14dc6729 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -34,15 +34,27 @@ These are the global settings for the ContainerServices API. ``` yaml openapi-type: arm -tag: package-2020-02 +tag: package-2020-03 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json + - Microsoft.ContainerService/stable/2017-07-01/containerService.json + - Microsoft.ContainerService/stable/2019-08-01/location.json + - Microsoft.ContainerService/stable/2020-03-01/managedClusters.json +``` + ### Tag: package-2020-02 These settings apply only when `--tag=package-2020-02` is specified on the command line. -```yaml $(tag) == 'package-2020-02' +``` yaml $(tag) == 'package-2020-02' input-file: - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - Microsoft.ContainerService/stable/2017-07-01/containerService.json @@ -223,6 +235,19 @@ input-file: - Microsoft.ContainerService/stable/2017-07-01/containerService.json ``` +### Tag: package-2020-03-01-only + +These settings apply only when `--tag=package-2020-03-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-01-only' +input-file: +- Microsoft.ContainerService/stable/2020-03-01/managedClusters.json +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ManagedClusterProperties.properties.autoScalerProfile + reason: Cluster-autoscaler settings are not camel-cased +``` + ### Tag: package-2020-02-01-only These settings apply only when `--tag=package-2020-02-01-only` is specified on the command line. @@ -486,6 +511,7 @@ input-file: - $(this-folder)/Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2017-07-01/containerService.json - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/location.json + - $(this-folder)/Microsoft.ContainerService/stable/2020-03-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2020-02-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2020-01-01/managedClusters.json - $(this-folder)/Microsoft.ContainerService/stable/2019-11-01/managedClusters.json diff --git a/specification/containerservice/resource-manager/readme.python.md b/specification/containerservice/resource-manager/readme.python.md index 43a6a772f561..bd7887b9243c 100644 --- a/specification/containerservice/resource-manager/readme.python.md +++ b/specification/containerservice/resource-manager/readme.python.md @@ -18,6 +18,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2020-03-01-only - tag: package-2020-02-01-only - tag: package-2020-01-01-only - tag: package-2019-11-01-only @@ -35,6 +36,17 @@ batch: - tag: package-2017-07-only-extended ``` +### Tag: package-2020-03-01-only and python + +These settings apply only when `--tag=package-2020-03-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2020_03_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01 +``` + ### Tag: package-2020-02-01-only and python These settings apply only when `--tag=package-2020-02-01-only --python` is specified on the command line. diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableCreate.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableCreate.json new file mode 100644 index 000000000000..803e06fd5d20 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableCreate.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "url": "myaccount.table.core.windows.net", + "tableProperties": { + "TableName": "mytable" + } + }, + "responses": { + "201": { + "body": { + "odata.metadata": "https://myaccount.table.core.windows.net/$metadata#Tables/@Element", + "odata.type": " myaccount.Tables", + "odata.id": "https://myaccount.table.core.windows.net/Tables('mytable')", + "odata.editLink": "Tables('mytable')", + "TableName": "mytable" + } + }, + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDelete.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDelete.json new file mode 100644 index 000000000000..0cc1f4bb05c7 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDelete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "url": "myaccount.table.core.windows.net", + "table": "mytable" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDeleteEntity.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDeleteEntity.json new file mode 100644 index 000000000000..2d0f7a9a5525 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableDeleteEntity.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "If-Match": "*", + "url": "myaccount.table.core.windows.net", + "table": "Customers", + "partitionKey": "mypartitionkey", + "rowKey": "myrowkey" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableGet.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableGet.json new file mode 100644 index 000000000000..018859152f5a --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "$top": 1, + "url": "myaccount.table.core.windows.net" + }, + "responses": { + "200": { + "body": { + "odata.metadata": "https://myaccount.table.core.windows.net/$metadata#Tables", + "value": [ + { + "odata.type": "myaccount.Tables", + "odata.id": "https://myaccount.table.core.windows.net/Tables('mytable')", + "odata.editLink": "Tables('mytable')", + "TableName": "mytable" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableInsertEntity.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableInsertEntity.json new file mode 100644 index 000000000000..749a5ac0a691 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableInsertEntity.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "table": "Customer", + "url": "myaccount.table.core.windows.net", + "tableEntityProperties": { + "Address": "Mountain View", + "Age": 23, + "AmountDue": 200.23, + "CustomerCode@odata.type": "Edm.Guid", + "CustomerCode": "c9da6455-213d-42c9-9a79-3e9149a57833", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-07-10T00:00:00", + "IsActive": true, + "NumberOfOrders@odata.type": "Edm.Int64", + "NumberOfOrders": "255", + "PartitionKey": "mypartitionkey", + "RowKey": "myrowkey" + } + }, + "responses": { + "201": { + "body": { + "odata.metadata": "https://myaccount.table.core.windows.net/Customer/$metadata#Customers/@Element", + "odata.type": "myaccount.Customers", + "odata.id": " https://myaccount.table.core.windows.net/Customers(PartitionKey='mypartitionkey',RowKey='myrowkey')", + "odata.etag": "W/\"0x5B168C7B6E589D2\"", + "odata.editLink": "Customers(PartitionKey='mypartitionkey',RowKey='myrowkey')", + "PartitionKey": "mypartitionkey", + "RowKey": "myrowkey", + "Timestamp@odata.type": "Edm.DateTime", + "Timestamp": "2013-08-22T01:12:06.2608595Z", + "Address": "Mountain View", + "Age": 23, + "AmountDue": 200.23, + "CustomerCode@odata.type": "Edm.Guid", + "CustomerCode": "c9da6455-213d-42c9-9a79-3e9149a57833", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-07-10T00:00:00", + "IsActive": true, + "NumberOfOrders@odata.type": "Edm.Int64", + "NumberOfOrders": "255" + } + }, + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableMergeEntity.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableMergeEntity.json new file mode 100644 index 000000000000..24e71afe72fa --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableMergeEntity.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "url": "myaccount.table.core.windows.net", + "table": "Customers", + "partitionKey": "mypartitionkey", + "rowKey": "myrowkey", + "tableEntityProperties": { + "Address": "Santa Clara", + "Age": 23, + "AmountDue": 200.23, + "CustomerCode@odata.type": "Edm.Guid", + "CustomerCode": "c9da6455-213d-42c9-9a79-3e9149a57833", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-07-10T00:00:00", + "IsActive": false, + "NumberOfOrders@odata.type": "Edm.Int64", + "NumberOfOrders": "255", + "PartitionKey": "mypartitionkey", + "RowKey": "myrowkey" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntities.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntities.json new file mode 100644 index 000000000000..2daab5a9feb0 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntities.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "url": "myaccount.table.core.windows.net", + "$top": 1, + "table": "Customer" + }, + "responses": { + "200": { + "body": { + "odata.metadata": " https://myaccount.table.core.windows.net/metadata#Customers", + "value": [ + { + "PartitionKey": "Customer", + "RowKey": "Name", + "odata.type": "myaccount.Customers", + "odata.id": "https://myaccount.table.core.windows.net/Customers(PartitionKey=Customer',RowKey='Name')", + "odata.etag": "W/\"0x5B168C7B6E589D2\"", + "odata.editLink": "Customers(PartitionKey=Customer',RowKey='Name')", + "Timestamp@odata.type": "Edm.DateTime", + "Timestamp": "2013-08-22T00:20:16.3134645Z", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-10-01T15:25:05.2852025Z" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntitiesWithPartitionAndRowKey.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntitiesWithPartitionAndRowKey.json new file mode 100644 index 000000000000..94896182a26b --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableQueryEntitiesWithPartitionAndRowKey.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "url": "myaccount.table.core.windows.net", + "table": "Customers", + "partitionKey": "Customer", + "rowKey": "Name" + }, + "responses": { + "200": { + "body": { + "odata.metadata": " https://myaccount.table.core.windows.net/metadata#Customers", + "value": [ + { + "odata.type": "myaccount.Customers", + "odata.id": "https://myaccount.table.core.windows.net/Customers(PartitionKey=Customer',RowKey='Name')", + "odata.etag": "W/\"0x5B168C7B6E589D2\"", + "odata.editLink": "Customers(PartitionKey=Customer',RowKey='Name')", + "PartitionKey": "Customer", + "RowKey": "Name", + "Timestamp@odata.type": "Edm.DateTime", + "Timestamp": "2013-08-22T00:20:16.3134645Z", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-10-01T15:25:05.2852025Z" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableUpdateEntity.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableUpdateEntity.json new file mode 100644 index 000000000000..24e71afe72fa --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/examples/TableUpdateEntity.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "x-ms-version": "2019-02-02", + "DataServiceVersion": "3.0", + "url": "myaccount.table.core.windows.net", + "table": "Customers", + "partitionKey": "mypartitionkey", + "rowKey": "myrowkey", + "tableEntityProperties": { + "Address": "Santa Clara", + "Age": 23, + "AmountDue": 200.23, + "CustomerCode@odata.type": "Edm.Guid", + "CustomerCode": "c9da6455-213d-42c9-9a79-3e9149a57833", + "CustomerSince@odata.type": "Edm.DateTime", + "CustomerSince": "2008-07-10T00:00:00", + "IsActive": false, + "NumberOfOrders@odata.type": "Edm.Int64", + "NumberOfOrders": "255", + "PartitionKey": "mypartitionkey", + "RowKey": "myrowkey" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/table.json b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/table.json new file mode 100644 index 000000000000..6ec8ea5e20b5 --- /dev/null +++ b/specification/cosmos-db/data-plane/Microsoft.Tables/preview/2019-02-02/table.json @@ -0,0 +1,1908 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Table", + "version": "2019-02-02", + "x-ms-code-generation-settings": { + "header": "MIT", + "strictSpecAdherence": false + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{url}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "$ref": "#/parameters/Url" + } + ] + }, + "securityDefinitions": { + "table_shared_key": { + "type": "apiKey", + "name": "Authorization", + "in": "header" + } + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json;odata=nometadata" + ], + "produces": [ + "application/json;odata=minimalmetadata" + ], + "paths": { + "/Tables": { + "get": { + "tags": [ + "table" + ], + "operationId": "Table_Query", + "x-ms-examples": { + "TableGet": { + "$ref": "./examples/TableGet.json" + } + }, + "description": "Queries tables under the given account.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "name": "NextTableName", + "in": "query", + "required": false, + "type": "string", + "description": "A table query continuation token from a previous call." + } + ], + "responses": { + "200": { + "description": "Success, table query completed.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "x-ms-continuation-NextTableName": { + "type": "string", + "description": "This header contains the continuation token value." + } + }, + "schema": { + "$ref": "#/definitions/TableQueryResponse" + } + } + } + }, + "post": { + "tags": [ + "table" + ], + "operationId": "Table_Create", + "x-ms-examples": { + "TableCreate": { + "$ref": "./examples/TableCreate.json" + } + }, + "description": "Creates a new table under the given account.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/TableProperties" + }, + { + "$ref": "#/parameters/PreferParameter" + } + ], + "responses": { + "201": { + "description": "Success, table created.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "Preference-Applied": { + "type": "string", + "description": "Indicates whether the Prefer request header was honored. If the response does not include this header, then the Prefer header was not honored. If this header is returned, its value will either be return-content or return-no-content." + } + }, + "schema": { + "$ref": "#/definitions/TableResponse" + } + }, + "204": { + "description": "Success, table created.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "Preference-Applied": { + "type": "string", + "description": "Indicates whether the Prefer request header was honored. If the response does not include this header, then the Prefer header was not honored. If this header is returned, its value will either be return-content or return-no-content." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + }, + "/Tables('{table}')": { + "delete": { + "tags": [ + "table" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "operationId": "Table_Delete", + "x-ms-examples": { + "TableDelete": { + "$ref": "./examples/TableDelete.json" + } + }, + "description": "Operation permanently deletes the specified table.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/tableNameParameter" + } + ], + "responses": { + "204": { + "description": "No Content", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + }, + "/{table}()": { + "get": { + "tags": [ + "table" + ], + "operationId": "Table_QueryEntities", + "x-ms-examples": { + "TableQueryEntities": { + "$ref": "./examples/TableQueryEntities.json" + } + }, + "description": "Queries entities in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "name": "NextPartitionKey", + "in": "query", + "required": false, + "type": "string", + "description": "An entity query continuation token from a previous call." + }, + { + "name": "NextRowKey", + "in": "query", + "required": false, + "type": "string", + "description": "An entity query continuation token from a previous call." + } + ], + "responses": { + "200": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "x-ms-continuation-NextPartitionKey": { + "type": "string", + "description": "This header contains the continuation token value for partition key." + }, + "x-ms-continuation-NextRowKey": { + "type": "string", + "description": "This header contains the continuation token value for row key." + } + }, + "schema": { + "$ref": "#/definitions/TableEntityQueryResponse" + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + }, + "/{table}(PartitionKey='{partitionKey}',RowKey='{rowKey}')": { + "get": { + "tags": [ + "table" + ], + "operationId": "Table_QueryEntitiesWithPartitionAndRowKey", + "x-ms-examples": { + "TableQueryEntitiesWithPartitionAndRowKey": { + "$ref": "./examples/TableQueryEntitiesWithPartitionAndRowKey.json" + } + }, + "description": "Queries entities in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/partitionKeyParameter" + }, + { + "$ref": "#/parameters/rowKeyParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "ETag": { + "type": "string", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-continuation-NextPartitionKey": { + "type": "string", + "description": "This header contains the continuation token value for partition key." + }, + "x-ms-continuation-NextRowKey": { + "type": "string", + "description": "This header contains the continuation token value for row key." + } + }, + "schema": { + "$ref": "#/definitions/TableEntityQueryResponse" + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "put": { + "tags": [ + "table" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "operationId": "Table_UpdateEntity", + "x-ms-examples": { + "TableUpdateEntity": { + "$ref": "./examples/TableUpdateEntity.json" + } + }, + "description": "Update entity in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/TableEntityProperties" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/partitionKeyParameter" + }, + { + "$ref": "#/parameters/rowKeyParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Match condition for an entity to be updated. If specified and a matching entity is not found, an error will be raised. To force an unconditional update, set to the wildcard character (*). If not specified, an insert will be performed when no existing entity is found to update and a replace will be performed if an existing entity is found.", + "x-ms-client-name": "IfMatch" + } + ], + "responses": { + "204": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "ETag": { + "type": "string", + "description": "UTC date/time value generated by the service that indicates the time at which the entity was last updated." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "patch": { + "tags": [ + "table" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "operationId": "Table_MergeEntity", + "x-ms-examples": { + "TableMergeEntity": { + "$ref": "./examples/TableMergeEntity.json" + } + }, + "description": "Merge entity in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/TableEntityProperties" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/partitionKeyParameter" + }, + { + "$ref": "#/parameters/rowKeyParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Match condition for an entity to be updated. If specified and a matching entity is not found, an error will be raised. To force an unconditional update, set to the wildcard character (*). If not specified, an insert will be performed when no existing entity is found to update and a merge will be performed if an existing entity is found.", + "x-ms-client-name": "IfMatch" + } + ], + "responses": { + "204": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "ETag": { + "type": "string", + "description": "UTC date/time value generated by the service that indicates the time at which the entity was last updated." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "delete": { + "tags": [ + "table" + ], + "operationId": "Table_DeleteEntity", + "x-ms-examples": { + "TableDeleteEntity": { + "$ref": "./examples/TableDeleteEntity.json" + } + }, + "description": "Deletes the specified entity in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/partitionKeyParameter" + }, + { + "$ref": "#/parameters/rowKeyParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "Match condition for an entity to be deleted. If specified and a matching entity is not found, an error will be raised. To force an unconditional delete, set to the wildcard character (*).", + "x-ms-client-name": "IfMatch" + } + ], + "responses": { + "204": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + }, + "/{table}": { + "post": { + "tags": [ + "table" + ], + "operationId": "Table_InsertEntity", + "x-ms-examples": { + "TableInsertEntity": { + "$ref": "./examples/TableInsertEntity.json" + } + }, + "description": "Insert entity in a table.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/DataServiceVersionParameter" + }, + { + "$ref": "#/parameters/formatParameter" + }, + { + "$ref": "#/parameters/TableEntityProperties" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/PreferParameter" + } + ], + "responses": { + "201": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "ETag": { + "type": "string", + "description": "UTC date/time value generated by the service that indicates the time at which the entity was last updated." + }, + "Preference-Applied": { + "type": "string", + "description": "Indicates whether the Prefer request header was honored. If the response does not include this header, then the Prefer header was not honored. If this header is returned, its value will either be return-content or return-no-content." + }, + "Content-Type": { + "type": "string", + "description": "Indicates the content type of the payload. The value depends on the value specified for the Accept request header." + } + }, + "schema": { + "$ref": "#/definitions/TableEntityProperties" + } + }, + "204": { + "description": "No Content.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + }, + "ETag": { + "type": "string", + "description": "UTC date/time value generated by the service that indicates the time at which the entity was last updated." + }, + "Preference-Applied": { + "type": "string", + "description": "Indicates whether the Prefer request header was honored. If the response does not include this header, then the Prefer header was not honored. If this header is returned, its value will either be return-content or return-no-content." + }, + "Content-Type": { + "type": "string", + "description": "Indicates the content type of the payload. The value depends on the value specified for the Accept request header." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "get": { + "tags": [ + "table" + ], + "consumes": [ + "application/xml" + ], + "produces": [ + "application/xml" + ], + "operationId": "Table_GetAccessPolicy", + "description": "Retrieves details about any stored access policies specified on the table that may be used with Shared Access Signatures.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/compAclParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + } + }, + "schema": { + "$ref": "#/definitions/SignedIdentifiers" + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "put": { + "tags": [ + "table" + ], + "consumes": [ + "application/xml" + ], + "produces": [ + "application/xml" + ], + "operationId": "Table_SetAccessPolicy", + "description": "Sets stored access policies for the table that may be used with Shared Access Signatures.", + "parameters": [ + { + "$ref": "#/parameters/TableAcl" + }, + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/compAclParameter" + } + ], + "responses": { + "204": { + "description": "No Content", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + } + }, + "x-ms-paths": { + "/?ServiceProperties": { + "parameters": [ + { + "name": "restype", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "service" + ], + "description": "Required query string to set the service properties." + }, + { + "name": "comp", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "properties" + ], + "description": "Required query string to set the service properties." + } + ], + "put": { + "tags": [ + "service" + ], + "consumes": [ + "application/xml" + ], + "produces": [ + "application/xml" + ], + "operationId": "Service_SetProperties", + "description": "Sets properties for an account's Table service endpoint, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "#/parameters/TableServiceProperties" + }, + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + } + ], + "responses": { + "202": { + "description": "Success (Accepted)", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + } + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + }, + "get": { + "tags": [ + "service" + ], + "consumes": [ + "application/xml" + ], + "produces": [ + "application/xml" + ], + "operationId": "Service_GetProperties", + "description": "Gets the properties of an account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + } + ], + "responses": { + "200": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + } + }, + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + }, + "/?ServiceStats": { + "parameters": [ + { + "name": "restype", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "service" + ], + "description": "Required query string to get service stats." + }, + { + "name": "comp", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "stats" + ], + "description": "Required query string to get service stats." + } + ], + "get": { + "tags": [ + "service" + ], + "consumes": [ + "application/xml" + ], + "produces": [ + "application/xml" + ], + "operationId": "Service_GetStatistics", + "description": "Retrieves statistics related to replication for the Table service. It is only available on the secondary location endpoint when read-access geo-redundant replication is enabled for the account.", + "parameters": [ + { + "$ref": "#/parameters/Timeout" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestId" + } + ], + "responses": { + "200": { + "description": "Success.", + "headers": { + "x-ms-client-request-id": { + "x-ms-client-name": "ClientRequestId", + "type": "string", + "description": "If a client request id header is sent in the request, this header will be present in the response with the same value." + }, + "x-ms-request-id": { + "x-ms-client-name": "RequestId", + "type": "string", + "description": "This header uniquely identifies the request that was made and can be used for troubleshooting the request." + }, + "x-ms-version": { + "x-ms-client-name": "Version", + "type": "string", + "description": "Indicates the version of the Table service used to execute the request. This header is returned for requests made against version 2009-09-19 and above." + }, + "Date": { + "type": "string", + "format": "date-time-rfc1123", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated." + } + }, + "schema": { + "$ref": "#/definitions/TableServiceStats" + } + }, + "default": { + "description": "Failure", + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TableServiceError" + } + } + } + } + } + }, + "definitions": { + "TableServiceError": { + "description": "Table Service error.", + "type": "object", + "xml": {}, + "properties": { + "Message": { + "description": "The error message.", + "type": "string", + "xml": { + "name": "Message" + } + } + } + }, + "TableServiceProperties": { + "description": "Table Service Properties.", + "type": "object", + "properties": { + "Logging": { + "description": "Azure Analytics Logging settings.", + "$ref": "#/definitions/Logging" + }, + "HourMetrics": { + "description": "A summary of request statistics grouped by API in hourly aggregates for tables.", + "$ref": "#/definitions/Metrics" + }, + "MinuteMetrics": { + "description": "A summary of request statistics grouped by API in minute aggregates for tables.", + "$ref": "#/definitions/Metrics" + }, + "Cors": { + "description": "The set of CORS rules.", + "type": "array", + "items": { + "$ref": "#/definitions/CorsRule" + }, + "xml": { + "wrapped": true, + "name": "Cors" + } + } + } + }, + "Logging": { + "xml": { + "name": "Logging" + }, + "description": "Azure Analytics Logging settings.", + "type": "object", + "required": [ + "Version", + "Delete", + "Read", + "Write", + "RetentionPolicy" + ], + "properties": { + "Version": { + "description": "The version of Analytics to configure.", + "type": "string", + "xml": { + "name": "Version" + } + }, + "Delete": { + "description": "Indicates whether all delete requests should be logged.", + "type": "boolean", + "xml": { + "name": "Delete" + } + }, + "Read": { + "description": "Indicates whether all read requests should be logged.", + "type": "boolean", + "xml": { + "name": "Read" + } + }, + "Write": { + "description": "Indicates whether all write requests should be logged.", + "type": "boolean", + "xml": { + "name": "Write" + } + }, + "RetentionPolicy": { + "$ref": "#/definitions/RetentionPolicy" + } + } + }, + "Metrics": { + "xml": {}, + "description": "", + "required": [ + "Enabled" + ], + "properties": { + "Version": { + "description": "The version of Analytics to configure.", + "type": "string", + "xml": { + "name": "Version" + } + }, + "Enabled": { + "description": "Indicates whether metrics are enabled for the Table service.", + "type": "boolean", + "xml": { + "name": "Enabled" + } + }, + "IncludeAPIs": { + "description": "Indicates whether metrics should generate summary statistics for called API operations.", + "type": "boolean", + "xml": { + "name": "IncludeAPIs" + } + }, + "RetentionPolicy": { + "$ref": "#/definitions/RetentionPolicy" + } + } + }, + "CorsRule": { + "xml": { + "name": "CorsRule" + }, + "description": "CORS is an HTTP feature that enables a web application running under one domain to access resources in another domain. Web browsers implement a security restriction known as same-origin policy that prevents a web page from calling APIs in a different domain; CORS provides a secure way to allow one domain (the origin domain) to call APIs in another domain.", + "type": "object", + "required": [ + "AllowedOrigins", + "AllowedMethods", + "AllowedHeaders", + "ExposedHeaders", + "MaxAgeInSeconds" + ], + "properties": { + "AllowedOrigins": { + "description": "The origin domains that are permitted to make a request against the service via CORS. The origin domain is the domain from which the request originates. Note that the origin must be an exact case-sensitive match with the origin that the user age sends to the service. You can also use the wildcard character '*' to allow all origin domains to make requests via CORS.", + "type": "string", + "xml": { + "name": "AllowedOrigins" + } + }, + "AllowedMethods": { + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request. (comma separated)", + "type": "string", + "xml": { + "name": "AllowedMethods" + } + }, + "AllowedHeaders": { + "description": "The request headers that the origin domain may specify on the CORS request.", + "type": "string", + "xml": { + "name": "AllowedHeaders" + } + }, + "ExposedHeaders": { + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer.", + "type": "string", + "xml": { + "name": "ExposedHeaders" + } + }, + "MaxAgeInSeconds": { + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request.", + "type": "integer", + "minimum": 0, + "xml": { + "name": "MaxAgeInSeconds" + } + } + } + }, + "RetentionPolicy": { + "xml": { + "name": "RetentionPolicy" + }, + "description": "The retention policy.", + "type": "object", + "required": [ + "Enabled" + ], + "properties": { + "Enabled": { + "description": "Indicates whether a retention policy is enabled for the service.", + "type": "boolean", + "xml": { + "name": "Enabled" + } + }, + "Days": { + "description": "Indicates the number of days that metrics or logging or soft-deleted data should be retained. All data older than this value will be deleted.", + "type": "integer", + "minimum": 1, + "xml": { + "name": "Days" + } + } + } + }, + "TableServiceStats": { + "xml": {}, + "description": "Stats for the service.", + "type": "object", + "properties": { + "GeoReplication": { + "description": "Geo-Replication information for the Secondary Storage Service.", + "$ref": "#/definitions/GeoReplication" + } + } + }, + "GeoReplication": { + "xml": { + "name": "GeoReplication" + }, + "type": "object", + "required": [ + "Status", + "LastSyncTime" + ], + "properties": { + "Status": { + "description": "The status of the secondary location.", + "type": "string", + "enum": [ + "live", + "bootstrap", + "unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatusType", + "modelAsString": true + }, + "xml": { + "name": "Status" + } + }, + "LastSyncTime": { + "description": "A GMT date/time value, to the second. All primary writes preceding this value are guaranteed to be available for read operations at the secondary. Primary writes after this point in time may or may not be available for reads.", + "type": "string", + "format": "date-time-rfc1123", + "xml": { + "name": "LastSyncTime" + } + } + } + }, + "TableProperties": { + "description": "The properties for creating a table.", + "type": "object", + "properties": { + "TableName": { + "description": "The name of the table to create.", + "type": "string" + } + } + }, + "TableResponse": { + "description": "The response for a single table.", + "type": "object", + "properties": { + "odata.metadata": { + "description": "The metadata response of the table.", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TableResponseProperties" + } + ] + }, + "TableQueryResponse": { + "description": "The properties for the table query response.", + "type": "object", + "properties": { + "odata.metadata": { + "description": "The metadata response of the table.", + "type": "string" + }, + "value": { + "description": "List of tables.", + "type": "array", + "items": { + "$ref": "#/definitions/TableResponseProperties" + } + } + } + }, + "TableResponseProperties": { + "description": "The properties for the table response.", + "type": "object", + "properties": { + "TableName": { + "description": "The name of the table.", + "type": "string" + }, + "odata.type": { + "description": "The odata type of the table.", + "type": "string" + }, + "odata.id": { + "description": "The id of the table.", + "type": "string" + }, + "odata.editLink": { + "description": "The edit link of the table.", + "type": "string" + } + } + }, + "SignedIdentifier": { + "xml": { + "name": "SignedIdentifier" + }, + "description": "A signed identifier.", + "type": "object", + "required": [ + "Id", + "AccessPolicy" + ], + "properties": { + "Id": { + "type": "string", + "description": "A unique id.", + "xml": { + "name": "Id" + } + }, + "AccessPolicy": { + "description": "The access policy.", + "$ref": "#/definitions/AccessPolicy" + } + } + }, + "SignedIdentifiers": { + "description": "A collection of signed identifiers.", + "type": "array", + "items": { + "$ref": "#/definitions/SignedIdentifier", + "xml": { + "name": "SignedIdentifier" + } + }, + "xml": { + "wrapped": true, + "name": "SignedIdentifiers" + } + }, + "AccessPolicy": { + "xml": { + "name": "AccessPolicy" + }, + "type": "object", + "required": [ + "Start", + "Expiry", + "Permission" + ], + "description": "An Access policy.", + "properties": { + "Start": { + "description": "The start datetime from which the policy is active.", + "type": "string", + "format": "date-time", + "xml": { + "name": "Start" + } + }, + "Expiry": { + "description": "The datetime that the policy expires.", + "type": "string", + "format": "date-time", + "xml": { + "name": "Expiry" + } + }, + "Permission": { + "description": "The permissions for the acl policy.", + "type": "string", + "xml": { + "name": "Permission" + } + } + } + }, + "TableEntityQueryResponse": { + "description": "The properties for the table entity query response.", + "type": "object", + "properties": { + "odata.metadata": { + "description": "The metadata response of the table.", + "type": "string" + }, + "value": { + "description": "List of table entities.", + "type": "array", + "items": { + "$ref": "#/definitions/TableEntityProperties" + } + } + } + }, + "TableEntityProperties": { + "description": "The other properties of the table entity.", + "type": "object", + "additionalProperties": true + } + }, + "parameters": { + "Url": { + "name": "url", + "x-ms-parameter-location": "client", + "description": "The URL of the service account or table that is the targe of the desired operation.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + "TableServiceProperties": { + "name": "tableServiceProperties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableServiceProperties" + }, + "x-ms-parameter-location": "method", + "description": "The Table Service properties." + }, + "Timeout": { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "minimum": 0, + "x-ms-parameter-location": "method", + "description": "The timeout parameter is expressed in seconds." + }, + "ApiVersionParameter": { + "name": "x-ms-version", + "x-ms-parameter-location": "client", + "x-ms-client-name": "version", + "in": "header", + "required": true, + "type": "string", + "description": "Specifies the version of the operation to use for this request.", + "enum": [ + "2019-02-02" + ] + }, + "ClientRequestId": { + "name": "x-ms-client-request-id", + "x-ms-client-name": "requestId", + "in": "header", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when analytics logging is enabled." + }, + "DataServiceVersionParameter": { + "name": "DataServiceVersion", + "in": "header", + "required": true, + "type": "string", + "description": "Specifies the data service version.", + "x-ms-parameter-location": "method", + "enum": [ + "3.0" + ] + }, + "TableProperties": { + "name": "tableProperties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableProperties" + }, + "x-ms-parameter-location": "method", + "description": "The Table properties." + }, + "formatParameter": { + "name": "$format", + "in": "query", + "required": false, + "type": "string", + "description": "Specifies the media type for the response.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Format", + "enum": [ + "application/json;odata=nometadata", + "application/json;odata=minimalmetadata", + "application/json;odata=fullmetadata" + ], + "x-ms-enum": { + "name": "OdataMetadataFormat", + "modelAsString": true + } + }, + "topParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Maximum number of records to return.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Top" + }, + "selectParameter": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Select expression using OData notation. Limits the columns on each record to just those requested, e.g. \"$select=PolicyAssignmentId, ResourceId\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Select" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Filter" + }, + "PreferParameter": { + "name": "Prefer", + "in": "header", + "required": false, + "type": "string", + "description": "Specifies whether the response should include the inserted entity in the payload. Possible values are return-no-content and return-content.", + "x-ms-parameter-location": "method", + "x-ms-client-name": "ResponsePreference", + "enum": [ + "return-no-content", + "return-content" + ], + "x-ms-enum": { + "name": "ResponseFormat", + "modelAsString": true + } + }, + "compAclParameter": { + "name": "comp", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "acl" + ], + "x-ms-parameter-location": "method", + "description": "Required query string to handle stored access policies for the table that may be used with Shared Access Signatures." + }, + "TableAcl": { + "name": "tableAcl", + "in": "body", + "schema": { + "$ref": "#/definitions/SignedIdentifiers" + }, + "x-ms-parameter-location": "method", + "description": "The acls for the table." + }, + "TableEntityProperties": { + "name": "tableEntityProperties", + "in": "body", + "schema": { + "$ref": "#/definitions/TableEntityProperties" + }, + "x-ms-parameter-location": "method", + "description": "The properties for the table entity." + }, + "tableNameParameter": { + "name": "table", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the table." + }, + "partitionKeyParameter": { + "name": "partitionKey", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The partition key of the entity." + }, + "rowKeyParameter": { + "name": "rowKey", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The row key of the entity." + } + } +} diff --git a/specification/cosmos-db/data-plane/readme.go.md b/specification/cosmos-db/data-plane/readme.go.md new file mode 100644 index 000000000000..e8b63caff258 --- /dev/null +++ b/specification/cosmos-db/data-plane/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: storagetables + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-02 +``` + +### Tag: package-2019-02 and go + +These settings apply only when `--tag=package-2019-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-02' && $(go) +output-folder: $(go-sdk-folder)/services/storage/tables/2019-02-02/$(namespace) +``` \ No newline at end of file diff --git a/specification/cosmos-db/data-plane/readme.md b/specification/cosmos-db/data-plane/readme.md new file mode 100644 index 000000000000..9adbc06b50b1 --- /dev/null +++ b/specification/cosmos-db/data-plane/readme.md @@ -0,0 +1,270 @@ +# Table Dataplane + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Tables. + + + +--- +## Getting Started +To build the SDK for Tables, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the Tables API. + +``` yaml +azure-validator: true +openapi-type: data-plane +tag: package-2019-02 +``` + +### Tag: package-2019-02 + +These settings apply only when `--tag=package-2019-02` is specified on the command line. + +``` yaml $(tag) == 'package-2019-02' +input-file: +- Microsoft.Tables/preview/2019-02-02/table.json +``` + +--- +# Suppressions + +``` yaml +directive: + - suppress: D5001 + where: $["x-ms-paths"]["/?ServiceProperties"].put + reason: The path only supports XML input/outputm which is not supported + - suppress: D5001 + where: $["x-ms-paths"]["/?ServiceProperties"].get + reason: The path only supports XML input/outputm which is not supported + - suppress: D5001 + where: $["x-ms-paths"]["/?ServiceStats"].get + reason: The path only supports XML input/outputm which is not supported + - suppress: D5001 + where: $.paths["/{table}"].get + reason: The path only supports XML input/outputm which is not supported + - suppress: D5001 + where: $.paths["/{table}"].put + reason: The path only supports XML input/outputm which is not supported + - suppress: R3016 + where: $.definitions.TableServiceError.properties.Message + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableServiceProperties.properties.Logging + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableServiceProperties.properties.HourMetrics + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableServiceProperties.properties.MinuteMetrics + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableServiceProperties.properties.Cors + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Logging.properties.Version + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Logging.properties.Delete + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Logging.properties.Read + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Logging.properties.Write + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Logging.properties.RetentionPolicy + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Metrics.properties.Version + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Metrics.properties.Enabled + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Metrics.properties.IncludeAPIs + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.Metrics.properties.RetentionPolicy + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.CorsRule.properties.AllowedOrigins + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.CorsRule.properties.AllowedMethods + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.CorsRule.properties.AllowedHeaders + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.CorsRule.properties.ExposedHeaders + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.CorsRule.properties.MaxAgeInSeconds + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.RetentionPolicy.properties.Enabled + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.RetentionPolicy.properties.Days + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableServiceStats.properties.GeoReplication + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.GeoReplication.properties.Status + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.GeoReplication.properties.LastSyncTime + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableProperties.properties.TableName + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableResponse.properties["odata.metadata"] + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableQueryResponse.properties["odata.metadata"] + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableResponseProperties.properties.TableName + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableResponseProperties.properties["odata.type"] + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableResponseProperties.properties["odata.id"] + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableResponseProperties.properties["odata.editLink"] + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.SignedIdentifier.properties.Id + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.SignedIdentifier.properties.AccessPolicy + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.AccessPolicy.properties.Start + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.AccessPolicy.properties.Expiry + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.AccessPolicy.properties.Permission + reason: Response from service is not camel case + - suppress: R3016 + where: $.definitions.TableEntityQueryResponse.properties["odata.metadata"] + reason: Response from service is not camel case + - suppress: R2058 + where: $["x-ms-paths"]["/?ServiceStats"] + reason: Cannot provide operation in "paths" + - suppress: R2058 + where: $["x-ms-paths"]["/?ServiceProperties"] + reason: Cannot provide operation in "paths" +``` + +--- +# Code Generation + + +## Swagger to SDK + +Swagger to SDK has been intentionally disabled for this spec. + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Storage.Tables + output-folder: $(csharp-sdks-folder)/Storage/Tables/Generated + clear-output-folder: true +``` + + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +python-mode: create +python: + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.tables + package-name: azure-tables + clear-output-folder: true + no-namespace-folders: true +``` + +### Tag: package-2019-02 and python + +These settings apply only when `--tag=package-2019-02 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2019-02' && $(python) +python: + namespace: azure.tables.storage.v2019_02_02 + output-folder: $(python-sdks-folder)/azure-tables-storage/azure/tables/storage/v2019_02_02 +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + namespace: com.microsoft.azure.storage.tables + license-header: MICROSOFT_MIT_NO_CODEGEN + output-folder: $(azure-libraries-for-java-folder)/azure-storage-tables +``` + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.Tables/preview/2019-02-02/table.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/cosmos-db/data-plane/readme.nodejs.md b/specification/cosmos-db/data-plane/readme.nodejs.md new file mode 100644 index 000000000000..2e137439952a --- /dev/null +++ b/specification/cosmos-db/data-plane/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-storage-tables + output-folder: $(node-sdks-folder)/lib/services/storageTables + generate-license-txt: false + generate-package-json: false + generate-readme-md: false +``` \ No newline at end of file diff --git a/specification/cosmos-db/data-plane/readme.typescript.md b/specification/cosmos-db/data-plane/readme.typescript.md new file mode 100644 index 000000000000..29266ce43bf5 --- /dev/null +++ b/specification/cosmos-db/data-plane/readme.typescript.md @@ -0,0 +1,12 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/storage-tables" + output-folder: "$(typescript-sdks-folder)/sdk/storage/storage-tables" + generate-metadata: true +``` \ No newline at end of file diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json index 53fdc35bc619..6b843c126202 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -20,7 +20,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json index 7402270916e9..3ea874f66593 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -21,7 +21,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } }, { @@ -36,7 +38,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } ] diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json index 53a177ee7b10..38a3e48a946c 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -28,7 +28,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } }, diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json index 9be3abe573c0..9a08522f1f00 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json @@ -17,6 +17,9 @@ "requiredMembers": [ "ddb1", "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json index 92f822d3d525..b3ac6d4b2e04 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json @@ -18,6 +18,9 @@ "requiredMembers": [ "ddb1", "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json index d52a3844d546..35113561e7ac 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json @@ -266,6 +266,14 @@ "privateLinkServiceConnectionState": { "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." } } }, diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json index 0cf77f13eb4a..4da470e6ece8 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json @@ -46,16 +46,16 @@ }, "parameters": [ { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + "$ref": "#/parameters/accountNameParameter" } ], "responses": { @@ -82,16 +82,16 @@ "operationId": "PrivateLinkResources_Get", "parameters": [ { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + "$ref": "#/parameters/accountNameParameter" }, { "$ref": "#/parameters/GroupNameParameter" @@ -159,11 +159,30 @@ "type": "string" }, "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true } } } }, "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, "GroupNameParameter": { "name": "groupName", "in": "path", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json index 290d43b6d86b..c7ddfc39d057 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json index ec9d0a43df71..49c16d2b5fbb 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json index 52d608c353e1..3c91a7b458a0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json index 694a001a49d5..734d76d5c834 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json index 0749e8250a8c..7dd4de42c6ab 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json index 72783056d1fa..24cfa490f52e 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json @@ -6543,7 +6543,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..f7259a7bf762 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..53c4c9e41014 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..ff397403ed32 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..6ee5426876a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..9e6d4e27e04b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..740fb1499a80 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..740fb1499a80 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json new file mode 100644 index 000000000000..547017268158 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json @@ -0,0 +1,461 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2019-08-01" + }, + "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.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json index 3bb80bd08213..095e702ea0e0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json @@ -5869,15 +5869,15 @@ }, "ThroughputSettingsResource": { "type": "object", - "description": "Cosmos DB resource throughput object. Either throughput is required or autopilotSettings is required, but not both.", + "description": "Cosmos DB resource throughput object. Either throughput is required or provisionedThroughputSettings is required, but not both.", "properties": { "throughput": { "type": "integer", - "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autopilotSettings is required, but not both." + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or provisionedThroughputSettings is required, but not both." }, - "autopilotSettings": { - "description": "Cosmos DB resource for Autopilot settings. Either throughput is required or autopilotSettings is required, but not both.", - "$ref": "#/definitions/AutopilotSettingsResource" + "provisionedThroughputSettings": { + "description": "Cosmos DB resource for provisioned throughput settings. Either throughput is required or provisionedThroughputSettings is required, but not both.", + "$ref": "#/definitions/ProvisionedThroughputSettingsResource" }, "minimumThroughput": { "type": "string", @@ -5891,13 +5891,13 @@ } } }, - "AutopilotSettingsResource": { + "ProvisionedThroughputSettingsResource": { "type": "object", - "description": "Cosmos DB autopilot settings object", + "description": "Cosmos DB provisioned throughput settings object", "properties": { "maxThroughput": { "type": "integer", - "description": "Represents max throughput an autopilot container can operate at." + "description": "Represents maximum throughput container can scale up to." }, "autoUpgradePolicy": { "description": "Cosmos DB resource auto-upgrade policy", @@ -5905,7 +5905,7 @@ }, "targetMaxThroughput": { "type": "integer", - "description": "Represents target max throughput an autopilot container should operate at once offer is no longer in pending state.", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", "readOnly": true } }, @@ -6608,7 +6608,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json index 5317373d40a9..7dbbfb12e702 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json @@ -45,16 +45,16 @@ "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -80,16 +80,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateParameters", @@ -124,16 +124,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateParameters", @@ -165,16 +165,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -199,16 +199,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "failoverParameters", @@ -241,10 +241,10 @@ "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", "parameters": [ { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -271,13 +271,13 @@ "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", "parameters": [ { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -304,16 +304,16 @@ "description": "Lists the access keys for the specified Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -340,16 +340,16 @@ "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -374,16 +374,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "regionParameterForOffline", @@ -423,16 +423,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "regionParameterForOnline", @@ -471,16 +471,16 @@ "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -502,16 +502,16 @@ "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -536,16 +536,16 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "keyToRegenerate", @@ -581,7 +581,7 @@ "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -608,7 +608,7 @@ }, "parameters": [ { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -638,16 +638,16 @@ "description": "Retrieves the metrics determined by the given filter for the given database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -677,10 +677,10 @@ "description": "Retrieves the metrics determined by the given filter for the given database account and database.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -689,7 +689,7 @@ "$ref": "#/parameters/databaseRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -719,10 +719,10 @@ "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -734,7 +734,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -764,10 +764,10 @@ "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -782,7 +782,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -812,10 +812,10 @@ "description": "Retrieves the metrics determined by the given filter for the given database account and region.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -824,7 +824,7 @@ "$ref": "#/parameters/regionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -854,10 +854,10 @@ "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -869,7 +869,7 @@ "$ref": "#/parameters/targetRegionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -899,10 +899,10 @@ "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -911,7 +911,7 @@ "$ref": "#/parameters/targetRegionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -941,16 +941,16 @@ "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -980,10 +980,10 @@ "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -998,7 +998,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -1028,10 +1028,10 @@ "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1043,7 +1043,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -1073,10 +1073,10 @@ "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1091,7 +1091,7 @@ "$ref": "#/parameters/partitionKeyRangeIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -1121,10 +1121,10 @@ "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1142,7 +1142,7 @@ "$ref": "#/parameters/partitionKeyRangeIdParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/filterParameter" @@ -1169,16 +1169,16 @@ "description": "Retrieves the usages (most recent data) for the given database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/usageFilterParameter" @@ -1208,10 +1208,10 @@ "description": "Retrieves the usages (most recent data) for the given database.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1220,7 +1220,7 @@ "$ref": "#/parameters/databaseRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/usageFilterParameter" @@ -1250,10 +1250,10 @@ "description": "Retrieves the usages (most recent storage data) for the given collection.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1265,7 +1265,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/usageFilterParameter" @@ -1295,10 +1295,10 @@ "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1310,7 +1310,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/usageFilterParameter" @@ -1340,10 +1340,10 @@ "description": "Retrieves metric definitions for the given database.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1352,7 +1352,7 @@ "$ref": "#/parameters/databaseRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1379,10 +1379,10 @@ "description": "Retrieves metric definitions for the given collection.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1394,7 +1394,7 @@ "$ref": "#/parameters/collectionRidParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1421,16 +1421,16 @@ "description": "Retrieves metric definitions for the given database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1457,16 +1457,16 @@ "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1493,10 +1493,10 @@ "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1505,7 +1505,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1528,10 +1528,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1540,7 +1540,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateSqlDatabaseParameters", @@ -1575,10 +1575,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1587,7 +1587,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1611,10 +1611,10 @@ "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1623,7 +1623,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1646,10 +1646,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1658,7 +1658,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -1694,10 +1694,10 @@ "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1706,7 +1706,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1733,10 +1733,10 @@ "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1748,7 +1748,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1771,10 +1771,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1786,7 +1786,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateSqlContainerParameters", @@ -1821,10 +1821,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1836,7 +1836,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1860,10 +1860,10 @@ "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1875,7 +1875,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1898,10 +1898,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1913,7 +1913,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -1949,10 +1949,10 @@ "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -1964,7 +1964,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1991,10 +1991,10 @@ "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2009,7 +2009,7 @@ "$ref": "#/parameters/storedProcedureNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2032,10 +2032,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2050,7 +2050,7 @@ "$ref": "#/parameters/storedProcedureNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateSqlStoredProcedureParameters", @@ -2085,10 +2085,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2103,7 +2103,7 @@ "$ref": "#/parameters/storedProcedureNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2127,10 +2127,10 @@ "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2142,7 +2142,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2169,10 +2169,10 @@ "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2187,7 +2187,7 @@ "$ref": "#/parameters/userDefinedFunctionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2210,10 +2210,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2228,7 +2228,7 @@ "$ref": "#/parameters/userDefinedFunctionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateSqlUserDefinedFunctionParameters", @@ -2263,10 +2263,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2281,7 +2281,7 @@ "$ref": "#/parameters/userDefinedFunctionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2305,10 +2305,10 @@ "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2320,7 +2320,7 @@ "$ref": "#/parameters/containerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2347,10 +2347,10 @@ "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2365,7 +2365,7 @@ "$ref": "#/parameters/triggerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2388,10 +2388,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2406,7 +2406,7 @@ "$ref": "#/parameters/triggerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateSqlTriggerParameters", @@ -2441,10 +2441,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2459,7 +2459,7 @@ "$ref": "#/parameters/triggerNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2483,16 +2483,16 @@ "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2519,10 +2519,10 @@ "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2531,7 +2531,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2554,10 +2554,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2566,7 +2566,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateMongoDBDatabaseParameters", @@ -2601,10 +2601,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2613,7 +2613,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2637,10 +2637,10 @@ "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2649,7 +2649,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2672,10 +2672,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2684,7 +2684,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -2720,10 +2720,10 @@ "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2732,7 +2732,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2759,10 +2759,10 @@ "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2774,7 +2774,7 @@ "$ref": "#/parameters/collectionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2797,10 +2797,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2812,7 +2812,7 @@ "$ref": "#/parameters/collectionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateMongoDBCollectionParameters", @@ -2847,10 +2847,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2862,7 +2862,7 @@ "$ref": "#/parameters/collectionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2886,10 +2886,10 @@ "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2901,7 +2901,7 @@ "$ref": "#/parameters/collectionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -2924,10 +2924,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -2939,7 +2939,7 @@ "$ref": "#/parameters/collectionNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -2975,16 +2975,16 @@ "description": "Lists the Tables under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3011,10 +3011,10 @@ "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3023,7 +3023,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3046,10 +3046,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3058,7 +3058,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateTableParameters", @@ -3093,10 +3093,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3105,7 +3105,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3129,10 +3129,10 @@ "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3141,7 +3141,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3164,10 +3164,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3176,7 +3176,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -3212,16 +3212,16 @@ "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3248,10 +3248,10 @@ "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3260,7 +3260,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3283,10 +3283,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3295,7 +3295,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateCassandraKeyspaceParameters", @@ -3330,10 +3330,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3342,7 +3342,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3366,10 +3366,10 @@ "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3378,7 +3378,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3401,10 +3401,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3413,7 +3413,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -3449,10 +3449,10 @@ "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3461,7 +3461,7 @@ "$ref": "#/parameters/keyspaceNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3488,10 +3488,10 @@ "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3503,7 +3503,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3526,10 +3526,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3541,7 +3541,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateCassandraTableParameters", @@ -3576,10 +3576,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3591,7 +3591,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3615,10 +3615,10 @@ "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3630,7 +3630,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3653,10 +3653,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3668,7 +3668,7 @@ "$ref": "#/parameters/tableNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -3704,16 +3704,16 @@ "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3740,10 +3740,10 @@ "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3752,7 +3752,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3775,10 +3775,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3787,7 +3787,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateGremlinDatabaseParameters", @@ -3822,10 +3822,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3834,7 +3834,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3858,10 +3858,10 @@ "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3870,7 +3870,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3893,10 +3893,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3905,7 +3905,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -3941,10 +3941,10 @@ "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3953,7 +3953,7 @@ "$ref": "#/parameters/databaseNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -3980,10 +3980,10 @@ "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -3995,7 +3995,7 @@ "$ref": "#/parameters/graphNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -4018,10 +4018,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -4033,7 +4033,7 @@ "$ref": "#/parameters/graphNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "createUpdateGremlinGraphParameters", @@ -4068,10 +4068,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -4083,7 +4083,7 @@ "$ref": "#/parameters/graphNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -4107,10 +4107,10 @@ "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -4122,7 +4122,7 @@ "$ref": "#/parameters/graphNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -4145,10 +4145,10 @@ "x-ms-long-running-operation": true, "parameters": [ { - "$ref": "#/parameters/subscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/resourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/accountNameParameter" @@ -4160,7 +4160,7 @@ "$ref": "#/parameters/graphNameParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "updateThroughputParameters", @@ -4621,6 +4621,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4653,6 +4660,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4781,6 +4795,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4813,6 +4834,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4845,6 +4873,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4877,6 +4912,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4909,6 +4951,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4941,6 +4990,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -4973,6 +5029,13 @@ "$ref": "#/definitions/ExtendedResourceProperties" } ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] } } }, @@ -5093,6 +5156,14 @@ "$ref": "#/definitions/VirtualNetworkRule" } }, + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "description": "List of Private Endpoint Connections configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, "enableMultipleWriteLocations": { "description": "Enables the account to write in multiple locations", "type": "boolean" @@ -5884,11 +5955,15 @@ }, "ThroughputSettingsResource": { "type": "object", - "description": "Cosmos DB resource throughput object", + "description": "Cosmos DB resource throughput object. Either throughput is required or provisionedThroughputSettings is required, but not both.", "properties": { "throughput": { "type": "integer", - "description": "Value of the Cosmos DB resource throughput" + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or provisionedThroughputSettings is required, but not both." + }, + "provisionedThroughputSettings": { + "description": "Cosmos DB resource for provisioned throughput settings. Either throughput is required or provisionedThroughputSettings is required, but not both.", + "$ref": "#/definitions/ProvisionedThroughputSettingsResource" }, "minimumThroughput": { "type": "string", @@ -5900,11 +5975,64 @@ "description": "The throughput replace is pending", "readOnly": true } + } + }, + "ProvisionedThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } }, "required": [ - "throughput" + "maxThroughput" ] }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Use the ThroughputSetting resource when retrieving offer details." + } + } + }, "SqlDatabaseResource": { "type": "object", "description": "Cosmos DB SQL database resource object", @@ -6545,6 +6673,12 @@ }, "CreateUpdateOptions": { "type": "object", + "properties": { + "throughput": { + "type": "string", + "description": "Request Units per second. For example, \"throughput\": \"10000\"." + } + }, "additionalProperties": { "type": "string" }, @@ -6570,7 +6704,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", @@ -6590,6 +6724,61 @@ } } }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + }, "Operation": { "description": "REST API operation", "type": "object", @@ -7075,20 +7264,6 @@ } }, "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. The current version is 2019-08-01." - }, "resourceGroupNameParameter": { "name": "resourceGroupName", "in": "path", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json index 2633c704654d..4f54871fce78 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json @@ -60,6 +60,20 @@ "locationName": "East US", "failoverPriority": 0 } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json index 69ed7d6be52f..ce0ca60feea5 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json @@ -58,6 +58,20 @@ "locationName": "East US", "failoverPriority": 0 } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json index e132bd1f4186..cb128dd89f45 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json @@ -88,6 +88,20 @@ "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", "ignoreMissingVNetServiceEndpoint": false } + ], + "privateEndpointConnections": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.DocumentDB/databaseAccounts/account1/privateEndpointConnections/pe1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "actionsRequired": "None" + } + } + } ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json index d39a4f2d241e..3e5f9986a190 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json @@ -63,6 +63,9 @@ "_rid": "PD5DALigDgw=", "_ts": 1459200611, "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 } } } diff --git a/specification/cosmos-db/resource-manager/readme.go.md b/specification/cosmos-db/resource-manager/readme.go.md index 7f941e8877aa..e77d1f0a2b99 100644 --- a/specification/cosmos-db/resource-manager/readme.go.md +++ b/specification/cosmos-db/resource-manager/readme.go.md @@ -13,12 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-12 - tag: package-2019-08 - tag: package-2019-08-preview - tag: package-2015-04 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/cosmos-db/mgmt/2020-03-01/$(namespace) +``` + ### Tag: package-2019-12 and go These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. diff --git a/specification/cosmos-db/resource-manager/readme.java.md b/specification/cosmos-db/resource-manager/readme.java.md index bbbaca73b155..29cd5f533fdc 100644 --- a/specification/cosmos-db/resource-manager/readme.java.md +++ b/specification/cosmos-db/resource-manager/readme.java.md @@ -17,12 +17,26 @@ service-name: CosmosDB ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-12 - tag: package-2019-08 - tag: package-2019-08-preview - tag: package-2015-04 ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.cosmosdb.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/cosmos/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-12 and java These settings apply only when `--tag=package-2019-12 --java` is specified on the command line. diff --git a/specification/cosmos-db/resource-manager/readme.md b/specification/cosmos-db/resource-manager/readme.md index 80a6d53eae01..d27574d7bf91 100644 --- a/specification/cosmos-db/resource-manager/readme.md +++ b/specification/cosmos-db/resource-manager/readme.md @@ -27,7 +27,7 @@ These are the global settings for the Cosmos-DB API. ``` yaml title: CosmosDBManagementClient openapi-type: arm -tag: package-2019-12 +tag: package-2020-03 ``` ### Tag: package-2020-03 @@ -37,6 +37,7 @@ These settings apply only when `--tag=package-2020-03` is specified on the comma ``` yaml $(tag) == 'package-2020-03' input-file: - Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json +- Microsoft.DocumentDB/stable/2019-08-01/notebook.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json ``` @@ -48,6 +49,7 @@ These settings apply only when `--tag=package-2019-12` is specified on the comma ``` yaml $(tag) == 'package-2019-12' input-file: - Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json +- Microsoft.DocumentDB/stable/2019-08-01/notebook.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json ``` @@ -59,6 +61,7 @@ These settings apply only when `--tag=package-2019-08` is specified on the comma ``` yaml $(tag) == 'package-2019-08' input-file: - Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json +- Microsoft.DocumentDB/stable/2019-08-01/notebook.json ``` ### Tag: package-2019-08-preview @@ -68,6 +71,7 @@ These settings apply only when `--tag=package-2019-08-preview` is specified on t ``` yaml $(tag) == 'package-2019-08-preview' input-file: - Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json +- Microsoft.DocumentDB/stable/2019-08-01/notebook.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json ``` @@ -180,6 +184,18 @@ directive: from: cosmos-db.json where: $.definitions.PercentileMetricValue.properties.P99 reason: The Metrics API has percentile metrics property names with leading capital letters + - suppress: PathResourceProviderNamePascalCase + from: cosmos-db.json + reason: The name of the provider is Microsoft.DocumentDB + - suppress: PathResourceProviderNamePascalCase + from: notebook.json + reason: The name of the provider is Microsoft.DocumentDB + - suppress: PathResourceProviderNamePascalCase + from: privateEndpointConnection.json + reason: The name of the provider is Microsoft.DocumentDB + - suppress: PathResourceProviderNamePascalCase + from: privateLinkResources.json + reason: The name of the provider is Microsoft.DocumentDB ``` --- @@ -236,6 +252,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json + - $(this-folder)/Microsoft.DocumentDB/stable/2019-08-01/notebook.json - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json - $(this-folder)/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/costmanagement.json index 699141844f71..2193dca44ff3 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/costmanagement.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/costmanagement.json @@ -1417,6 +1417,51 @@ } } }, + "/providers/Microsoft.CostManagement/checkConnectorEligibility": { + "post": { + "tags": [ + "CheckConnectorEligibility" + ], + "operationId": "Connector_CheckEligibility", + "description": "Check if a connector already exists and return it's definition", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "CheckEligibility_Post": { + "$ref": "./examples/CheckEligibilityPost.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "connectorCredentials", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckEligibilityDefinition" + }, + "description": "Connector credentials" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ConnectorDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.CostManagement/externalBillingAccounts": { "get": { "tags": [ @@ -2618,6 +2663,42 @@ } } }, + "CheckEligibilityDefinition": { + "type": "object", + "description": "The check eligibility Connector credentials definition", + "properties": { + "kind": { + "type": "string", + "description": "Connector kind (eg aws)" + }, + "credentialsKey": { + "type": "string", + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Credentials authentication key (eg AWS ARN)" + }, + "credentialsSecret": { + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "description": "Credentials secret (eg AWS ExternalId)" + }, + "reportId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Identifying source report. (For AWS this is a CUR report name, defined with Daily and with Resources)" + } + } + }, "ExternalBillingAccountDefinitionListResult": { "description": "Result of listing ExternalBillingAccount definitions. It contains a list of available ExternalBillingAccount definitions in the scope provided.", "properties": { diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/CheckEligibilityPost.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/CheckEligibilityPost.json new file mode 100644 index 000000000000..fabd1d2eddcf --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/CheckEligibilityPost.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-03-01-preview", + "connectorCredentials": { + "kind": "aws", + "credentialsKey": "arn:aws:iam::123456789012:role/AzureCostManagementRole", + "credentialsSecret": "external-id", + "reportId": "HourlyWithResources" + } + }, + "responses": { + "200": { + "body": { + "kind": "aws", + "id": "/providers/Microsoft.CostManagement/cloudConnectors/aws-123456789012", + "name": "aws-123456789012", + "type": "Microsoft.CostManagement/cloudConnectors", + "properties": { + "displayName": "AWS-Consolidated-1", + "providerBillingAccountId": "123456789012", + "credentialsKey": "arn:aws:iam::123456789012:role/AzureCostManagementRole", + "reportId": "HourlyWithResources", + "createdOn": "2018-05-15T13:25:48Z", + "modifiedOn": "2018-05-23T09:21:11Z", + "status": "active", + "externalBillingAccountId": "/providers/Microsoft.CostManagement/externalBillingAccounts/aws-123456789012", + "defaultManagementGroupId": "/providers/Microsoft.Management/managementGroups/XYZ", + "subscriptionId": "22222222-3333-4444-1111-777777777777", + "billingModel": "autoUpgrade", + "daysTrialRemaining": 62 + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/ShowbackRulePut.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/ShowbackRulePut.json index 010f490e8cea..b5cb7c3b4555 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/ShowbackRulePut.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/preview/2019-03-01-preview/examples/ShowbackRulePut.json @@ -4,7 +4,6 @@ "billingAccountId": "100", "ruleName": "testRule", "showbackRule": { - "name": "demo", "properties": { "description": "Welcome to Showback demo", "status": "Active", diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json index 09464516c550..7b8ee24c3400 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json @@ -123,12 +123,12 @@ "CustomerDimensionsListWithFilter-Modern": { "$ref": "./examples/MCACustomerDimensionsListWithFilter.json" }, - "ExternalBillingAccountDimensionList": { - "$ref": "./examples/ExternalBillingAccountsDimensions.json" - }, - "ExternalSubscriptionDimensionList": { - "$ref": "./examples/ExternalSubscriptionsDimensions.json" - } + "ExternalBillingAccountDimensionList": { + "$ref": "./examples/ExternalBillingAccountsDimensions.json" + }, + "ExternalSubscriptionDimensionList": { + "$ref": "./examples/ExternalSubscriptionsDimensions.json" + } }, "parameters": [ { @@ -258,12 +258,12 @@ "CustomerQueryGrouping-Modern": { "$ref": "./examples/MCACustomerQueryGrouping.json" }, - "ExternalBillingAccountQueryList": { - "$ref": "./examples/ExternalBillingAccountsQuery.json" - }, - "ExternalSubscriptionsQuery": { - "$ref": "./examples/ExternalSubscriptionsQuery.json" - } + "ExternalBillingAccountQueryList": { + "$ref": "./examples/ExternalBillingAccountsQuery.json" + }, + "ExternalSubscriptionsQuery": { + "$ref": "./examples/ExternalSubscriptionsQuery.json" + } }, "parameters": [ { diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsDimensions.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsDimensions.json index 272f944d0a62..b6d6006f36ed 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsDimensions.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsDimensions.json @@ -3,41 +3,43 @@ "api-version": "2019-10-01", "externalBillingAccountId": "100", "scope": "providers/Microsoft.CostManagement/externalBillingAccounts/100" - }, + }, "responses": { - "200": { + "200": { "body": { - "value": [{ - "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceType_2019-12-01_2019-12-31", - "name": "dimensions_ResourceType_2019-12-01_2019-12-31", - "type": "microsoft.consumption/dimensions", - "properties": { - "data": [], - "total": 0, - "category": "ResourceType", - "description": "Resource type", - "usageStart": "2019-12-01T00:00:00Z", - "usageEnd": "2019-12-31T00:00:00Z", - "filterEnabled": true, - "groupingEnabled": true - } - }, - { - "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceId_2019-12-01_2019-12-31", - "name": "dimensions_ResourceId_2019-12-01_2019-12-31", - "type": "microsoft.consumption/dimensions", - "properties": { - "data": [], - "total": 0, - "category": "ResourceId", - "description": "Resource ID", - "usageStart": "2019-12-01T00:00:00Z", - "usageEnd": "2019-12-31T00:00:00Z", - "filterEnabled": true, - "groupingEnabled": true - } - }] - } - } - } + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceType_2019-12-01_2019-12-31", + "name": "dimensions_ResourceType_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceType", + "description": "Resource type", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceId_2019-12-01_2019-12-31", + "name": "dimensions_ResourceId_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceId", + "description": "Resource ID", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsQuery.json index 634b5e15f5a1..91bed4cd5ffa 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsQuery.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalBillingAccountsQuery.json @@ -3,77 +3,97 @@ "api-version": "2019-10-01", "externalBillingAccountId": "100", "scope": "providers/Microsoft.CostManagement/externalBillingAccounts/100", - "parameters": { - "type": "Usage", - "timeframe": "MonthToDate", - "dataset": { - "granularity": "Daily", - "filter": { - "and": [ - { - "or": [ - { - "dimension": { - "name": "ResourceLocation", - "operator": "In", - "values": [ - "East US", - "West Europe" - ] - } - }, - { - "tag": { - "name": "Environment", - "operator": "In", - "values": [ - "UAT", - "Prod" - ] - } - } - ] - }, - { - "dimension": { - "name": "ResourceGroup", - "operator": "In", - "values": [ - "API" - ] - } - } - ] - } - } + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } } }, "responses": { - "200": { - "body": { - "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", - "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", - "type": "Microsoft.CostManagement/query", - "properties": { - "nextLink": null, - "columns": [{ - "name": "PreTaxCost", - "type": "Number" - }, { - "name": "ServiceName", - "type": "String" - }, { - "name": "Currency", - "type": "String" - } - ], - "rows": [ - [0.0, "abc db", "USD"], - [30.2572751438, "abc compute cloud", "USD"], - [0.076757602000000022, "abc file system", "USD"], - [50.430964190400012, "abc elasticache", "USD"] - ]} - } - } - } - } + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ServiceName", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.0, + "abc db", + "USD" + ], + [ + 30.2572751438, + "abc compute cloud", + "USD" + ], + [ + 0.076757602000000022, + "abc file system", + "USD" + ], + [ + 50.430964190400012, + "abc elasticache", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsDimensions.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsDimensions.json index 44a1f404f772..410a693ed60e 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsDimensions.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsDimensions.json @@ -5,40 +5,41 @@ "scope": "providers/Microsoft.CostManagement/externalSubscriptions/123" }, "responses": { - "200": { - "body": { - "value": [ - { - "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceType_2019-12-01_2019-12-31", - "name": "dimensions_ResourceType_2019-12-01_2019-12-31", - "type": "microsoft.consumption/dimensions", - "properties": { - "data": [], - "total": 0, - "category": "ResourceType", - "description": "Resource type", - "usageStart": "2019-12-01T00:00:00Z", - "usageEnd": "2019-12-31T00:00:00Z", - "filterEnabled": true, - "groupingEnabled": true - } - }, - { - "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceId_2019-12-01_2019-12-31", - "name": "dimensions_ResourceId_2019-12-01_2019-12-31", - "type": "microsoft.consumption/dimensions", - "properties": { - "data": [], - "total": 0, - "category": "ResourceId", - "description": "Resource ID", - "usageStart": "2019-12-01T00:00:00Z", - "usageEnd": "2019-12-31T00:00:00Z", - "filterEnabled": true, - "groupingEnabled": true - } - }] - } - } - } + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceType_2019-12-01_2019-12-31", + "name": "dimensions_ResourceType_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceType", + "description": "Resource type", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceId_2019-12-01_2019-12-31", + "name": "dimensions_ResourceId_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceId", + "description": "Resource ID", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsQuery.json index 707c2a0294f9..9afab2011c5d 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsQuery.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-10-01/examples/ExternalSubscriptionsQuery.json @@ -3,73 +3,76 @@ "api-version": "2019-10-01", "externalSubscriptionId": "123", "scope": "providers/Microsoft.CostManagement/externalSubscriptions/123", - "parameters":{ - "type": "Usage", - "timeframe": "MonthToDate", - "dataset": { - "granularity": "Daily", - "filter" : { - "and": [ - { - "or": [ - { - "dimension": { - "name": "ResourceLocation", - "operator": "In", - "values": [ - "East US", - "West Europe" - ] - } - }, - { - "tag": { - "name": "Environment", - "operator": "In", - "values": [ - "UAT", - "Prod" - ] - } - } - ] - }, - { - "dimension": { - "name": "ResourceGroup", - "operator": "In", - "values": [ - "API" - ] - } - } - ] - } - } - } + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } }, "responses": { - "200": { - "body": { - "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/query/d99477af-7510-40ee-aca2-e59bdca0d10d", - "name": "d99477af-7510-40ee-aca2-e59bdca0d10d", - "type": "Microsoft.CostManagement/query", - "properties": { - "nextLink": null, - "columns": [{ - "name": "PreTaxCost", - "type": "Number" - }, { - "name": "UsageDate", - "type": "Number" - }, { - "name": "Currency", - "type": "String" - } - ], - "rows": [] - } - } - } - } + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/query/d99477af-7510-40ee-aca2-e59bdca0d10d", + "name": "d99477af-7510-40ee-aca2-e59bdca0d10d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [] + } + } + } + } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json index ff05dfd68c52..2ed7b3ecb5a4 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json @@ -33,140 +33,31 @@ } }, "paths": { - "/{scope}/providers/Microsoft.CostManagement/dimensions": { + "/providers/Microsoft.CostManagement/views": { "get": { "tags": [ - "Dimensions" + "Views" ], - "x-ms-odata": "#/definitions/Dimension", - "operationId": "Dimensions_List", - "description": "Lists the dimensions by the defined scope.", + "operationId": "Views_List", + "description": "Lists all views by tenant and object.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionDimensionsList-Legacy": { - "$ref": "./examples/SubscriptionDimensionsList.json" - }, - "ResourceGroupDimensionsList-Legacy": { - "$ref": "./examples/ResourceGroupDimensionsList.json" - }, - "ManagementGroupDimensionsList-Legacy": { - "$ref": "./examples/ManagementGroupDimensionsList.json" - }, - "ManagementGroupDimensionsListExpandAndTop-Legacy": { - "$ref": "./examples/ManagementGroupDimensionsListExpandAndTop.json" - }, - "ManagementGroupDimensionsListWithFilter-Legacy": { - "$ref": "./examples/ManagementGroupDimensionsListWithFilter.json" - }, - "DepartmentDimensionsList-Legacy": { - "$ref": "./examples/DepartmentDimensionsList.json" - }, - "DepartmentDimensionsListExpandAndTop-Legacy": { - "$ref": "./examples/DepartmentDimensionsListExpandAndTop.json" - }, - "DepartmentDimensionsListWithFilter-Legacy": { - "$ref": "./examples/DepartmentDimensionsListWithFilter.json" - }, - "EnrollmentAccountDimensionsList-Legacy": { - "$ref": "./examples/EnrollmentAccountDimensionsList.json" - }, - "EnrollmentAccountDimensionsListExpandAndTop-Legacy": { - "$ref": "./examples/EnrollmentAccountDimensionsListExpandAndTop.json" - }, - "EnrollmentAccountDimensionsListWithFilter-Legacy": { - "$ref": "./examples/EnrollmentAccountDimensionsListWithFilter.json" - }, - "BillingAccountDimensionsList-Legacy": { - "$ref": "./examples/BillingAccountDimensionsList.json" - }, - "BillingAccountDimensionsListExpandAndTop-Legacy": { - "$ref": "./examples/BillingAccountDimensionsListExpandAndTop.json" - }, - "BillingAccountDimensionsListWithFilter-Legacy": { - "$ref": "./examples/BillingAccountDimensionsListWithFilter.json" - }, - "BillingAccountDimensionsList-Modern": { - "$ref": "./examples/MCABillingAccountDimensionsList.json" - }, - "BillingAccountDimensionsListExpandAndTop-Modern": { - "$ref": "./examples/MCABillingAccountDimensionsListExpandAndTop.json" - }, - "BillingAccountDimensionsListWithFilter-Modern": { - "$ref": "./examples/MCABillingAccountDimensionsListWithFilter.json" - }, - "BillingProfileDimensionsList-Modern": { - "$ref": "./examples/MCABillingProfileDimensionsList.json" - }, - "BillingProfileDimensionsListExpandAndTop-Modern": { - "$ref": "./examples/MCABillingProfileDimensionsListExpandAndTop.json" - }, - "BillingProfileDimensionsListWithFilter-Modern": { - "$ref": "./examples/MCABillingProfileDimensionsListWithFilter.json" - }, - "InvoiceSectionDimensionsList-Modern": { - "$ref": "./examples/MCAInvoiceSectionDimensionsList.json" - }, - "InvoiceSectionDimensionsListExpandAndTop-Modern": { - "$ref": "./examples/MCAInvoiceSectionDimensionsListExpandAndTop.json" - }, - "InvoiceSectionDimensionsListWithFilter-Modern": { - "$ref": "./examples/MCAInvoiceSectionDimensionsListWithFilter.json" - }, - "CustomerDimensionsList-Modern": { - "$ref": "./examples/MCACustomerDimensionsList.json" - }, - "CustomerDimensionsListExpandAndTop-Modern": { - "$ref": "./examples/MCACustomerDimensionsListExpandAndTop.json" - }, - "CustomerDimensionsListWithFilter-Modern": { - "$ref": "./examples/MCACustomerDimensionsListWithFilter.json" + "PrivateViewList": { + "$ref": "./examples/PrivateViewList.json" } }, "parameters": [ - { - "$ref": "#/parameters/scopeDimensionParameter" - }, { "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "$filter", - "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "$expand", - "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "$skiptoken", - "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", - "in": "query", - "required": false, - "type": "string" - }, - { - "name": "$top", - "description": "May be used to limit the number of results to the most recent N dimension data.", - "in": "query", - "required": false, - "type": "integer", - "minimum": 1, - "maximum": 1000 } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/DimensionsListResult" + "$ref": "#/definitions/ViewListResult" } }, "default": { @@ -177,104 +68,38 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.CostManagement/query": { - "post": { + "/{scope}/providers/Microsoft.CostManagement/views": { + "get": { "tags": [ - "Query" + "Views" ], - "operationId": "Query_Usage", - "description": "Query the usage data for scope defined.", + "operationId": "Views_ListByScope", + "description": "Lists all views at the given scope.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionQuery-Legacy": { - "$ref": "./examples/SubscriptionQuery.json" - }, - "SubscriptionQueryGrouping-Legacy": { - "$ref": "./examples/SubscriptionQueryGrouping.json" - }, - "ResourceGroupQuery-Legacy": { - "$ref": "./examples/ResourceGroupQuery.json" - }, - "ResourceGroupQueryGrouping-Legacy": { - "$ref": "./examples/ResourceGroupQueryGrouping.json" - }, - "BillingAccountQuery-Legacy": { - "$ref": "./examples/BillingAccountQuery.json" - }, - "BillingAccountQueryGrouping-Legacy": { - "$ref": "./examples/BillingAccountQueryGrouping.json" - }, - "EnrollmentAccountQuery-Legacy": { - "$ref": "./examples/EnrollmentAccountQuery.json" - }, - "EnrollmentAccountQueryGrouping-Legacy": { - "$ref": "./examples/EnrollmentAccountQueryGrouping.json" - }, - "DepartmentQuery-Legacy": { - "$ref": "./examples/DepartmentQuery.json" - }, - "DepartmentQueryGrouping-Legacy": { - "$ref": "./examples/DepartmentQueryGrouping.json" - }, - "ManagementGroupQuery-Legacy": { - "$ref": "./examples/ManagementGroupQuery.json" - }, - "ManagementGroupQueryGrouping-Legacy": { - "$ref": "./examples/ManagementGroupQueryGrouping.json" - }, - "BillingAccountQuery-Modern": { - "$ref": "./examples/MCABillingAccountQuery.json" - }, - "BillingAccountQueryGrouping-Modern": { - "$ref": "./examples/MCABillingAccountQueryGrouping.json" - }, - "BillingProfileQuery-Modern": { - "$ref": "./examples/MCABillingProfileQuery.json" - }, - "BillingProfileQueryGrouping-Modern": { - "$ref": "./examples/MCABillingProfileQueryGrouping.json" - }, - "InvoiceSectionQuery-Modern": { - "$ref": "./examples/MCAInvoiceSectionQuery.json" - }, - "InvoiceSectionQueryGrouping-Modern": { - "$ref": "./examples/MCAInvoiceSectionQueryGrouping.json" - }, - "CustomerQuery-Modern": { - "$ref": "./examples/MCACustomerQuery.json" - }, - "CustomerQueryGrouping-Modern": { - "$ref": "./examples/MCACustomerQueryGrouping.json" + "ResourceGroupViewList": { + "$ref": "./examples/ViewListByResourceGroup.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "$ref": "#/parameters/scopeViewParameter" }, { "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/QueryDefinition" - }, - "description": "Parameters supplied to the CreateOrUpdate Query Config operation." } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/QueryResult" + "$ref": "#/definitions/ViewListResult" } }, "default": { @@ -283,52 +108,40 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.CostManagement/exports": { + "/providers/Microsoft.CostManagement/views/{viewName}": { "get": { "tags": [ - "Exports" + "Views" ], - "operationId": "Exports_List", - "description": "The operation to list all exports at the given scope.", + "operationId": "Views_Get", + "description": "Gets the view by view name.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionExportList": { - "$ref": "./examples/ExportListBySubscription.json" - }, - "ResourceGroupExportList": { - "$ref": "./examples/ExportListByResourceGroup.json" - }, - "BillingAccountExportList": { - "$ref": "./examples/ExportListByBillingAccount.json" - }, - "DepartmentExportList": { - "$ref": "./examples/ExportListByDepartment.json" - }, - "EnrollmentAccountExportList": { - "$ref": "./examples/ExportListByEnrollmentAccount.json" - }, - "ManagementGroupExportList": { - "$ref": "./examples/ExportListByManagementGroup.json" + "PrivateView": { + "$ref": "./examples/PrivateView.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "#/parameters/viewNameParameter" } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/ExportListResult" + "$ref": "#/definitions/View" } }, "default": { @@ -338,54 +151,49 @@ } } } - } - }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { - "get": { + }, + "put": { "tags": [ - "Exports" + "Views" ], - "operationId": "Exports_Get", - "description": "The operation to get the export for the defined scope by export name.", + "operationId": "Views_CreateOrUpdate", + "description": "The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionExport": { - "$ref": "./examples/ExportBySubscription.json" - }, - "ResourceGroupExport": { - "$ref": "./examples/ExportByResourceGroup.json" - }, - "BillingAccountExport": { - "$ref": "./examples/ExportByBillingAccount.json" - }, - "DepartmentExport": { - "$ref": "./examples/ExportByDepartment.json" - }, - "EnrollmentAccountExport": { - "$ref": "./examples/ExportByEnrollmentAccount.json" - }, - "ManagementGroupExport": { - "$ref": "./examples/ExportByManagementGroup.json" + "CreateOrUpdatePrivateView": { + "$ref": "./examples/PrivateViewCreateOrUpdate.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/apiVersionParameter" + "$ref": "#/parameters/viewNameParameter" }, { - "$ref": "#/parameters/exportNameParameter" - } - ], - "responses": { - "200": { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/View" + }, + "description": "Parameters supplied to the CreateOrUpdate View operation." + } + ], + "responses": { + "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/Export" + "$ref": "#/definitions/View" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/View" } }, "default": { @@ -396,66 +204,130 @@ } } }, - "put": { + "delete": { "tags": [ - "Exports" + "Views" ], - "operationId": "Exports_CreateOrUpdate", - "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "operationId": "Views_Delete", + "description": "The operation to delete a view.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + "DeletePrivateView": { + "$ref": "./examples/PrivateViewDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" }, - "ResourceGroupCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." }, - "BillingAccountCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + "204": { + "description": "NoContent. Resource is not available." }, - "DepartmentCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/views/{viewName}": { + "get": { + "tags": [ + "Views" + ], + "operationId": "Views_GetByScope", + "description": "Gets the view for the defined scope by view name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupView": { + "$ref": "./examples/ViewByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" }, - "EnrollmentAccountCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + { + "$ref": "#/parameters/apiVersionParameter" }, - "ManagementGroupCreateOrUpdateExport": { - "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/View" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Views" + ], + "operationId": "Views_CreateOrUpdateByScope", + "description": "The operation to create or update a view. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ResourceGroupCreateOrUpdateView": { + "$ref": "./examples/ViewCreateOrUpdateByResourceGroup.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "$ref": "#/parameters/scopeViewParameter" }, { "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/exportNameParameter" + "$ref": "#/parameters/viewNameParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Export" + "$ref": "#/definitions/View" }, - "description": "Parameters supplied to the CreateOrUpdate Export operation." + "description": "Parameters supplied to the CreateOrUpdate View operation." } ], "responses": { "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/Export" + "$ref": "#/definitions/View" } }, "201": { "description": "Created.", "schema": { - "$ref": "#/definitions/Export" + "$ref": "#/definitions/View" } }, "default": { @@ -468,47 +340,137 @@ }, "delete": { "tags": [ - "Exports" + "Views" ], - "operationId": "Exports_Delete", - "description": "The operation to delete a export.", + "operationId": "Views_DeleteByScope", + "description": "The operation to delete a view.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionDeleteExport": { - "$ref": "./examples/ExportDeleteBySubscription.json" + "ResourceGroupDeleteView": { + "$ref": "./examples/ViewDeleteByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeViewParameter" }, - "ResourceGroupDeleteExport": { - "$ref": "./examples/ExportDeleteByResourceGroup.json" + { + "$ref": "#/parameters/apiVersionParameter" }, - "BillingAccountDeleteExport": { - "$ref": "./examples/ExportDeleteByBillingAccount.json" + { + "$ref": "#/parameters/viewNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." }, - "EnrollmentAccountDeleteExport": { - "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + "204": { + "description": "NoContent. Resource is not available." }, - "DepartmentDeleteExport": { - "$ref": "./examples/ExportDeleteByDepartment.json" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/alerts": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_List", + "description": "Lists the alerts for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "BillingAccountAlerts": { + "$ref": "./examples/BillingAccountAlerts.json" }, - "ManagementGroupDeleteExport": { - "$ref": "./examples/ExportDeleteByManagementGroup.json" + "BillingProfileAlerts": { + "$ref": "./examples/BillingProfileAlerts.json" + }, + "InvoiceSectionAlerts": { + "$ref": "./examples/InvoiceSectionAlerts.json" + }, + "EnrollmentAccountAlerts": { + "$ref": "./examples/EnrollmentAccountAlerts.json" + }, + "DepartmentAlerts": { + "$ref": "./examples/DepartmentAlerts.json" + }, + "SubscriptionAlerts": { + "$ref": "./examples/SubscriptionAlerts.json" + }, + "ResourceGroupAlerts": { + "$ref": "./examples/ResourceGroupAlerts.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/scopeAlertParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AlertsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/alerts": { + "get": { + "tags": [ + "Alerts" + ], + "operationId": "Alerts_ListExternal", + "description": "Lists the Alerts for external cloud provider type defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountAlerts": { + "$ref": "./examples/ExternalBillingAccountAlerts.json" }, + "ExternalSubscriptionAlerts": { + "$ref": "./examples/ExternalSubscriptionAlerts.json" + } + }, + "parameters": [ { "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/exportNameParameter" + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" } ], "responses": { "200": { - "description": "OK. The request has succeeded." + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AlertsResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -519,50 +481,69 @@ } } }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "/{scope}/providers/Microsoft.CostManagement/forecast": { "post": { "tags": [ - "Exports" + "Forecast" ], - "operationId": "Exports_Execute", - "description": "The operation to execute a export.", + "operationId": "Forecast_Usage", + "description": "Lists the forecast charges for scope defined.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionExecuteExport": { - "$ref": "./examples/ExportExecutionBySubscription.json" + "BillingAccountForecast": { + "$ref": "./examples/BillingAccountForecast.json" }, - "ResourceGroupExecuteExport": { - "$ref": "./examples/ExportExecutionByResourceGroup.json" + "BillingProfileForecast": { + "$ref": "./examples/BillingProfileForecast.json" }, - "BillingAccountExecuteExport": { - "$ref": "./examples/ExportExecutionByBillingAccount.json" + "InvoiceSectionForecast": { + "$ref": "./examples/InvoiceSectionForecast.json" }, - "DepartmentExecuteExport": { - "$ref": "./examples/ExportExecutionByDepartment.json" + "EnrollmentAccountForecast": { + "$ref": "./examples/EnrollmentAccountForecast.json" }, - "EnrollmentAccountExecuteExport": { - "$ref": "./examples/ExportExecutionByEnrollmentAccount.json" + "DepartmentForecast": { + "$ref": "./examples/DepartmentForecast.json" }, - "ManagementGroupExecuteExport": { - "$ref": "./examples/ExportExecutionByManagementGroup.json" + "SubscriptionForecast": { + "$ref": "./examples/SubscriptionForecast.json" + }, + "ResourceGroupForecast": { + "$ref": "./examples/ResourceGroupForecast.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" }, { "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/exportNameParameter" + "$ref": "#/parameters/scopeForecastParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ForecastDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Forecast Config operation." } ], "responses": { "200": { - "description": "OK. The request has succeeded." + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -573,96 +554,1262 @@ } } }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { - "get": { + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/forecast": { + "post": { "tags": [ - "Exports" + "Forecast" ], - "operationId": "Exports_GetExecutionHistory", - "description": "The operation to get the execution history of an export for the defined scope by export name.", + "operationId": "Forecast_ExternalCloudProviderUsage", + "description": "Lists the forecast charges for external cloud provider type defined.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" }, "x-ms-examples": { - "SubscriptionExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListBySubscription.json" + "ExternalBillingAccountForecast": { + "$ref": "./examples/ExternalBillingAccountForecast.json" }, - "ResourceGroupExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListByResourceGroup.json" - }, - "BillingAccountExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListByBillingAccount.json" - }, - "DepartmentExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListByDepartment.json" - }, - "EnrollmentAccountExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListByEnrollmentAccount.json" - }, - "ManagementGroupExecutionHistoryExport": { - "$ref": "./examples/ExportExecutionListByManagementGroup.json" + "ExternalSubscriptionForecast": { + "$ref": "./examples/ExternalSubscriptionForecast.json" } }, "parameters": [ { - "$ref": "#/parameters/scopeQueryParameter" + "name": "$filter", + "description": "May be used to filter forecasts by properties/usageDate (Utc time), properties/chargeType or properties/grain. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" }, { "$ref": "#/parameters/apiVersionParameter" }, { - "$ref": "#/parameters/exportNameParameter" + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ForecastDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Forecast Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/dimensions": { + "get": { + "tags": [ + "Dimensions" + ], + "x-ms-odata": "#/definitions/Dimension", + "operationId": "Dimensions_List", + "description": "Lists the dimensions by the defined scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionDimensionsList-Legacy": { + "$ref": "./examples/SubscriptionDimensionsList.json" + }, + "ResourceGroupDimensionsList-Legacy": { + "$ref": "./examples/ResourceGroupDimensionsList.json" + }, + "ManagementGroupDimensionsList-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsList.json" + }, + "ManagementGroupDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListExpandAndTop.json" + }, + "ManagementGroupDimensionsListWithFilter-Legacy": { + "$ref": "./examples/ManagementGroupDimensionsListWithFilter.json" + }, + "DepartmentDimensionsList-Legacy": { + "$ref": "./examples/DepartmentDimensionsList.json" + }, + "DepartmentDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/DepartmentDimensionsListExpandAndTop.json" + }, + "DepartmentDimensionsListWithFilter-Legacy": { + "$ref": "./examples/DepartmentDimensionsListWithFilter.json" + }, + "EnrollmentAccountDimensionsList-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsList.json" + }, + "EnrollmentAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListExpandAndTop.json" + }, + "EnrollmentAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/EnrollmentAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Legacy": { + "$ref": "./examples/BillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Legacy": { + "$ref": "./examples/BillingAccountDimensionsListWithFilter.json" + }, + "BillingAccountDimensionsList-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsList.json" + }, + "BillingAccountDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListExpandAndTop.json" + }, + "BillingAccountDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingAccountDimensionsListWithFilter.json" + }, + "BillingProfileDimensionsList-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsList.json" + }, + "BillingProfileDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListExpandAndTop.json" + }, + "BillingProfileDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCABillingProfileDimensionsListWithFilter.json" + }, + "InvoiceSectionDimensionsList-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsList.json" + }, + "InvoiceSectionDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListExpandAndTop.json" + }, + "InvoiceSectionDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCAInvoiceSectionDimensionsListWithFilter.json" + }, + "CustomerDimensionsList-Modern": { + "$ref": "./examples/MCACustomerDimensionsList.json" + }, + "CustomerDimensionsListExpandAndTop-Modern": { + "$ref": "./examples/MCACustomerDimensionsListExpandAndTop.json" + }, + "CustomerDimensionsListWithFilter-Modern": { + "$ref": "./examples/MCACustomerDimensionsListWithFilter.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeDimensionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N dimension data.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DimensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/dimensions": { + "get": { + "tags": [ + "Dimensions" + ], + "x-ms-odata": "#/definitions/Dimension", + "operationId": "Dimensions_ByExternalCloudProviderType", + "description": "Lists the dimensions by the external cloud provider type.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountDimensionList": { + "$ref": "./examples/ExternalBillingAccountsDimensions.json" + }, + "ExternalSubscriptionDimensionList": { + "$ref": "./examples/ExternalSubscriptionsDimensions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter dimensions by properties/category, properties/usageStart, properties/usageEnd. Supported operators are 'eq','lt', 'gt', 'le', 'ge'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$expand", + "description": "May be used to expand the properties/data within a dimension category. By default, data is not included when listing dimensions.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N dimension data.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DimensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/query": { + "post": { + "tags": [ + "Query" + ], + "operationId": "Query_Usage", + "description": "Query the usage data for scope defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionQuery-Legacy": { + "$ref": "./examples/SubscriptionQuery.json" + }, + "SubscriptionQueryGrouping-Legacy": { + "$ref": "./examples/SubscriptionQueryGrouping.json" + }, + "ResourceGroupQuery-Legacy": { + "$ref": "./examples/ResourceGroupQuery.json" + }, + "ResourceGroupQueryGrouping-Legacy": { + "$ref": "./examples/ResourceGroupQueryGrouping.json" + }, + "BillingAccountQuery-Legacy": { + "$ref": "./examples/BillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Legacy": { + "$ref": "./examples/BillingAccountQueryGrouping.json" + }, + "EnrollmentAccountQuery-Legacy": { + "$ref": "./examples/EnrollmentAccountQuery.json" + }, + "EnrollmentAccountQueryGrouping-Legacy": { + "$ref": "./examples/EnrollmentAccountQueryGrouping.json" + }, + "DepartmentQuery-Legacy": { + "$ref": "./examples/DepartmentQuery.json" + }, + "DepartmentQueryGrouping-Legacy": { + "$ref": "./examples/DepartmentQueryGrouping.json" + }, + "ManagementGroupQuery-Legacy": { + "$ref": "./examples/ManagementGroupQuery.json" + }, + "ManagementGroupQueryGrouping-Legacy": { + "$ref": "./examples/ManagementGroupQueryGrouping.json" + }, + "BillingAccountQuery-Modern": { + "$ref": "./examples/MCABillingAccountQuery.json" + }, + "BillingAccountQueryGrouping-Modern": { + "$ref": "./examples/MCABillingAccountQueryGrouping.json" + }, + "BillingProfileQuery-Modern": { + "$ref": "./examples/MCABillingProfileQuery.json" + }, + "BillingProfileQueryGrouping-Modern": { + "$ref": "./examples/MCABillingProfileQueryGrouping.json" + }, + "InvoiceSectionQuery-Modern": { + "$ref": "./examples/MCAInvoiceSectionQuery.json" + }, + "InvoiceSectionQueryGrouping-Modern": { + "$ref": "./examples/MCAInvoiceSectionQueryGrouping.json" + }, + "CustomerQuery-Modern": { + "$ref": "./examples/MCACustomerQuery.json" + }, + "CustomerQueryGrouping-Modern": { + "$ref": "./examples/MCACustomerQueryGrouping.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Query Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/query": { + "post": { + "tags": [ + "Query" + ], + "operationId": "Query_UsageByExternalCloudProviderType", + "description": "Query the usage data for external cloud provider type defined.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExternalBillingAccountQueryList": { + "$ref": "./examples/ExternalBillingAccountsQuery.json" + }, + "ExternalSubscriptionsQuery": { + "$ref": "./examples/ExternalSubscriptionsQuery.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/externalCloudProviderTypeParameter" + }, + { + "$ref": "#/parameters/externalCloudProviderIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryDefinition" + }, + "description": "Parameters supplied to the CreateOrUpdate Query Config operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/QueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_List", + "description": "The operation to list all exports at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExportList": { + "$ref": "./examples/ExportListBySubscription.json" + }, + "ResourceGroupExportList": { + "$ref": "./examples/ExportListByResourceGroup.json" + }, + "BillingAccountExportList": { + "$ref": "./examples/ExportListByBillingAccount.json" + }, + "DepartmentExportList": { + "$ref": "./examples/ExportListByDepartment.json" + }, + "EnrollmentAccountExportList": { + "$ref": "./examples/ExportListByEnrollmentAccount.json" + }, + "ManagementGroupExportList": { + "$ref": "./examples/ExportListByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Get", + "description": "The operation to get the export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExport": { + "$ref": "./examples/ExportBySubscription.json" + }, + "ResourceGroupExport": { + "$ref": "./examples/ExportByResourceGroup.json" + }, + "BillingAccountExport": { + "$ref": "./examples/ExportByBillingAccount.json" + }, + "DepartmentExport": { + "$ref": "./examples/ExportByDepartment.json" + }, + "EnrollmentAccountExport": { + "$ref": "./examples/ExportByEnrollmentAccount.json" + }, + "ManagementGroupExport": { + "$ref": "./examples/ExportByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Exports" + ], + "operationId": "Exports_CreateOrUpdate", + "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + }, + "ResourceGroupCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + }, + "BillingAccountCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + }, + "DepartmentCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + }, + "EnrollmentAccountCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + }, + "ManagementGroupCreateOrUpdateExport": { + "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Export" + }, + "description": "Parameters supplied to the CreateOrUpdate Export operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Delete", + "description": "The operation to delete a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionDeleteExport": { + "$ref": "./examples/ExportDeleteBySubscription.json" + }, + "ResourceGroupDeleteExport": { + "$ref": "./examples/ExportDeleteByResourceGroup.json" + }, + "BillingAccountDeleteExport": { + "$ref": "./examples/ExportDeleteByBillingAccount.json" + }, + "EnrollmentAccountDeleteExport": { + "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + }, + "DepartmentDeleteExport": { + "$ref": "./examples/ExportDeleteByDepartment.json" + }, + "ManagementGroupDeleteExport": { + "$ref": "./examples/ExportDeleteByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "post": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Execute", + "description": "The operation to execute a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExecuteExport": { + "$ref": "./examples/ExportExecutionBySubscription.json" + }, + "ResourceGroupExecuteExport": { + "$ref": "./examples/ExportExecutionByResourceGroup.json" + }, + "BillingAccountExecuteExport": { + "$ref": "./examples/ExportExecutionByBillingAccount.json" + }, + "DepartmentExecuteExport": { + "$ref": "./examples/ExportExecutionByDepartment.json" + }, + "EnrollmentAccountExecuteExport": { + "$ref": "./examples/ExportExecutionByEnrollmentAccount.json" + }, + "ManagementGroupExecuteExport": { + "$ref": "./examples/ExportExecutionByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_GetExecutionHistory", + "description": "The operation to get the execution history of an export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "SubscriptionExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListBySubscription.json" + }, + "ResourceGroupExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByResourceGroup.json" + }, + "BillingAccountExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByBillingAccount.json" + }, + "DepartmentExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByDepartment.json" + }, + "EnrollmentAccountExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByEnrollmentAccount.json" + }, + "ManagementGroupExecutionHistoryExport": { + "$ref": "./examples/ExportExecutionListByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeQueryParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportExecutionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.CostManagement/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available cost management REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ReportConfigDefinition": { + "description": "The definition of a report config.", + "properties": { + "type": { + "description": "The type of the report. Usage represents actual usage, forecast represents forecasted data and UsageAndForecast represents both usage and forecasted data. Actual usage and forecasted data can be differentiated based on dates.", + "type": "string", + "enum": [ + "Usage" + ], + "x-ms-enum": { + "name": "ReportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the report. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "WeekToDate", + "MonthToDate", + "YearToDate", + "Custom" + ], + "x-ms-enum": { + "name": "ReportTimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the report.", + "$ref": "#/definitions/ReportConfigTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this report config.", + "$ref": "#/definitions/ReportConfigDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ReportConfigTimePeriod": { + "description": "The start and end date for pulling data for the report.", + "properties": { + "from": { + "description": "The start date to pull data from.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date to pull data to.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ReportConfigDataset": { + "description": "The definition of data present in the report.", + "properties": { + "granularity": { + "description": "The granularity of rows in the report.", + "type": "string", + "enum": [ + "Daily", + "Monthly" + ], + "x-ms-enum": { + "name": "ReportGranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the report. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/ReportConfigDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ReportConfigAggregation" + }, + "maxItems": 2 + }, + "grouping": { + "description": "Array of group by expression to use in the report. Report can have up to 2 group by clauses.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigGrouping" + }, + "maxItems": 2 + }, + "sorting": { + "description": "Array of order by expression to use in the report.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigSorting" + } + }, + "filter": { + "type": "object", + "description": "Has filter expression to use in the report.", + "$ref": "#/definitions/ReportConfigFilter" + } + } + }, + "ReportConfigDatasetConfiguration": { + "description": "The configuration of dataset in the report.", + "properties": { + "columns": { + "description": "Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ReportConfigAggregation": { + "description": "The aggregation expression to be used in the report.", + "properties": { + "name": { + "description": "The name of the column to aggregate.", + "type": "string" + }, + "function": { + "description": "The name of the aggregation function to use.", + "type": "string", + "enum": [ + "Sum" + ], + "x-ms-enum": { + "name": "FunctionType", + "modelAsString": true + } + } + }, + "required": [ + "name", + "function" + ] + }, + "ReportConfigSorting": { + "description": "The order by expression to be used in the report.", + "properties": { + "direction": { + "description": "Direction of sort.", + "type": "string", + "enum": [ + "Ascending", + "Descending" + ] + }, + "name": { + "description": "The name of the column to sort.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "ReportConfigGrouping": { + "description": "The group by expression to be used in the report.", + "properties": { + "type": { + "description": "Has type of the column to group.", + "$ref": "#/definitions/ReportConfigColumnType" + }, + "name": { + "description": "The name of the column to group. This version supports subscription lowest possible grain.", + "type": "string" + } + }, + "required": [ + "type", + "name" + ] + }, + "ReportConfigFilter": { + "description": "The filter expression to be used in the report.", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "minItems": 2 + }, + "or": { + "description": "The logical \"OR\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "minItems": 2 + }, + "not": { + "description": "The logical \"NOT\" expression.", + "$ref": "#/definitions/ReportConfigFilter" + }, + "dimension": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/ReportConfigComparisonExpression" + }, + "tag": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/ReportConfigComparisonExpression" + } + } + }, + "ReportConfigColumnType": { + "description": "The type of the column in the report.", + "type": "string", + "enum": [ + "Tag", + "Dimension" + ], + "x-ms-enum": { + "name": "ReportConfigColumnType", + "modelAsString": true + } + }, + "ReportConfigComparisonExpression": { + "description": "The comparison expression to be used in the report.", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In", + "Contains" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ViewListResult": { + "description": "Result of listing views. It contains a list of available views.", + "type": "object", + "properties": { + "value": { + "description": "The list of views.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/View" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "View": { + "description": "States and configurations of Cost Analysis.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ViewProperties", + "title": "View properties" + } + } + }, + "ViewProperties": { + "type": "object", + "description": "The properties of the view.", + "properties": { + "displayName": { + "description": "User input name of the view. Required.", + "type": "string" + }, + "scope": { + "description": "Cost Management scope to save the view on. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, '/providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for ExternalBillingAccount scope, and '/providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for ExternalSubscription scope.", + "type": "string" + }, + "createdOn": { + "description": "Date the user created this view.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "description": "Date when the user last modified this view.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "query": { + "description": "Query body configuration. Required.", + "type": "object", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReportConfigDefinition" + }, + "chart": { + "description": "Chart type of the main view in Cost Analysis. Required.", + "type": "string", + "enum": [ + "Area", + "Line", + "StackedColumn", + "GroupedColumn", + "Table" + ], + "x-ms-enum": { + "name": "ChartType", + "modelAsString": true + } + }, + "accumulated": { + "description": "Show costs accumulated over time.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "AccumulatedType", + "modelAsString": true + } + }, + "metric": { + "description": "Metric to use when displaying costs.", + "type": "string", + "enum": [ + "ActualCost", + "AmortizedCost", + "AHUB" + ], + "x-ms-enum": { + "name": "MetricType", + "modelAsString": true } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ExportExecutionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } + }, + "kpis": { + "description": "List of KPIs to show in Cost Analysis UI.", + "type": "array", + "items": { + "$ref": "#/definitions/KpiProperties" + } + }, + "pivots": { + "description": "Configuration of 3 sub-views in the Cost Analysis UI.", + "type": "array", + "items": { + "$ref": "#/definitions/PivotProperties" } } } }, - "/providers/Microsoft.CostManagement/operations": { - "get": { - "tags": [ - "Operations" - ], - "operationId": "Operations_List", - "description": "Lists all of the available cost management REST API operations.", - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" + "KpiProperties": { + "description": "Each KPI must contain a 'type' and 'enabled' key.", + "type": "object", + "properties": { + "type": { + "description": "KPI type (Forecast, Budget).", + "type": "string", + "enum": [ + "Forecast", + "Budget" + ], + "x-ms-enum": { + "name": "KpiTypeType", + "modelAsString": true } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } + }, + "id": { + "description": "ID of resource related to metric (budget).", + "type": "string" + }, + "enabled": { + "description": "show the KPI in the UI?", + "type": "boolean" + } + } + }, + "PivotProperties": { + "description": "Each pivot must contain a 'type' and 'name'.", + "type": "object", + "properties": { + "type": { + "description": "Data type to show in view.", + "type": "string", + "enum": [ + "Dimension", + "TagKey" + ], + "x-ms-enum": { + "name": "PivotTypeType", + "modelAsString": true } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "name": { + "description": "Data field to show in view.", + "type": "string" } } - } - }, - "definitions": { + }, "ErrorDetails": { "description": "The details of the error.", "properties": { @@ -679,7 +1826,7 @@ } }, "ErrorResponse": { - "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", "type": "object", "properties": { "error": { @@ -717,6 +1864,31 @@ }, "x-ms-azure-resource": true }, + "ProxyResource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, "DimensionsListResult": { "description": "Result of listing dimensions. It contains a list of available dimensions.", "type": "object", @@ -802,6 +1974,186 @@ } } }, + "AlertsResult": { + "description": "Result of alerts.", + "type": "object", + "properties": { + "value": { + "description": "List of alerts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Alert" + } + }, + "nextLink": { + "description": "URL to get the next set of alerts results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Alert": { + "description": "An individual alert.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AlertProperties", + "title": "Alert properties" + } + } + }, + "AlertProperties": { + "type": "object", + "properties": { + "definition": { + "description": "defines the type of alert", + "type": "object", + "properties": { + "type": { + "description": "type of alert", + "type": "string" + }, + "category": { + "description": "Alert category", + "type": "string" + }, + "criteria": { + "description": "Criteria that triggered alert", + "type": "string" + } + } + }, + "description": { + "description": "Alert description", + "type": "string" + }, + "source": { + "description": "Source of alert", + "type": "string" + }, + "details": { + "description": "Alert details", + "type": "object", + "properties": { + "timeGrainType": { + "description": "Type of timegrain cadence", + "type": "string" + }, + "periodStartDate": { + "description": "datetime of periodStartDate", + "type": "string" + }, + "triggeredBy": { + "description": "notificationId that triggered this alert", + "type": "string" + }, + "resourceGroupFilter": { + "description": "array of resourceGroups to filter by", + "type": "array", + "items": {} + }, + "resourceFilter": { + "description": "array of resources to filter by", + "type": "array", + "items": {} + }, + "meterFilter": { + "description": "array of meters to filter by", + "type": "array", + "items": {} + }, + "tagFilter": { + "description": "tags to filter by", + "type": "object", + "properties": {} + }, + "threshold": { + "description": "notification threshold percentage as a decimal which activated this alert", + "type": "number", + "format": "decimal" + }, + "operator": { + "description": "operator used to compare currentSpend with amount", + "type": "string" + }, + "amount": { + "description": "budget threshold amount", + "type": "number", + "format": "decimal" + }, + "unit": { + "description": "unit of currency being used", + "type": "string" + }, + "currentSpend": { + "description": "current spend", + "type": "number", + "format": "decimal" + }, + "contactEmails": { + "description": "list of emails to contact", + "type": "array", + "items": { + "type": "string" + } + }, + "contactGroups": { + "description": "list of action groups to broadcast to", + "type": "array", + "items": { + "type": "string" + } + }, + "contactRoles": { + "description": "list of contact roles", + "type": "array", + "items": { + "type": "string" + } + }, + "overridingAlert": { + "description": "overriding alert", + "type": "string" + } + } + }, + "costEntityId": { + "description": "related budget", + "type": "string" + }, + "status": { + "description": "alert status", + "type": "string" + }, + "creationTime": { + "description": "dateTime in which alert was created", + "type": "string" + }, + "closeTime": { + "description": "dateTime in which alert was closed", + "type": "string" + }, + "modificationTime": { + "description": "dateTime in which alert was last modified", + "type": "string" + }, + "statusModificationUserName": { + "description": "", + "type": "string" + }, + "statusModificationTime": { + "description": "dateTime in which the alert status was last modified", + "type": "string" + } + } + }, "QueryResult": { "description": "Result of query. It contains all columns listed under groupings and aggregation.", "type": "object", @@ -904,6 +2256,60 @@ } } }, + "ForecastDefinition": { + "description": "The definition of a forecast.", + "properties": { + "type": { + "description": "The type of the forecast.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ForecastType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the forecast. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "ForecastTimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the forecast.", + "$ref": "#/definitions/QueryTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this forecast.", + "$ref": "#/definitions/QueryDataset" + }, + "includeActualCost": { + "description": "a boolean determining if actualCost will be included", + "type": "boolean" + }, + "includeFreshPartialCost": { + "description": "a boolean determining if FreshPartialCost will be included", + "type": "boolean" + } + }, + "required": [ + "type", + "timeframe" + ] + }, "QueryDefinition": { "description": "The definition of a query.", "properties": { @@ -1283,7 +2689,7 @@ ] }, "ExportDeliveryDestination": { - "description": "The destination information for the delivery of the export. To allow access to a storage account, you must register the account's subscription with the Microsoft.CostManagementExports resource provider. This is required once per subscription. When creating an export in the Azure portal, it is done automatically, however API users need to register the subscription. For more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services .", + "description": "The destination information for the delivery of the export. To allow access to a storage account, you must register the account's subscription with the Microsoft.CostManagementExports resource provider. This is required once per subscription. When creating an export in the Azure portal, it is done automatically, however API users need to register the subscription. For more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services .", "properties": { "resourceId": { "description": "The resource id of the storage account where exports will be delivered.", @@ -1394,6 +2800,22 @@ } }, "parameters": { + "viewNameParameter": { + "name": "viewName", + "in": "path", + "description": "View name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "scopeViewParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with view operations. This includes 'subscriptions/{subscriptionId}' for subscription scope, 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for BillingProfile scope, 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}' for InvoiceSection scope, 'providers/Microsoft.Management/managementGroups/{managementGroupId}' for Management Group scope, 'providers/Microsoft.CostManagement/externalBillingAccounts/{externalBillingAccountName}' for External Billing Account scope and 'providers/Microsoft.CostManagement/externalSubscriptions/{externalSubscriptionName}' for External Subscription scope.", + "x-ms-parameter-location": "method" + }, "scopeDimensionParameter": { "name": "scope", "in": "path", @@ -1403,6 +2825,24 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, + "scopeAlertParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with alerts operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "scopeForecastParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with forecast operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, "scopeQueryParameter": { "name": "scope", "in": "path", @@ -1473,6 +2913,30 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "externalCloudProviderTypeParameter": { + "name": "externalCloudProviderType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "externalSubscriptions", + "externalBillingAccounts" + ], + "x-ms-enum": { + "name": "externalCloudProviderType", + "modelAsString": true + }, + "description": "The external cloud provider type associated with dimension/query operations. This includes 'externalSubscriptions' for linked account and 'externalBillingAccounts' for consolidated account.", + "x-ms-parameter-location": "method" + }, + "externalCloudProviderIdParameter": { + "name": "externalCloudProviderId", + "in": "path", + "required": true, + "type": "string", + "description": "This can be '{externalSubscriptionId}' for linked account or '{externalBillingAccountId}' for consolidated account used with dimension/query operations.", + "x-ms-parameter-location": "method" } } } diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountAlerts.json new file mode 100644 index 000000000000..8a6b536c3278 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountAlerts.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountForecast.json new file mode 100644 index 000000000000..7bc6e323939a --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingAccountForecast.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "billingAccountId": "12345:6789", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/providers/Microsoft.CostManagement/Forecast?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "JapanUnifia-Trial", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "RVIIOT-TRIAL", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "VSTSHOL-1595322048000", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "gs-stms-dev", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileAlerts.json new file mode 100644 index 000000000000..4c1bcb9cf37c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileAlerts.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileForecast.json new file mode 100644 index 000000000000..30098593bd9f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/BillingProfileForecast.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/providers/Microsoft.CostManagement/Forecast?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "JapanUnifia-Trial", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "RVIIOT-TRIAL", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "VSTSHOL-1595322048000", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "gs-stms-dev", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentAlerts.json new file mode 100644 index 000000000000..31d5dd87d70d --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentAlerts.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "12345:6789", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentForecast.json new file mode 100644 index 000000000000..fdfe31599e80 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/DepartmentForecast.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "billingAccountId": "12345:6789", + "departmentId": "123", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123/providers/Microsoft.CostManagement/query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/departments/123/providers/Microsoft.CostManagement/Forecast?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "JapanUnifia-Trial", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "RVIIOT-TRIAL", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "VSTSHOL-1595322048000", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "gs-stms-dev", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountAlerts.json new file mode 100644 index 000000000000..eff8e650fe77 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountAlerts.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "12345:6789", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountForecast.json new file mode 100644 index 000000000000..2e598af0213b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/EnrollmentAccountForecast.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "billingAccountId": "12345:6789", + "enrollmentAccountId": "456", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456/providers/Microsoft.CostManagement/query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/enrollmentAccounts/456/providers/Microsoft.CostManagement/Forecast?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "JapanUnifia-Trial", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "RVIIOT-TRIAL", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "VSTSHOL-1595322048000", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "gs-stms-dev", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountAlerts.json new file mode 100644 index 000000000000..3172c3380a43 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountAlerts.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalBillingAccounts" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountForecast.json new file mode 100644 index 000000000000..a0cdce617fbd --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountForecast.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalBillingAccounts", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.0, + "Forecast", + "USD" + ], + [ + 30.2572751438, + "Forecast", + "USD" + ], + [ + 0.076757602000000022, + "Forecast", + "USD" + ], + [ + 50.430964190400012, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsDimensions.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsDimensions.json new file mode 100644 index 000000000000..ddd647c84449 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsDimensions.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalBillingAccounts" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceType_2019-12-01_2019-12-31", + "name": "dimensions_ResourceType_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceType", + "description": "Resource type", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/dimensions_ResourceId_2019-12-01_2019-12-31", + "name": "dimensions_ResourceId_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceId", + "description": "Resource ID", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsQuery.json new file mode 100644 index 000000000000..4adef8f634a5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalBillingAccountsQuery.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalBillingAccounts", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ServiceName", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 0.0, + "abc db", + "USD" + ], + [ + 30.2572751438, + "abc compute cloud", + "USD" + ], + [ + 0.076757602000000022, + "abc file system", + "USD" + ], + [ + 50.430964190400012, + "abc elasticache", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionAlerts.json new file mode 100644 index 000000000000..fe966bbe5f8e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionAlerts.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalSubscriptions" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionForecast.json new file mode 100644 index 000000000000..b51574eff95c --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionForecast.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalSubscriptions", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/query/d99477af-7510-40ee-aca2-e59bdca0d10d", + "name": "d99477af-7510-40ee-aca2-e59bdca0d10d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsDimensions.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsDimensions.json new file mode 100644 index 000000000000..9d2ced25be35 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsDimensions.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalSubscriptions" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceType_2019-12-01_2019-12-31", + "name": "dimensions_ResourceType_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceType", + "description": "Resource type", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + }, + { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/123/dimensions_ResourceId_2019-12-01_2019-12-31", + "name": "dimensions_ResourceId_2019-12-01_2019-12-31", + "type": "microsoft.consumption/dimensions", + "properties": { + "data": [], + "total": 0, + "category": "ResourceId", + "description": "Resource ID", + "usageStart": "2019-12-01T00:00:00Z", + "usageEnd": "2019-12-31T00:00:00Z", + "filterEnabled": true, + "groupingEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsQuery.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsQuery.json new file mode 100644 index 000000000000..60195a11db3f --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ExternalSubscriptionsQuery.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "externalCloudProviderId": "100", + "externalCloudProviderType": "externalSubscriptions", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/query/d99477af-7510-40ee-aca2-e59bdca0d10d", + "name": "d99477af-7510-40ee-aca2-e59bdca0d10d", + "type": "Microsoft.CostManagement/query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionAlerts.json new file mode 100644 index 000000000000..deaecbf35558 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionAlerts.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionForecast.json new file mode 100644 index 000000000000..c054d20479f2 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/InvoiceSectionForecast.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "billingAccountId": "12345:6789", + "billingProfileId": "13579", + "invoiceSectionId": "9876", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/query/ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "name": "ad67fd91-c131-4bda-9ba9-7187ecb1cebd", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/12345:6789/billingProfiles/13579/invoiceSections/9876/providers/Microsoft.CostManagement/Forecast?api-version=2019-10-01&$skiptoken=AQAAAA%3D%3D", + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "JapanUnifia-Trial", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "RVIIOT-TRIAL", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "VSTSHOL-1595322048000", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "gs-stms-dev", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateView.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateView.json new file mode 100644 index 000000000000..7e2e12355b65 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateView.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "viewName": "swaggerExample" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "scope": "", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewCreateOrUpdate.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewCreateOrUpdate.json new file mode 100644 index 000000000000..d18aabd205b7 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewCreateOrUpdate.json @@ -0,0 +1,185 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "viewName": "swaggerExample", + "parameters": { + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example", + "scope": "", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + }, + "200": { + "body": { + "id": "/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example", + "scope": "", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewDelete.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewDelete.json new file mode 100644 index 000000000000..72622894ca84 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewDelete.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "viewName": "TestView" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewList.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewList.json new file mode 100644 index 000000000000..fa4fa0e07de5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/PrivateViewList.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "scope": "", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + }, + { + "id": "/providers/Microsoft.CostManagement/views/swaggerExample2", + "name": "swaggerExample2", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example 2", + "scope": "", + "query": { + "type": "Usage", + "timeframe": "LastMonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "GroupedColumn", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupAlerts.json new file mode 100644 index 000000000000..2db6d3dd5bf8 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupAlerts.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupForecast.json new file mode 100644 index 000000000000..e457e0fa7ba5 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ResourceGroupForecast.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "ScreenSharingTest-peer", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ScreenSharingTest-peer/providers/Microsoft.CostManagement/query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180331, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionAlerts.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionAlerts.json new file mode 100644 index 000000000000..0880df01a3b4 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionAlerts.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/alerts/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "00000000-0000-0000-0000-000000000000_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 161000.12, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2020-04-27T11:07:52.7143901Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2020-04-28T11:06:02.8999373Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/alerts/11111111-1111-1111-111111111111", + "name": "11111111-1111-1111-111111111111", + "type": "Microsoft.CostManagement/alerts", + "properties": { + "definition": { + "type": "Budget", + "category": "Cost", + "criteria": "CostThresholdExceeded" + }, + "description": "", + "source": "Preset", + "details": { + "timeGrainType": "Quarterly", + "periodStartDate": "2020-03-01T00:00:00Z", + "triggeredBy": "11111111-1111-1111-111111111111_1_01", + "resourceGroupFilter": [], + "resourceFilter": [], + "meterFilter": [], + "tagFilter": {}, + "threshold": 0.8, + "operator": "GreaterThan", + "amount": 200000.0, + "unit": "USD", + "currentSpend": 171000.32, + "contactEmails": [ + "1234@contoso.com" + ], + "contactGroups": [], + "contactRoles": [], + "overridingAlert": null + }, + "costEntityId": "budget1", + "status": "Active", + "creationTime": "2019-06-24T05:51:52.8713179Z", + "closeTime": "0001-01-01T00:00:00", + "modificationTime": "2019-08-31T17:51:55.1808807Z", + "statusModificationUserName": null, + "statusModificationTime": "0001-01-01T00:00:00" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionForecast.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionForecast.json new file mode 100644 index 000000000000..0de345ec054e --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/SubscriptionForecast.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "filter": { + "and": [ + { + "or": [ + { + "dimension": { + "name": "ResourceLocation", + "operator": "In", + "values": [ + "East US", + "West Europe" + ] + } + }, + { + "tag": { + "name": "Environment", + "operator": "In", + "values": [ + "UAT", + "Prod" + ] + } + } + ] + }, + { + "dimension": { + "name": "ResourceGroup", + "operator": "In", + "values": [ + "API" + ] + } + } + ] + } + }, + "includeActualCost": false, + "includeFreshPartialCost": false + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/query/00000000-0000-0000-0000-000000000000", + "name": "55312978-ba1b-415c-9304-cfd9c43c0481", + "type": "microsoft.costmanagement/Query", + "properties": { + "nextLink": null, + "columns": [ + { + "name": "PreTaxCost", + "type": "Number" + }, + { + "name": "ResourceGroup", + "type": "String" + }, + { + "name": "UsageDate", + "type": "Number" + }, + { + "name": "CostStatus", + "type": "String" + }, + { + "name": "Currency", + "type": "String" + } + ], + "rows": [ + [ + 2.10333307059661, + "ScreenSharingTest-peer", + 20180331, + "Forecast", + "USD" + ], + [ + 218.68795741935486, + "Ict_StratAndPlan_GoldSprova_Prod", + 20180331, + "Forecast", + "USD" + ], + [ + 0.14384913581657052, + "ssbciotelement01", + 20180401, + "Forecast", + "USD" + ], + [ + 0.009865586851323632, + "ict_stratandplan_goldsprova_prod", + 20180429, + "Forecast", + "USD" + ] + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewByResourceGroup.json new file mode 100644 index 000000000000..80edf823d58b --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewByResourceGroup.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "viewName": "swaggerExample", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewCreateOrUpdateByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewCreateOrUpdateByResourceGroup.json new file mode 100644 index 000000000000..d71bbe14baba --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewCreateOrUpdateByResourceGroup.json @@ -0,0 +1,186 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "viewName": "swaggerExample", + "parameters": { + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewDeleteByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewDeleteByResourceGroup.json new file mode 100644 index 000000000000..b68bcb4e0201 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewDeleteByResourceGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "viewName": "TestView" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewListByResourceGroup.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewListByResourceGroup.json new file mode 100644 index 000000000000..efbfa5040ac6 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2019-11-01/examples/ViewListByResourceGroup.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/views/swaggerExample", + "name": "swaggerExample", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ff9fe66f1d10\"", + "properties": { + "displayName": "swagger Example", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "query": { + "type": "Usage", + "timeframe": "MonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "Table", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.CostManagement/views/swaggerExample2", + "name": "swaggerExample2", + "type": "Microsoft.CostManagement/Views", + "eTag": "\"1d4ffa5a9c2430c\"", + "properties": { + "displayName": "swagger Example 2", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG", + "query": { + "type": "Usage", + "timeframe": "LastMonthToDate", + "dataset": { + "granularity": "Daily", + "aggregation": { + "totalCost": { + "name": "PreTaxCost", + "function": "Sum" + } + }, + "grouping": [], + "sorting": [ + { + "direction": "Ascending", + "name": "UsageDate" + } + ] + } + }, + "chart": "GroupedColumn", + "accumulated": "true", + "metric": "ActualCost", + "kpis": [ + { + "type": "Forecast", + "id": null, + "enabled": true + }, + { + "type": "Budget", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/swaggerDemo", + "enabled": true + } + ], + "pivots": [ + { + "type": "Dimension", + "name": "ServiceName" + }, + { + "type": "Dimension", + "name": "MeterCategory" + }, + { + "type": "TagKey", + "name": "swaggerTagKey" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cost-management/resource-manager/readme.az.md b/specification/cost-management/resource-manager/readme.az.md new file mode 100644 index 000000000000..16d31b9cefe8 --- /dev/null +++ b/specification/cost-management/resource-manager/readme.az.md @@ -0,0 +1,13 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: costmanagement + namespace: azure.mgmt.costmanagement + package-name: azure-mgmt-costmanagement +az-output-folder: $(azure-cli-extension-folder)/src/costmanagement +python-sdk-output-folder: "$(az-output-folder)/azext_costmanagement/vendored_sdks/costmanagement" + +``` diff --git a/specification/cost-management/resource-manager/readme.cli.md b/specification/cost-management/resource-manager/readme.cli.md new file mode 100644 index 000000000000..986dcf24c83b --- /dev/null +++ b/specification/cost-management/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI \ No newline at end of file diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index 4f67bba4f0e2..12dadfcd7709 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -27,7 +27,7 @@ These are the global settings for the Cost Management API. ``` yaml openapi-type: arm tag: package-2019-11 -azure-validator: true +azure-validator: false ``` --- @@ -190,6 +190,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_costmanagement'] + - repo: azure-cli-extensions ``` ## C# @@ -206,35 +207,6 @@ csharp: clear-output-folder: true ``` -## Python - -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - -``` yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.costmanagement - package-name: azure-mgmt-costmanagement - package-version: 1.2.0 - clear-output-folder: true -``` - -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/costmanagement/azure-mgmt-costmanagement/azure/mgmt/costmanagement -``` - -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/costmanagement/azure-mgmt-costmanagement -``` ## Go @@ -262,6 +234,7 @@ batch: - tag: package-2018-08-preview - tag: package-2019-01 - tag: package-2019-09 + - tag: package-2019-11 ``` ### Tag: package-2018-05 and java @@ -329,6 +302,19 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2019-11 and java + +These settings apply only when `--tag=package-2019-11 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-11' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.costmanagement.v2019_11_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/costmanagement/mgmt-v2019_11_01 +regenerate-manager: true +generate-interface: true +``` + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. diff --git a/specification/cost-management/resource-manager/readme.python.md b/specification/cost-management/resource-manager/readme.python.md new file mode 100644 index 000000000000..e813c023f2cb --- /dev/null +++ b/specification/cost-management/resource-manager/readme.python.md @@ -0,0 +1,29 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.costmanagement + package-name: azure-mgmt-costmanagement + package-version: 1.2.0 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/costmanagement/azure-mgmt-costmanagement/azure/mgmt/costmanagement +``` + +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/costmanagement/azure-mgmt-costmanagement +``` \ No newline at end of file diff --git a/specification/customerlockbox/resource-manager/readme.python.md b/specification/customerlockbox/resource-manager/readme.python.md index adc394696835..a3235c8c21ce 100644 --- a/specification/customerlockbox/resource-manager/readme.python.md +++ b/specification/customerlockbox/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.CustomerLockbox - package-name: customerlockbox + namespace: azure.mgmt.customerlockbox + package-name: azure-mgmt-customerlockbox package-version: 2018-02-28-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/customerlockbox + output-folder: $(python-sdks-folder)/customerlockbox/azure-mgmt-customerlockbox/azure/mgmt/customerlockbox ``` diff --git a/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json b/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json index ee3f05f5b736..ba648e85694b 100644 --- a/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json +++ b/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json @@ -5,7 +5,7 @@ "title": "customproviders", "description": "Allows extension of ARM control plane with custom resource providers.", "x-ms-code-generation-settings": { - "name": "customprovidersClient" + "name": "CustomProvidersClient" } }, "host": "management.azure.com", diff --git a/specification/customproviders/resource-manager/readme.az.md b/specification/customproviders/resource-manager/readme.az.md new file mode 100644 index 000000000000..4d7169eea75d --- /dev/null +++ b/specification/customproviders/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: customproviders + namespace: azure.mgmt.customproviders + package-name: azure-mgmt-customproviders +az-output-folder: $(azure-cli-extension-folder)/src/customproviders +python-sdk-output-folder: "$(az-output-folder)/azext_customproviders/vendored_sdks/customproviders" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/customproviders/resource-manager/readme.cli.md b/specification/customproviders/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/customproviders/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/customproviders/resource-manager/readme.md b/specification/customproviders/resource-manager/readme.md index 8b3656a01526..27afdefab93c 100644 --- a/specification/customproviders/resource-manager/readme.md +++ b/specification/customproviders/resource-manager/readme.md @@ -53,11 +53,13 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java - repo: azure-sdk-for-go + - repo: azure-sdk-for-trenton - repo: azure-sdk-for-node - repo: azure-sdk-for-js - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_customproviders'] + - repo: azure-cli-extensions ``` ## Go @@ -84,6 +86,10 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.nodejs.md](./readme.nodejs.md) +## Trenton + +See configuration in [readme.trenton.md](./readme.trenton.md) + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -108,3 +114,32 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## cli + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: customproviders + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.customproviders + package-name: azure-mgmt-customproviders + clear-output-folder: false +``` + +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli_name: customproviders + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: azure.mgmt.customproviders + package_name: azure-mgmt-customproviders + clear_output_folder: false +``` diff --git a/specification/customproviders/resource-manager/readme.python.md b/specification/customproviders/resource-manager/readme.python.md index 6a57ff8a0e0b..4e1e85b9ba52 100644 --- a/specification/customproviders/resource-manager/readme.python.md +++ b/specification/customproviders/resource-manager/readme.python.md @@ -4,18 +4,24 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. ```yaml $(python) +python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.CustomProviders - package-name: customproviders + namespace: azure.mgmt.customproviders + package-name: azure-mgmt-customproviders package-version: 2018-09-01-preview clear-output-folder: true ``` -```yaml $(python) +```yaml $(python) && $(python-mode) == 'create' python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/customproviders + basic-setup-py: true + output-folder: $(python-sdks-folder)/customproviders/azure-mgmt-customproviders ``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/customproviders/azure-mgmt-customproviders/azure/mgmt/customproviders +``` \ No newline at end of file diff --git a/specification/customproviders/resource-manager/readme.trenton.md b/specification/customproviders/resource-manager/readme.trenton.md new file mode 100644 index 000000000000..9e3698eb29ab --- /dev/null +++ b/specification/customproviders/resource-manager/readme.trenton.md @@ -0,0 +1,19 @@ +## Trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli_name: customproviders + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: azure.mgmt.customproviders + package_name: azure-mgmt-customproviders + clear_output_folder: false +overrides: + - where: + property: resourceProviderName + set: + - IdPortion: "resourceproviders" +``` diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json index c49f40778e4d..bfe9d701e740 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json @@ -5,27 +5,45 @@ "title": "DataBoxEdgeManagementClient" }, "host": "management.azure.com", - "schemes": [ "https" ], - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "paths": { "/providers/Microsoft.DataBoxEdge/operations": { "get": { - "tags": [ "Operations" ], + "tags": [ + "Operations" + ], "summary": "List all the supported operations.", "operationId": "Operations_List", - "parameters": [ { "$ref": "#/parameters/apiVersionParameter" } ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], "responses": { "200": { "description": "List of supported operations.", - "schema": { "$ref": "#/definitions/OperationsList" } + "schema": { + "$ref": "#/definitions/OperationsList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "OperationsGet": { "$ref": "./examples/OperationsGet.json" @@ -35,12 +53,18 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets all the Data Box Edge/Data Box Gateway devices in a subscription.", "operationId": "Devices_ListBySubscription", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$expand", "in": "query", @@ -52,14 +76,20 @@ "responses": { "200": { "description": "The collection of Data Box Edge/Data Box Gateway devices.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "DataBoxEdgeDeviceGetBySubscription": { "$ref": "./examples/DataBoxEdgeDeviceGetBySubscription.json" @@ -69,13 +99,21 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets all the Data Box Edge/Data Box Gateway devices in a resource group.", "operationId": "Devices_ListByResourceGroup", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$expand", "in": "query", @@ -87,14 +125,20 @@ "responses": { "200": { "description": "The collection of Data Box Edge/Data Box Gateway devices.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "DataBoxEdgeDeviceGetByResourceGroup": { "$ref": "./examples/DataBoxEdgeDeviceGetByResourceGroup.json" @@ -104,7 +148,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets the properties of the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_Get", "parameters": [ @@ -115,18 +161,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The Data Box Edge/Data Box Gateway device.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -136,7 +192,9 @@ } }, "put": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Creates or updates a Data Box Edge/Data Box Gateway resource.", "operationId": "Devices_CreateOrUpdate", "parameters": [ @@ -152,20 +210,32 @@ "in": "body", "description": "The resource object.", "required": true, - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the resource.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -176,7 +246,9 @@ } }, "delete": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Deletes the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_Delete", "parameters": [ @@ -187,17 +259,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the resource." }, - "202": { "description": "Accepted the request to delete the resource." }, - "204": { "description": "The resource is already deleted." }, + "200": { + "description": "Successfully deleted the resource." + }, + "202": { + "description": "Accepted the request to delete the resource." + }, + "204": { + "description": "The resource is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -208,7 +294,9 @@ } }, "patch": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Modifies a Data Box Edge/Data Box Gateway resource.", "operationId": "Devices_Update", "parameters": [ @@ -224,20 +312,32 @@ "in": "body", "description": "The resource parameters.", "required": true, - "schema": { "$ref": "#/definitions/DataBoxEdgeDevicePatch" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevicePatch" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully updated the resource.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -249,7 +349,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts": { "get": { - "tags": [ "Alerts" ], + "tags": [ + "Alerts" + ], "description": "Gets all the alerts for a Data Box Edge/Data Box Gateway device.", "operationId": "Alerts_ListByDataBoxEdgeDevice", "parameters": [ @@ -260,21 +362,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of alerts.", - "schema": { "$ref": "#/definitions/AlertList" } + "schema": { + "$ref": "#/definitions/AlertList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "AlertGetAllInDevice": { "$ref": "./examples/AlertGetAllInDevice.json" @@ -284,7 +398,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts/{name}": { "get": { - "tags": [ "Alerts" ], + "tags": [ + "Alerts" + ], "summary": "Gets an alert by name.", "operationId": "Alerts_Get", "parameters": [ @@ -302,18 +418,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The alert details.", - "schema": { "$ref": "#/definitions/Alert" } + "schema": { + "$ref": "#/definitions/Alert" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -325,7 +451,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules": { "get": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Gets all the bandwidth schedules for a Data Box Edge/Data Box Gateway device.", "operationId": "BandwidthSchedules_ListByDataBoxEdgeDevice", "parameters": [ @@ -336,21 +464,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of bandwidth schedules.", - "schema": { "$ref": "#/definitions/BandwidthSchedulesList" } + "schema": { + "$ref": "#/definitions/BandwidthSchedulesList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "BandwidthScheduleGetAllInDevice": { "$ref": "./examples/BandwidthScheduleGetAllInDevice.json" @@ -360,7 +500,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules/{name}": { "get": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Gets the properties of the specified bandwidth schedule.", "operationId": "BandwidthSchedules_Get", "parameters": [ @@ -378,18 +520,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The bandwidth schedule.", - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -399,7 +551,9 @@ } }, "put": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Creates or updates a bandwidth schedule.", "operationId": "BandwidthSchedules_CreateOrUpdate", "parameters": [ @@ -422,21 +576,35 @@ "in": "body", "description": "The bandwidth schedule to be added or updated.", "required": true, - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the bandwidth schedule.", - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + "202": { + "description": "Accepted the request to create or update the bandwidth schedule." }, - "202": { "description": "Accepted the request to create or update the bandwidth schedule." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -447,7 +615,9 @@ } }, "delete": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Deletes the specified bandwidth schedule.", "operationId": "BandwidthSchedules_Delete", "parameters": [ @@ -465,17 +635,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the bandwidth schedule." }, - "202": { "description": "Accepted the request to delete the bandwidth schedule." }, - "204": { "description": "Successfully deleted the bandwidth schedule." }, + "200": { + "description": "Successfully deleted the bandwidth schedule." + }, + "202": { + "description": "Accepted the request to delete the bandwidth schedule." + }, + "204": { + "description": "Successfully deleted the bandwidth schedule." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -488,7 +672,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/downloadUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Downloads the updates on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_DownloadUpdates", "parameters": [ @@ -499,16 +685,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully downloaded the updates on the device." }, - "202": { "description": "Accepted the request to download the updates on the device." }, + "200": { + "description": "Successfully downloaded the updates on the device." + }, + "202": { + "description": "Accepted the request to download the updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -521,7 +719,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/getExtendedInformation": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets additional information for the specified Data Box Edge/Data Box Gateway device.", "operationId": "Devices_GetExtendedInformation", "parameters": [ @@ -532,18 +732,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The additional information.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -555,7 +765,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/installUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Installs the updates on the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_InstallUpdates", "parameters": [ @@ -566,16 +778,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully installed updates on the device." }, - "202": { "description": "Accepted the request to install updates on the device." }, + "200": { + "description": "Successfully installed updates on the device." + }, + "202": { + "description": "Accepted the request to install updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -588,7 +812,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/jobs/{name}": { "get": { - "tags": [ "Jobs" ], + "tags": [ + "Jobs" + ], "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", "operationId": "Jobs_Get", "parameters": [ @@ -606,18 +832,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The job details.", - "schema": { "$ref": "#/definitions/Job" } + "schema": { + "$ref": "#/definitions/Job" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -629,7 +865,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/networkSettings/default": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets the network settings of the specified Data Box Edge/Data Box Gateway device.", "operationId": "Devices_GetNetworkSettings", "parameters": [ @@ -640,18 +878,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The device network settings.", - "schema": { "$ref": "#/definitions/NetworkSettings" } + "schema": { + "$ref": "#/definitions/NetworkSettings" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -663,7 +911,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/nodes": { "get": { - "tags": [ "Nodes" ], + "tags": [ + "Nodes" + ], "description": "Gets all the nodes currently configured under this Data Box Edge device", "operationId": "Nodes_ListByDataBoxEdgeDevice", "parameters": [ @@ -674,21 +924,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all nodes on the device.", - "schema": { "$ref": "#/definitions/NodeList" } + "schema": { + "$ref": "#/definitions/NodeList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": null }, + "x-ms-pageable": { + "nextLinkName": null + }, "x-ms-examples": { "NodesGetAllInDevice": { "$ref": "./examples/NodeGetAllInDevice.json" @@ -698,7 +960,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/operationsStatus/{name}": { "get": { - "tags": [ "OperationsStatus" ], + "tags": [ + "OperationsStatus" + ], "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", "operationId": "OperationsStatus_Get", "parameters": [ @@ -716,18 +980,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The job details.", - "schema": { "$ref": "#/definitions/Job" } + "schema": { + "$ref": "#/definitions/Job" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -739,7 +1013,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders": { "get": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Lists all the orders related to a Data Box Edge/Data Box Gateway device.", "operationId": "Orders_ListByDataBoxEdgeDevice", "parameters": [ @@ -750,21 +1026,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Lists all the orders for the Data Box Edge Device", - "schema": { "$ref": "#/definitions/OrderList" } + "schema": { + "$ref": "#/definitions/OrderList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "OrderGetAllInDevice": { "$ref": "./examples/OrderGetAllInDevice.json" @@ -774,7 +1062,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default": { "get": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Gets a specific order by name.", "operationId": "Orders_Get", "parameters": [ @@ -785,18 +1075,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The order details of a device.", - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -806,7 +1106,9 @@ } }, "put": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Creates or updates an order.", "operationId": "Orders_CreateOrUpdate", "parameters": [ @@ -822,21 +1124,35 @@ "in": "body", "description": "The order to be created or updated.", "required": true, - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the order.", - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } + }, + "202": { + "description": "Accepted the request to create or update the order." }, - "202": { "description": "Accepted the request to create or update the order." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -847,7 +1163,9 @@ } }, "delete": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Deletes the order related to the device.", "operationId": "Orders_Delete", "parameters": [ @@ -858,17 +1176,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the order." }, - "202": { "description": "Accepted the request to delete the order." }, - "204": { "description": "The order is already deleted." }, + "200": { + "description": "Successfully deleted the order." + }, + "202": { + "description": "Accepted the request to delete the order." + }, + "204": { + "description": "The order is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -881,7 +1213,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles": { "get": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Lists all the roles configured in a Data Box Edge/Data Box Gateway device.", "operationId": "Roles_ListByDataBoxEdgeDevice", "parameters": [ @@ -892,21 +1226,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "List of all the roles configured in the device.", - "schema": { "$ref": "#/definitions/RoleList" } + "schema": { + "$ref": "#/definitions/RoleList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "RoleGetAllInDevice": { "$ref": "./examples/RoleGetAllInDevice.json" @@ -916,7 +1262,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{name}": { "get": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Gets a specific role by name.", "operationId": "Roles_Get", "parameters": [ @@ -934,18 +1282,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The role with the specified name in the given device.", - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -955,7 +1313,9 @@ } }, "put": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Create or update a role.", "operationId": "Roles_CreateOrUpdate", "parameters": [ @@ -978,21 +1338,35 @@ "in": "body", "description": "The role properties.", "required": true, - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the role.", - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } + }, + "202": { + "description": "Accepted the request to create or update the role." }, - "202": { "description": "Accepted the request to create or update the role." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1003,7 +1377,9 @@ } }, "delete": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Deletes the role on the device.", "operationId": "Roles_Delete", "parameters": [ @@ -1021,17 +1397,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the role." }, - "202": { "description": "Accepted the request to delete the role." }, - "204": { "description": "The role is already deleted." }, + "200": { + "description": "Successfully deleted the role." + }, + "202": { + "description": "Accepted the request to delete the role." + }, + "204": { + "description": "The role is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1044,7 +1434,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/scanForUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Scans for updates on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_ScanForUpdates", "parameters": [ @@ -1055,16 +1447,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully scanned the device for updates." }, - "202": { "description": "Accepted the request to scan for updates on the device." }, + "200": { + "description": "Successfully scanned the device for updates." + }, + "202": { + "description": "Accepted the request to scan for updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1077,7 +1481,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/securitySettings/default/update": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Updates the security settings on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_CreateOrUpdateSecuritySettings", "parameters": [ @@ -1093,18 +1499,32 @@ "in": "body", "description": "The security settings.", "required": true, - "schema": { "$ref": "#/definitions/SecuritySettings" } + "schema": { + "$ref": "#/definitions/SecuritySettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to update the security settings." }, - "204": { "description": "Updated the security settings." }, + "202": { + "description": "Accepted the request to update the security settings." + }, + "204": { + "description": "Updated the security settings." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1117,7 +1537,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares": { "get": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Lists all the shares in a Data Box Edge/Data Box Gateway device.", "operationId": "Shares_ListByDataBoxEdgeDevice", "parameters": [ @@ -1128,21 +1550,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the shares on the device.", - "schema": { "$ref": "#/definitions/ShareList" } + "schema": { + "$ref": "#/definitions/ShareList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "ShareGetAllInDevice": { "$ref": "./examples/ShareGetAllInDevice.json" @@ -1152,7 +1586,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}": { "get": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Gets a share by name.", "operationId": "Shares_Get", "parameters": [ @@ -1170,18 +1606,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The share details.", - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1191,7 +1637,9 @@ } }, "put": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Creates a new share or updates an existing share on the device.", "operationId": "Shares_CreateOrUpdate", "parameters": [ @@ -1214,21 +1662,35 @@ "in": "body", "description": "The share properties.", "required": true, - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the share.", - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } + }, + "202": { + "description": "Accepted the request to create or update the share." }, - "202": { "description": "Accepted the request to create or update the share." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1239,7 +1701,9 @@ } }, "delete": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "description": "Deletes the share on the Data Box Edge/Data Box Gateway device.", "operationId": "Shares_Delete", "parameters": [ @@ -1257,17 +1721,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the share." }, - "202": { "description": "Accepted the request to delete the share." }, - "204": { "description": "The share is already deleted." }, + "200": { + "description": "Successfully deleted the share." + }, + "202": { + "description": "Accepted the request to delete the share." + }, + "204": { + "description": "The share is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1280,7 +1758,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}/refresh": { "post": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Refreshes the share metadata with the data from the cloud.", "operationId": "Shares_Refresh", "parameters": [ @@ -1298,16 +1778,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully refreshed the share on the device." }, - "202": { "description": "Accepted the request to refresh the share on the device." }, + "200": { + "description": "Successfully refreshed the share on the device." + }, + "202": { + "description": "Accepted the request to refresh the share on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1320,7 +1812,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials": { "get": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "summary": "Gets all the storage account credentials in a Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccountCredentials_ListByDataBoxEdgeDevice", "parameters": [ @@ -1331,21 +1825,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of storage account credentials.", - "schema": { "$ref": "#/definitions/StorageAccountCredentialList" } + "schema": { + "$ref": "#/definitions/StorageAccountCredentialList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "SACGetAllInDevice": { "$ref": "./examples/SACGetAllInDevice.json" @@ -1355,7 +1861,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials/{name}": { "get": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Gets the properties of the specified storage account credential.", "operationId": "StorageAccountCredentials_Get", "parameters": [ @@ -1373,18 +1881,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The storage account credential properties.", - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1394,7 +1912,9 @@ } }, "put": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Creates or updates the storage account credential.", "operationId": "StorageAccountCredentials_CreateOrUpdate", "parameters": [ @@ -1417,21 +1937,35 @@ "in": "body", "description": "The storage account credential.", "required": true, - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the storage account credential.", - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + "202": { + "description": "Accepted the request to create or update the storage account credential." }, - "202": { "description": "Accepted the request to create or update the storage account credential." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1442,7 +1976,9 @@ } }, "delete": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Deletes the storage account credential.", "operationId": "StorageAccountCredentials_Delete", "parameters": [ @@ -1460,17 +1996,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the storage account credential." }, - "202": { "description": "Accepted the request to delete the storage account credential." }, - "204": { "description": "The storage account credential is already deleted." }, + "200": { + "description": "Successfully deleted the storage account credential." + }, + "202": { + "description": "Accepted the request to delete the storage account credential." + }, + "204": { + "description": "The storage account credential is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1483,7 +2033,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts": { "get": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Lists all the storage accounts in a Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccounts_ListByDataBoxEdgeDevice", "parameters": [ @@ -1494,21 +2046,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the StorageAccounts on the device.", - "schema": { "$ref": "#/definitions/StorageAccountList" } + "schema": { + "$ref": "#/definitions/StorageAccountList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "StorageAccountGetAllInDevice": { "$ref": "./examples/StorageAccountGetAllInDevice.json" @@ -1518,7 +2082,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}": { "get": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Gets a StorageAccount by name.", "operationId": "StorageAccounts_Get", "parameters": [ @@ -1536,18 +2102,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The storage account details.", - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1557,7 +2133,9 @@ } }, "put": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Creates a new StorageAccount or updates an existing StorageAccount on the device.", "operationId": "StorageAccounts_CreateOrUpdate", "parameters": [ @@ -1580,21 +2158,35 @@ "in": "body", "description": "The StorageAccount properties.", "required": true, - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the StorageAccount.", - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "202": { + "description": "Accepted the request to create or update the StorageAccount." }, - "202": { "description": "Accepted the request to create or update the StorageAccount." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1605,7 +2197,9 @@ } }, "delete": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "description": "Deletes the StorageAccount on the Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccounts_Delete", "parameters": [ @@ -1623,16 +2217,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to delete the StorageAccount." }, - "204": { "description": "The StorageAccount is already deleted." }, + "202": { + "description": "Accepted the request to delete the StorageAccount." + }, + "204": { + "description": "The StorageAccount is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1645,7 +2251,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers": { "get": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Lists all the containers of a storage Account in a Data Box Edge/Data Box Gateway device.", "operationId": "Containers_ListByStorageAccount", "parameters": [ @@ -1663,21 +2271,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the containers on the device.", - "schema": { "$ref": "#/definitions/ContainerList" } + "schema": { + "$ref": "#/definitions/ContainerList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "ContainerListAllInDevice": { "$ref": "./examples/ContainerListAllInDevice.json" @@ -1687,7 +2307,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}": { "get": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Gets a container by name.", "operationId": "Containers_Get", "parameters": [ @@ -1712,18 +2334,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The container details.", - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1733,7 +2365,9 @@ } }, "put": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Creates a new container or updates an existing container on the device.", "operationId": "Containers_CreateOrUpdate", "parameters": [ @@ -1763,21 +2397,35 @@ "in": "body", "description": "The container properties.", "required": true, - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the container.", - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } + }, + "202": { + "description": "Accepted the request to create or update the container." }, - "202": { "description": "Accepted the request to create or update the container." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1788,7 +2436,9 @@ } }, "delete": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "description": "Deletes the container on the Data Box Edge/Data Box Gateway device.", "operationId": "Containers_Delete", "parameters": [ @@ -1813,16 +2463,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to delete the container." }, - "204": { "description": "The container is already deleted." }, + "202": { + "description": "Accepted the request to delete the container." + }, + "204": { + "description": "The container is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1835,7 +2497,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}/refresh": { "post": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Refreshes the container metadata with the data from the cloud.", "operationId": "Containers_Refresh", "parameters": [ @@ -1860,16 +2524,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully refreshed the container on the device." }, - "202": { "description": "Accepted the request to refresh the container on the device." }, + "200": { + "description": "Successfully refreshed the container on the device." + }, + "202": { + "description": "Accepted the request to refresh the container on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1882,7 +2558,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers": { "get": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Lists all the triggers configured in the device.", "operationId": "Triggers_ListByDataBoxEdgeDevice", "parameters": [ @@ -1893,9 +2571,15 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -1907,14 +2591,20 @@ "responses": { "200": { "description": "List all the triggers configured in the device", - "schema": { "$ref": "#/definitions/TriggerList" } + "schema": { + "$ref": "#/definitions/TriggerList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "TriggerGetAllInDevice": { "$ref": "./examples/TriggerGetAllInDevice.json" @@ -1924,7 +2614,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers/{name}": { "get": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Get a specific trigger by name.", "operationId": "Triggers_Get", "parameters": [ @@ -1942,18 +2634,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The trigger.", - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1963,7 +2665,9 @@ } }, "put": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Creates or updates a trigger.", "operationId": "Triggers_CreateOrUpdate", "parameters": [ @@ -1986,21 +2690,35 @@ "in": "body", "description": "The trigger.", "required": true, - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the trigger.", - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "202": { + "description": "Accepted the request to create or update the trigger." }, - "202": { "description": "Accepted the request to create or update the trigger." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2011,7 +2729,9 @@ } }, "delete": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Deletes the trigger on the gateway device.", "operationId": "Triggers_Delete", "parameters": [ @@ -2029,17 +2749,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the trigger." }, - "202": { "description": "Accepted the request to delete the trigger." }, - "204": { "description": "The trigger is already deleted." }, + "200": { + "description": "Successfully deleted the trigger." + }, + "202": { + "description": "Accepted the request to delete the trigger." + }, + "204": { + "description": "The trigger is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2052,7 +2786,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Gets information about the availability of updates based on the last scan of the device. It also gets information about any ongoing download or install jobs on the device.", "operationId": "Devices_GetUpdateSummary", "parameters": [ @@ -2063,18 +2799,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The update summary.", - "schema": { "$ref": "#/definitions/UpdateSummary" } + "schema": { + "$ref": "#/definitions/UpdateSummary" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2086,7 +2832,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Uploads registration certificate for the device.", "operationId": "Devices_UploadCertificate", "parameters": [ @@ -2102,20 +2850,32 @@ "in": "body", "description": "The upload certificate request.", "required": true, - "schema": { "$ref": "#/definitions/UploadCertificateRequest" } + "schema": { + "$ref": "#/definitions/UploadCertificateRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully uploaded the registration certificate.", - "schema": { "$ref": "#/definitions/UploadCertificateResponse" } + "schema": { + "$ref": "#/definitions/UploadCertificateResponse" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2127,7 +2887,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users": { "get": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Gets all the users registered on a Data Box Edge/Data Box Gateway device.", "operationId": "Users_ListByDataBoxEdgeDevice", "parameters": [ @@ -2138,9 +2900,15 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -2152,14 +2920,20 @@ "responses": { "200": { "description": "The collection of all users on the device.", - "schema": { "$ref": "#/definitions/UserList" } + "schema": { + "$ref": "#/definitions/UserList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "UserGetAllInDevice": { "$ref": "./examples/UserGetAllInDevice.json" @@ -2169,7 +2943,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}": { "get": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Gets the properties of the specified user.", "operationId": "Users_Get", "parameters": [ @@ -2187,18 +2963,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The user details.", - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2208,7 +2994,9 @@ } }, "put": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Creates a new user or updates an existing user's information on a Data Box Edge/Data Box Gateway device.", "operationId": "Users_CreateOrUpdate", "parameters": [ @@ -2231,21 +3019,35 @@ "in": "body", "description": "The user details.", "required": true, - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the user.", - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } + }, + "202": { + "description": "Accepted the request to create or update the user." }, - "202": { "description": "Accepted the request to create or update the user." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2256,7 +3058,9 @@ } }, "delete": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Deletes the user on a databox edge/gateway device.", "operationId": "Users_Delete", "parameters": [ @@ -2274,17 +3078,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the user." }, - "202": { "description": "Accepted the request to delete the user." }, - "204": { "description": "The user is already deleted." }, + "200": { + "description": "Successfully deleted the user." + }, + "202": { + "description": "Accepted the request to delete the user." + }, + "204": { + "description": "The user is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2297,12 +3115,18 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/skus": { "get": { - "tags": [ "Skus" ], + "tags": [ + "Skus" + ], "summary": "List all the available Skus in the region and information related to them", "operationId": "Skus_List", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -2314,14 +3138,20 @@ "responses": { "200": { "description": "Lists the available Skus and information related to them.", - "schema": { "$ref": "#/definitions/SkuInformationList" } + "schema": { + "$ref": "#/definitions/SkuInformationList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": null }, + "x-ms-pageable": { + "nextLinkName": null + }, "x-ms-examples": { "ListSkus": { "$ref": "./examples/ListSkus.json" @@ -2333,7 +3163,13 @@ "definitions": { "Address": { "description": "The shipping address of the customer.", - "required": [ "addressLine1", "postalCode", "city", "state", "country" ], + "required": [ + "addressLine1", + "postalCode", + "city", + "state", + "country" + ], "type": "object", "properties": { "addressLine1": { @@ -2369,7 +3205,11 @@ "Alert": { "description": "Alert on the data box edge/gateway device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/AlertProperties", @@ -2408,7 +3248,9 @@ "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/Alert" }, + "items": { + "$ref": "#/definitions/Alert" + }, "readOnly": true }, "nextLink": { @@ -2445,7 +3287,11 @@ }, "severity": { "description": "Severity of the alert.", - "enum": [ "Informational", "Warning", "Critical" ], + "enum": [ + "Informational", + "Warning", + "Critical" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2461,7 +3307,9 @@ "detailedInformation": { "description": "Alert details.", "type": "object", - "additionalProperties": { "type": "string" }, + "additionalProperties": { + "type": "string" + }, "readOnly": true } } @@ -2490,7 +3338,10 @@ }, "AsymmetricEncryptedSecret": { "description": "Represent the secrets intended for encryption with asymmetric key pair.", - "required": [ "value", "encryptionAlgorithm" ], + "required": [ + "value", + "encryptionAlgorithm" + ], "type": "object", "properties": { "value": { @@ -2503,7 +3354,11 @@ }, "encryptionAlgorithm": { "description": "The algorithm used to encrypt \"Value\".", - "enum": [ "None", "AES256", "RSAES_PKCS1_v_1_5" ], + "enum": [ + "None", + "AES256", + "RSAES_PKCS1_v_1_5" + ], "type": "string", "x-ms-enum": { "name": "EncryptionAlgorithm", @@ -2524,7 +3379,11 @@ }, "AzureContainerInfo": { "description": "Azure container mapping of the endpoint.", - "required": [ "storageAccountCredentialId", "containerName", "dataFormat" ], + "required": [ + "storageAccountCredentialId", + "containerName", + "dataFormat" + ], "type": "object", "properties": { "storageAccountCredentialId": { @@ -2537,7 +3396,11 @@ }, "dataFormat": { "description": "Storage format used for the file represented by the share.", - "enum": [ "BlockBlob", "PageBlob", "AzureFile" ], + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], "type": "string", "x-ms-enum": { "name": "AzureContainerDataFormat", @@ -2548,9 +3411,15 @@ }, "BandwidthSchedule": { "description": "The bandwidth schedule details.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/BandwidthScheduleProperties", @@ -2561,7 +3430,12 @@ }, "BandwidthScheduleProperties": { "description": "The properties of the bandwidth schedule.", - "required": [ "start", "stop", "rateInMbps", "days" ], + "required": [ + "start", + "stop", + "rateInMbps", + "days" + ], "type": "object", "properties": { "start": { @@ -2581,7 +3455,15 @@ "description": "The days of the week when this schedule is applicable.", "type": "array", "items": { - "enum": [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], "type": "string", "x-ms-enum": { "name": "DayOfWeek", @@ -2598,7 +3480,9 @@ "value": { "description": "The list of bandwidth schedules.", "type": "array", - "items": { "$ref": "#/definitions/BandwidthSchedule" }, + "items": { + "$ref": "#/definitions/BandwidthSchedule" + }, "readOnly": true }, "nextLink": { @@ -2610,7 +3494,10 @@ }, "ClientAccessRight": { "description": "The mapping between a particular client IP and the type of access client has on the NFS share.", - "required": [ "client", "accessPermission" ], + "required": [ + "client", + "accessPermission" + ], "type": "object", "properties": { "client": { @@ -2619,7 +3506,11 @@ }, "accessPermission": { "description": "Type of access to be allowed for the client.", - "enum": [ "NoAccess", "ReadOnly", "ReadWrite" ], + "enum": [ + "NoAccess", + "ReadOnly", + "ReadWrite" + ], "type": "string", "x-ms-enum": { "name": "ClientPermissionType", @@ -2652,14 +3543,21 @@ "details": { "description": "A list of additional details about the error.", "type": "array", - "items": { "$ref": "#/definitions/CloudErrorBody" } + "items": { + "$ref": "#/definitions/CloudErrorBody" + } } }, "x-ms-external": true }, "ContactDetails": { "description": "Contains all the contact details of the customer.", - "required": [ "contactPerson", "companyName", "phone", "emailList" ], + "required": [ + "contactPerson", + "companyName", + "phone", + "emailList" + ], "type": "object", "properties": { "contactPerson": { @@ -2677,15 +3575,23 @@ "emailList": { "description": "The email list.", "type": "array", - "items": { "type": "string" } + "items": { + "type": "string" + } } } }, "Container": { "description": "Represents a container on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/ContainerProperties", @@ -2701,7 +3607,9 @@ "value": { "description": "The list of containers.", "type": "array", - "items": { "$ref": "#/definitions/Container" }, + "items": { + "$ref": "#/definitions/Container" + }, "readOnly": true }, "nextLink": { @@ -2713,12 +3621,20 @@ }, "ContainerProperties": { "description": "The container properties.", - "required": [ "dataFormat" ], + "required": [ + "dataFormat" + ], "type": "object", "properties": { "containerStatus": { "description": "Current status of the container.", - "enum": [ "OK", "Offline", "Unknown", "Updating", "NeedsAttention" ], + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2728,7 +3644,11 @@ }, "dataFormat": { "description": "DataFormat for Container", - "enum": [ "BlockBlob", "PageBlob", "AzureFile" ], + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], "type": "string", "x-ms-enum": { "name": "AzureContainerDataFormat", @@ -2750,19 +3670,30 @@ }, "DataBoxEdgeDevice": { "description": "The Data Box Edge/Gateway device.", - "required": [ "location" ], + "required": [ + "location" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "location": { "description": "The location of the device. This is a supported and registered Azure geographical region (for example, West US, East US, or Southeast Asia). The geographical region of a device cannot be changed once it is created, but if an identical geographical region is specified on update, the request will succeed.", "type": "string", - "x-ms-mutability": [ "read", "create" ] + "x-ms-mutability": [ + "read", + "create" + ] }, "tags": { "description": "The list of tags that describe the device. These tags can be used to view and group this device (across resource groups).", "type": "object", - "additionalProperties": { "type": "string" } + "additionalProperties": { + "type": "string" + } }, "sku": { "$ref": "#/definitions/Sku", @@ -2782,7 +3713,11 @@ "DataBoxEdgeDeviceExtendedInfo": { "description": "The extended Info of the Data Box Edge/Gateway device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfoProperties", @@ -2817,7 +3752,9 @@ "value": { "description": "The list of Data Box Edge/Gateway devices.", "type": "array", - "items": { "$ref": "#/definitions/DataBoxEdgeDevice" }, + "items": { + "$ref": "#/definitions/DataBoxEdgeDevice" + }, "readOnly": true }, "nextLink": { @@ -2834,7 +3771,9 @@ "tags": { "description": "The tags attached to the Data Box Edge/Gateway resource.", "type": "object", - "additionalProperties": { "type": "string" } + "additionalProperties": { + "type": "string" + } } } }, @@ -2844,7 +3783,15 @@ "properties": { "dataBoxEdgeDeviceStatus": { "description": "The status of the Data Box Edge/Gateway device.", - "enum": [ "ReadyToSetup", "Online", "Offline", "NeedsAttention", "Disconnected", "PartiallyDisconnected", "Maintenance" ], + "enum": [ + "ReadyToSetup", + "Online", + "Offline", + "NeedsAttention", + "Disconnected", + "PartiallyDisconnected", + "Maintenance" + ], "type": "string", "x-ms-enum": { "name": "DataBoxEdgeDeviceStatus", @@ -2866,7 +3813,9 @@ }, "deviceType": { "description": "The type of the Data Box Edge/Gateway device.", - "enum": [ "DataBoxEdgeDevice" ], + "enum": [ + "DataBoxEdgeDevice" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2913,7 +3862,12 @@ "description": "Type of compute roles configured.", "type": "array", "items": { - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "x-ms-enum": { "name": "RoleTypes", @@ -2932,9 +3886,16 @@ }, "FileEventTrigger": { "description": "Trigger details.", - "required": [ "properties", "kind" ], + "required": [ + "properties", + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], "properties": { "properties": { "$ref": "#/definitions/FileTriggerProperties", @@ -2961,7 +3922,9 @@ }, "FileSourceInfo": { "description": "File source details.", - "required": [ "shareId" ], + "required": [ + "shareId" + ], "type": "object", "properties": { "shareId": { @@ -2972,7 +3935,10 @@ }, "FileTriggerProperties": { "description": "File trigger properties.", - "required": [ "sourceInfo", "sinkInfo" ], + "required": [ + "sourceInfo", + "sinkInfo" + ], "type": "object", "properties": { "sourceInfo": { @@ -2991,7 +3957,10 @@ }, "IoTDeviceInfo": { "description": "Metadata of IoT device/IoT Edge device to be configured.", - "required": [ "deviceId", "ioTHostHub" ], + "required": [ + "deviceId", + "ioTHostHub" + ], "type": "object", "properties": { "deviceId": { @@ -3014,9 +3983,15 @@ }, "IoTRole": { "description": "Compute role.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Role" } ], + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], "properties": { "properties": { "$ref": "#/definitions/IoTRoleProperties", @@ -3043,12 +4018,20 @@ }, "IoTRoleProperties": { "description": "IoT role properties.", - "required": [ "hostPlatform", "ioTDeviceDetails", "ioTEdgeDeviceDetails", "roleStatus" ], + "required": [ + "hostPlatform", + "ioTDeviceDetails", + "ioTEdgeDeviceDetails", + "roleStatus" + ], "type": "object", "properties": { "hostPlatform": { "description": "Host OS supported by the IoT role.", - "enum": [ "Windows", "Linux" ], + "enum": [ + "Windows", + "Linux" + ], "type": "string", "x-ms-enum": { "name": "PlatformType", @@ -3066,11 +4049,16 @@ "shareMappings": { "description": "Mount points of shares in role(s).", "type": "array", - "items": { "$ref": "#/definitions/MountPointMap" } + "items": { + "$ref": "#/definitions/MountPointMap" + } }, "roleStatus": { "description": "Role status.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "RoleStatus", @@ -3143,7 +4131,15 @@ }, "status": { "description": "The current status of the job.", - "enum": [ "Invalid", "Running", "Succeeded", "Failed", "Canceled", "Paused", "Scheduled" ], + "enum": [ + "Invalid", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Paused", + "Scheduled" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3189,7 +4185,9 @@ "errorDetails": { "description": "The error details.", "type": "array", - "items": { "$ref": "#/definitions/JobErrorItem" }, + "items": { + "$ref": "#/definitions/JobErrorItem" + }, "readOnly": true }, "code": { @@ -3211,7 +4209,9 @@ "recommendations": { "description": "The recommended actions.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "code": { @@ -3232,7 +4232,14 @@ "properties": { "jobType": { "description": "The type of the job.", - "enum": [ "Invalid", "ScanForUpdates", "DownloadUpdates", "InstallUpdates", "RefreshShare", "RefreshContainer" ], + "enum": [ + "Invalid", + "ScanForUpdates", + "DownloadUpdates", + "InstallUpdates", + "RefreshShare", + "RefreshContainer" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3242,7 +4249,25 @@ }, "currentStage": { "description": "Current stage of the update operation.", - "enum": [ "Unknown", "Initial", "ScanStarted", "ScanComplete", "ScanFailed", "DownloadStarted", "DownloadComplete", "DownloadFailed", "InstallStarted", "InstallComplete", "InstallFailed", "RebootInitiated", "Success", "Failure", "RescanStarted", "RescanComplete", "RescanFailed" ], + "enum": [ + "Unknown", + "Initial", + "ScanStarted", + "ScanComplete", + "ScanFailed", + "DownloadStarted", + "DownloadComplete", + "DownloadFailed", + "InstallStarted", + "InstallComplete", + "InstallFailed", + "RebootInitiated", + "Success", + "Failure", + "RescanStarted", + "RescanComplete", + "RescanFailed" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3318,7 +4343,16 @@ }, "unit": { "description": "Metric units.", - "enum": [ "NotSpecified", "Percent", "Count", "Seconds", "Milliseconds", "Bytes", "BytesPerSecond", "CountPerSecond" ], + "enum": [ + "NotSpecified", + "Percent", + "Count", + "Seconds", + "Milliseconds", + "Bytes", + "BytesPerSecond", + "CountPerSecond" + ], "type": "string", "x-ms-enum": { "name": "MetricUnit", @@ -3327,7 +4361,15 @@ }, "aggregationType": { "description": "Metric aggregation type.", - "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], "type": "string", "x-ms-enum": { "name": "MetricAggregationType", @@ -3337,7 +4379,9 @@ "dimensions": { "description": "Metric dimensions, other than default dimension which is resource.", "type": "array", - "items": { "$ref": "#/definitions/MetricDimension_V1" } + "items": { + "$ref": "#/definitions/MetricDimension_V1" + } }, "fillGapWithZero": { "description": "Set true to fill the gaps with zero.", @@ -3345,7 +4389,10 @@ }, "category": { "description": "Metric category.", - "enum": [ "Capacity", "Transaction" ], + "enum": [ + "Capacity", + "Transaction" + ], "type": "string", "x-ms-enum": { "name": "MetricCategory", @@ -3360,7 +4407,16 @@ "description": "Support granularity of metrics.", "type": "array", "items": { - "enum": [ "PT1M", "PT5M", "PT15M", "PT30M", "PT1H", "PT6H", "PT12H", "PT1D" ], + "enum": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "PT1D" + ], "type": "string", "x-ms-enum": { "name": "TimeGrain", @@ -3372,7 +4428,15 @@ "description": "Support metric aggregation type.", "type": "array", "items": { - "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], "type": "string", "x-ms-enum": { "name": "MetricAggregationType", @@ -3384,7 +4448,9 @@ }, "MountPointMap": { "description": "The share mount point.", - "required": [ "shareId" ], + "required": [ + "shareId" + ], "type": "object", "properties": { "shareId": { @@ -3403,7 +4469,12 @@ }, "roleType": { "description": "Role type.", - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3461,7 +4532,10 @@ }, "status": { "description": "Value indicating whether this adapter is valid.", - "enum": [ "Inactive", "Active" ], + "enum": [ + "Inactive", + "Active" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3471,7 +4545,10 @@ }, "rdmaStatus": { "description": "Value indicating whether this adapter is RDMA capable.", - "enum": [ "Incapable", "Capable" ], + "enum": [ + "Incapable", + "Capable" + ], "type": "string", "x-ms-enum": { "name": "NetworkAdapterRDMAStatus", @@ -3480,7 +4557,10 @@ }, "dhcpStatus": { "description": "Value indicating whether this adapter has DHCP enabled.", - "enum": [ "Disabled", "Enabled" ], + "enum": [ + "Disabled", + "Enabled" + ], "type": "string", "x-ms-enum": { "name": "NetworkAdapterDHCPStatus", @@ -3505,7 +4585,9 @@ "dnsServers": { "description": "The list of DNS Servers of the device.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } @@ -3516,7 +4598,11 @@ "properties": { "networkGroup": { "description": "The network group.", - "enum": [ "None", "NonRDMA", "RDMA" ], + "enum": [ + "None", + "NonRDMA", + "RDMA" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3535,7 +4621,11 @@ "NetworkSettings": { "description": "The network settings of a device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/NetworkSettingsProperties", @@ -3552,7 +4642,9 @@ "networkAdapters": { "description": "The network adapter list on the device.", "type": "array", - "items": { "$ref": "#/definitions/NetworkAdapter" }, + "items": { + "$ref": "#/definitions/NetworkAdapter" + }, "readOnly": true } } @@ -3560,7 +4652,11 @@ "Node": { "description": "Represents a single node in a Data box Edge/Gateway device\r\nGateway devices, standalone Edge devices and a single node cluster Edge device will all have 1 node\r\nMulti-node Edge devices will have more than 1 nodes", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/NodeProperties", @@ -3577,7 +4673,9 @@ "value": { "description": "The list of Nodes.", "type": "array", - "items": { "$ref": "#/definitions/Node" }, + "items": { + "$ref": "#/definitions/Node" + }, "readOnly": true } } @@ -3588,7 +4686,13 @@ "properties": { "nodeStatus": { "description": "The current status of the individual node", - "enum": [ "Unknown", "Up", "Down", "Rebooting", "ShuttingDown" ], + "enum": [ + "Unknown", + "Up", + "Down", + "Rebooting", + "ShuttingDown" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3685,13 +4789,17 @@ }, "OperationsList": { "description": "The list of operations used for the discovery of available provider operations.", - "required": [ "value" ], + "required": [ + "value" + ], "type": "object", "properties": { "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/Operation" } + "items": { + "$ref": "#/definitions/Operation" + } }, "nextLink": { "description": "Link to the next set of results.", @@ -3702,7 +4810,11 @@ "Order": { "description": "The order details.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/OrderProperties", @@ -3718,7 +4830,9 @@ "value": { "description": "The list of orders.", "type": "array", - "items": { "$ref": "#/definitions/Order" }, + "items": { + "$ref": "#/definitions/Order" + }, "readOnly": true }, "nextLink": { @@ -3730,7 +4844,10 @@ }, "OrderProperties": { "description": "Order properties.", - "required": [ "contactInformation", "shippingAddress" ], + "required": [ + "contactInformation", + "shippingAddress" + ], "type": "object", "properties": { "contactInformation": { @@ -3748,7 +4865,9 @@ "orderHistory": { "description": "List of status changes in the order.", "type": "array", - "items": { "$ref": "#/definitions/OrderStatus" }, + "items": { + "$ref": "#/definitions/OrderStatus" + }, "readOnly": true }, "serialNumber": { @@ -3759,25 +4878,46 @@ "deliveryTrackingInfo": { "description": "Tracking information for the package delivered to the customer whether it has an original or a replacement device.", "type": "array", - "items": { "$ref": "#/definitions/TrackingInfo" }, + "items": { + "$ref": "#/definitions/TrackingInfo" + }, "readOnly": true }, "returnTrackingInfo": { "description": "Tracking information for the package returned from the customer whether it has an original or a replacement device.", "type": "array", - "items": { "$ref": "#/definitions/TrackingInfo" }, + "items": { + "$ref": "#/definitions/TrackingInfo" + }, "readOnly": true } } }, "OrderStatus": { "description": "Represents a single status change.", - "required": [ "status" ], + "required": [ + "status" + ], "type": "object", "properties": { "status": { "description": "Status of the order as per the allowed status types.", - "enum": [ "Untracked", "AwaitingFulfilment", "AwaitingPreparation", "AwaitingShipment", "Shipped", "Arriving", "Delivered", "ReplacementRequested", "LostDevice", "Declined", "ReturnInitiated", "AwaitingReturnShipment", "ShippedBack", "CollectedAtMicrosoft" ], + "enum": [ + "Untracked", + "AwaitingFulfilment", + "AwaitingPreparation", + "AwaitingShipment", + "Shipped", + "Arriving", + "Delivered", + "ReplacementRequested", + "LostDevice", + "Declined", + "ReturnInitiated", + "AwaitingReturnShipment", + "ShippedBack", + "CollectedAtMicrosoft" + ], "type": "string", "x-ms-enum": { "name": "OrderState", @@ -3797,16 +4937,25 @@ "additionalOrderDetails": { "description": "Dictionary to hold generic information which is not stored\r\nby the already existing properties", "type": "object", - "additionalProperties": { "type": "string" }, + "additionalProperties": { + "type": "string" + }, "readOnly": true } } }, "PeriodicTimerEventTrigger": { "description": "Trigger details.", - "required": [ "properties", "kind" ], + "required": [ + "properties", + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], "properties": { "properties": { "$ref": "#/definitions/PeriodicTimerProperties", @@ -3833,7 +4982,10 @@ }, "PeriodicTimerProperties": { "description": "Periodic timer trigger properties.", - "required": [ "sourceInfo", "sinkInfo" ], + "required": [ + "sourceInfo", + "sinkInfo" + ], "type": "object", "properties": { "sourceInfo": { @@ -3852,7 +5004,10 @@ }, "PeriodicTimerSourceInfo": { "description": "Periodic timer event source.", - "required": [ "startTime", "schedule" ], + "required": [ + "startTime", + "schedule" + ], "type": "object", "properties": { "startTime": { @@ -3872,12 +5027,17 @@ }, "RawCertificateData": { "description": "Raw Certificate Data.", - "required": [ "certificate" ], + "required": [ + "certificate" + ], "type": "object", "properties": { "authenticationType": { "description": "The authentication type.", - "enum": [ "Invalid", "AzureActiveDirectory" ], + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], "type": "string", "x-ms-enum": { "name": "AuthenticationType", @@ -3924,7 +5084,17 @@ }, "name": { "description": "The Sku name", - "enum": [ "Gateway", "Edge", "TEA_1Node", "TEA_1Node_UPS", "TEA_1Node_Heater", "TEA_1Node_UPS_Heater", "TEA_4Node_Heater", "TEA_4Node_UPS_Heater", "TMA" ], + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3939,7 +5109,9 @@ }, "tier": { "description": "The Sku tier", - "enum": [ "Standard" ], + "enum": [ + "Standard" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3955,44 +5127,65 @@ "locations": { "description": "Availability of the SKU for the region", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "apiVersions": { "description": "The API versions in which SKU is available", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "locationInfo": { "description": "Availability of the SKU for the location/zone", "type": "array", - "items": { "$ref": "#/definitions/SkuLocationInfo" }, + "items": { + "$ref": "#/definitions/SkuLocationInfo" + }, "readOnly": true }, "costs": { "description": "The pricing info of the Sku.", "type": "array", - "items": { "$ref": "#/definitions/SkuCost" }, + "items": { + "$ref": "#/definitions/SkuCost" + }, "readOnly": true }, "restrictions": { "description": "Restrictions of the SKU availability.", "type": "array", - "items": { "$ref": "#/definitions/SkuRestriction" }, + "items": { + "$ref": "#/definitions/SkuRestriction" + }, "readOnly": true } } }, "Role": { "description": "Compute role.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "kind": { "description": "Role type.", - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "x-ms-enum": { "name": "RoleTypes", @@ -4009,7 +5202,9 @@ "value": { "description": "The Value.", "type": "array", - "items": { "$ref": "#/definitions/Role" }, + "items": { + "$ref": "#/definitions/Role" + }, "readOnly": true }, "nextLink": { @@ -4021,7 +5216,9 @@ }, "RoleSinkInfo": { "description": "Compute role against which events will be raised.", - "required": [ "roleId" ], + "required": [ + "roleId" + ], "type": "object", "properties": { "roleId": { @@ -4032,9 +5229,15 @@ }, "SecuritySettings": { "description": "The security settings of a device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/SecuritySettingsProperties", @@ -4045,7 +5248,9 @@ }, "SecuritySettingsProperties": { "description": "The properties of security settings.", - "required": [ "deviceAdminPassword" ], + "required": [ + "deviceAdminPassword" + ], "type": "object", "properties": { "deviceAdminPassword": { @@ -4061,15 +5266,23 @@ "metricSpecifications": { "description": "Metric specification as defined by shoebox.", "type": "array", - "items": { "$ref": "#/definitions/MetricSpecification_V1" } + "items": { + "$ref": "#/definitions/MetricSpecification_V1" + } } } }, "Share": { "description": "Represents a share on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/ShareProperties", @@ -4080,7 +5293,10 @@ }, "ShareAccessRight": { "description": "Specifies the mapping between this particular user and the type of access he has on shares on this device.", - "required": [ "shareId", "accessType" ], + "required": [ + "shareId", + "accessType" + ], "type": "object", "properties": { "shareId": { @@ -4089,7 +5305,11 @@ }, "accessType": { "description": "Type of access to be allowed on the share for this user.", - "enum": [ "Change", "Read", "Custom" ], + "enum": [ + "Change", + "Read", + "Custom" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessType", @@ -4105,7 +5325,9 @@ "value": { "description": "The list of shares.", "type": "array", - "items": { "$ref": "#/definitions/Share" }, + "items": { + "$ref": "#/definitions/Share" + }, "readOnly": true }, "nextLink": { @@ -4117,7 +5339,11 @@ }, "ShareProperties": { "description": "The share properties.", - "required": [ "shareStatus", "monitoringStatus", "accessProtocol" ], + "required": [ + "shareStatus", + "monitoringStatus", + "accessProtocol" + ], "type": "object", "properties": { "description": { @@ -4126,7 +5352,13 @@ }, "shareStatus": { "description": "Current status of the share.", - "enum": [ "Offline", "Unknown", "OK", "Updating", "NeedsAttention" ], + "enum": [ + "Offline", + "Unknown", + "OK", + "Updating", + "NeedsAttention" + ], "type": "string", "x-ms-enum": { "name": "ShareStatus", @@ -4135,7 +5367,10 @@ }, "monitoringStatus": { "description": "Current monitoring status of the share.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "MonitoringStatus", @@ -4148,7 +5383,10 @@ }, "accessProtocol": { "description": "Access protocol to be used by the share.", - "enum": [ "SMB", "NFS" ], + "enum": [ + "SMB", + "NFS" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessProtocol", @@ -4158,12 +5396,16 @@ "userAccessRights": { "description": "Mapping of users and corresponding access rights on the share (required for SMB protocol).", "type": "array", - "items": { "$ref": "#/definitions/UserAccessRight" } + "items": { + "$ref": "#/definitions/UserAccessRight" + } }, "clientAccessRights": { "description": "List of IP addresses and corresponding access rights on the share(required for NFS protocol).", "type": "array", - "items": { "$ref": "#/definitions/ClientAccessRight" } + "items": { + "$ref": "#/definitions/ClientAccessRight" + } }, "refreshDetails": { "$ref": "#/definitions/RefreshDetails", @@ -4172,12 +5414,17 @@ "shareMappings": { "description": "Share mount point to the role.", "type": "array", - "items": { "$ref": "#/definitions/MountPointMap" }, + "items": { + "$ref": "#/definitions/MountPointMap" + }, "readOnly": true }, "dataPolicy": { "description": "Data policy of the share.", - "enum": [ "Cloud", "Local" ], + "enum": [ + "Cloud", + "Local" + ], "type": "string", "x-ms-enum": { "name": "DataPolicy", @@ -4192,7 +5439,17 @@ "properties": { "name": { "description": "SKU name.", - "enum": [ "Gateway", "Edge", "TEA_1Node", "TEA_1Node_UPS", "TEA_1Node_Heater", "TEA_1Node_UPS_Heater", "TEA_4Node_Heater", "TEA_4Node_UPS_Heater", "TMA" ], + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA" + ], "type": "string", "x-ms-enum": { "name": "SkuName", @@ -4201,7 +5458,9 @@ }, "tier": { "description": "The SKU tier. This is based on the SKU name.", - "enum": [ "Standard" ], + "enum": [ + "Standard" + ], "type": "string", "x-ms-enum": { "name": "SkuTier", @@ -4239,7 +5498,9 @@ "value": { "description": "List of ResourceType Sku", "type": "array", - "items": { "$ref": "#/definitions/ResourceTypeSku" }, + "items": { + "$ref": "#/definitions/ResourceTypeSku" + }, "readOnly": true }, "nextLink": { @@ -4261,13 +5522,17 @@ "zones": { "description": "The zones.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "sites": { "description": "The sites.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } @@ -4276,7 +5541,7 @@ "description": "The restrictions because of which SKU cannot be used.", "type": "object", "properties": { - "type": { + "type": { "description": "The type of the restriction.", "type": "string", "readOnly": true @@ -4284,12 +5549,17 @@ "values": { "description": "The locations where sku is restricted.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "reasonCode": { "description": "The SKU restriction reason.", - "enum": [ "NotAvailableForSubscription", "QuotaId" ], + "enum": [ + "NotAvailableForSubscription", + "QuotaId" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4311,22 +5581,32 @@ "locations": { "description": "The locations.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "zones": { "description": "The zones.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } }, "StorageAccount": { "description": "Represents a Storage Account on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/StorageAccountProperties", @@ -4337,9 +5617,15 @@ }, "StorageAccountCredential": { "description": "The storage account credential.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/StorageAccountCredentialProperties", @@ -4355,7 +5641,9 @@ "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/StorageAccountCredential" }, + "items": { + "$ref": "#/definitions/StorageAccountCredential" + }, "readOnly": true }, "nextLink": { @@ -4367,7 +5655,11 @@ }, "StorageAccountCredentialProperties": { "description": "The storage account credential properties.", - "required": [ "alias", "sslStatus", "accountType" ], + "required": [ + "alias", + "sslStatus", + "accountType" + ], "type": "object", "properties": { "alias": { @@ -4388,7 +5680,10 @@ }, "sslStatus": { "description": "Signifies whether SSL needs to be enabled or not.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "SSLStatus", @@ -4401,7 +5696,10 @@ }, "accountType": { "description": "Type of storage accessed on the storage account.", - "enum": [ "GeneralPurposeStorage", "BlobStorage" ], + "enum": [ + "GeneralPurposeStorage", + "BlobStorage" + ], "type": "string", "x-ms-enum": { "name": "AccountType", @@ -4421,7 +5719,9 @@ "value": { "description": "The list of storageAccounts.", "type": "array", - "items": { "$ref": "#/definitions/StorageAccount" }, + "items": { + "$ref": "#/definitions/StorageAccount" + }, "readOnly": true }, "nextLink": { @@ -4441,7 +5741,13 @@ }, "storageAccountStatus": { "description": "Current status of the storage account", - "enum": [ "OK", "Offline", "Unknown", "Updating", "NeedsAttention" ], + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], "type": "string", "x-ms-enum": { "name": "StorageAccountStatus", @@ -4450,7 +5756,10 @@ }, "dataPolicy": { "description": "Data policy of the storage Account.", - "enum": [ "Cloud", "Local" ], + "enum": [ + "Cloud", + "Local" + ], "type": "string", "x-ms-enum": { "name": "DataPolicy", @@ -4508,13 +5817,22 @@ }, "Trigger": { "description": "Trigger details.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "kind": { "description": "Trigger Kind.", - "enum": [ "FileEvent", "PeriodicTimerEvent" ], + "enum": [ + "FileEvent", + "PeriodicTimerEvent" + ], "type": "string", "x-ms-enum": { "name": "TriggerEventType", @@ -4531,7 +5849,9 @@ "value": { "description": "The list of triggers.", "type": "array", - "items": { "$ref": "#/definitions/Trigger" }, + "items": { + "$ref": "#/definitions/Trigger" + }, "readOnly": true }, "nextLink": { @@ -4547,7 +5867,12 @@ "properties": { "downloadPhase": { "description": "The download phase.", - "enum": [ "Unknown", "Initializing", "Downloading", "Verifying" ], + "enum": [ + "Unknown", + "Initializing", + "Downloading", + "Verifying" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4614,7 +5939,11 @@ "UpdateSummary": { "description": "Details about ongoing updates and availability of updates on the device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/UpdateSummaryProperties", @@ -4677,7 +6006,11 @@ }, "rebootBehavior": { "description": "Indicates if updates are available and at least one of the updates needs a reboot.", - "enum": [ "NeverReboots", "RequiresReboot", "RequestReboot" ], + "enum": [ + "NeverReboots", + "RequiresReboot", + "RequestReboot" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4687,7 +6020,12 @@ }, "ongoingUpdateOperation": { "description": "The current update operation.", - "enum": [ "None", "Scan", "Download", "Install" ], + "enum": [ + "None", + "Scan", + "Download", + "Install" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4720,7 +6058,9 @@ "updateTitles": { "description": "The list of updates available for install.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "totalUpdateSizeInBytes": { @@ -4733,7 +6073,9 @@ }, "UploadCertificateRequest": { "description": "The upload certificate request.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", "properties": { "properties": { @@ -4749,7 +6091,10 @@ "properties": { "authType": { "description": "Specifies authentication type.", - "enum": [ "Invalid", "AzureActiveDirectory" ], + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], "type": "string", "x-ms-enum": { "name": "AuthenticationType", @@ -4795,9 +6140,15 @@ }, "User": { "description": "Represents a user who has access to one or more shares on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/UserProperties", @@ -4808,7 +6159,10 @@ }, "UserAccessRight": { "description": "The mapping between a particular user and the access type on the SMB share.", - "required": [ "userId", "accessType" ], + "required": [ + "userId", + "accessType" + ], "type": "object", "properties": { "userId": { @@ -4817,7 +6171,11 @@ }, "accessType": { "description": "Type of access to be allowed for the user.", - "enum": [ "Change", "Read", "Custom" ], + "enum": [ + "Change", + "Read", + "Custom" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessType", @@ -4833,7 +6191,9 @@ "value": { "description": "The list of users.", "type": "array", - "items": { "$ref": "#/definitions/User" }, + "items": { + "$ref": "#/definitions/User" + }, "readOnly": true }, "nextLink": { @@ -4845,7 +6205,9 @@ }, "UserProperties": { "description": "The user properties.", - "required": [ "userType" ], + "required": [ + "userType" + ], "type": "object", "properties": { "encryptedPassword": { @@ -4855,11 +6217,17 @@ "shareAccessRights": { "description": "List of shares that the user has rights on. This field should not be specified during user creation.", "type": "array", - "items": { "$ref": "#/definitions/ShareAccessRight" } + "items": { + "$ref": "#/definitions/ShareAccessRight" + } }, "userType": { "description": "Type of the user.", - "enum": [ "Share", "LocalManagement", "ARM" ], + "enum": [ + "Share", + "LocalManagement", + "ARM" + ], "type": "string", "x-ms-enum": { "name": "UserType", @@ -4907,8 +6275,16 @@ "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { "user_impersonation": "impersonate your user account." } + "scopes": { + "user_impersonation": "impersonate your user account." + } } }, - "security": [ { "azure_auth": [ "user_impersonation" ] } ] -} \ No newline at end of file + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json index 21d6ff1b8e13..5ac6072612a8 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json @@ -17,4 +17,4 @@ "202": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json index 3985acbca7a0..de6eeb106e7a 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json @@ -13,16 +13,16 @@ "responses": { "200": { "body": { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } } } } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json index 42b135e7b1d8..3878df4838b8 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json @@ -4,8 +4,8 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "storageAccountName":"storageaccount1", - "x-ms-client-request-id": [ + "storageAccountName": "storageaccount1", + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -14,44 +14,43 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:14:32.3016929Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - }, - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:15:38.0077675Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer2", - "name": "blobcontainer2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - }, - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer3", - "name": "blobcontainer3", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } - ] - } + "body": { + "value": [ + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:14:32.3016929Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:15:38.0077675Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer2", + "name": "blobcontainer2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer3", + "name": "blobcontainer3", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json index 7addeda919b8..87e90781c08b 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json @@ -19,24 +19,24 @@ "en-US" ], "container": { - "properties": { - "dataFormat": "BlockBlob" - } + "properties": { + "dataFormat": "BlockBlob" + } } }, "responses": { "200": { "body": { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer-5e155efe", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer-5e155efe", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } }, "202": {} } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json index 8a9f51268479..141f5fb4ccbd 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json @@ -1,51 +1,51 @@ { - "parameters": { - "api-version": "2019-08-01", - "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", - "location": "westus", - "x-ms-client-request-id": [ - "a93b39a3-1ff4-42b8-a56f-43368d47e37a" - ], - "accept-language": [ - "en-US" - ] - }, - "responses": { - "200": { - "body": { - "value": [ - { - "resourceType": "dataBoxEdeDevices", - "name": "Gateway", - "tier": "Standard", - "locations": [ - "West US" - ], - "locationInfo": [ - { - "location": "West US" - } - ], - "apiVersions": [ - "2019-08-01" - ], - "restrictions": [ - { - "type": "location", - "values": [ - "East US" - ], - "restrictionInfo": { - "locations": [ - "East US" - ] - }, - "reasonCode": "NotAvailableForSubscription" - } - ] - } - ] - } - } - } -} \ No newline at end of file + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "location": "westus", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "dataBoxEdeDevices", + "name": "Gateway", + "tier": "Standard", + "locations": [ + "West US" + ], + "locationInfo": [ + { + "location": "West US" + } + ], + "apiVersions": [ + "2019-08-01" + ], + "restrictions": [ + { + "type": "location", + "values": [ + "East US" + ], + "restrictionInfo": { + "locations": [ + "East US" + ] + }, + "reasonCode": "NotAvailableForSubscription" + } + ] + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json index db0cd973b7e2..8c09ba8fa442 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json @@ -4,7 +4,7 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "x-ms-client-request-id": [ + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -13,39 +13,38 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "nodeStatus": "Unknown", - "nodeChassisSerialNumber": "1D6QHQ2", - "nodeSerialNumber": "1D6QHQ2", - "nodeDisplayName": "Controller 1", - "nodeFriendlySoftwareVersion": "Data Box Edge 1908", - "nodeHcsVersion": "1.6.961.8307", - "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" - }, - "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", - "name": "1D6QHQ2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" - }, - { - "properties": { - "nodeStatus": "Unknown", - "nodeChassisSerialNumber": "1D6QHQ2", - "nodeSerialNumber": "1DCNHQ2", - "nodeDisplayName": "Controller 1", - "nodeFriendlySoftwareVersion": "Data Box Edge 1908", - "nodeHcsVersion": "1.6.961.8307", - "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" - }, - "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", - "name": "1DCNHQ2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" - } - ] - } + "body": { + "value": [ + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1D6QHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", + "name": "1D6QHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + }, + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1DCNHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", + "name": "1DCNHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json index 152c52c28702..9e0e6d8fbdd6 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json @@ -82,4 +82,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json index 3d0cb495a293..a3205f176911 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json @@ -47,4 +47,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json index 27d6e1b897f4..754dba79f505 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json @@ -16,4 +16,4 @@ "202": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json index b3460383c119..cde01eaafb9a 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json @@ -12,18 +12,18 @@ "responses": { "200": { "body": { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } } } } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json index bf13d8e4616a..188917b45f75 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json @@ -4,7 +4,7 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "x-ms-client-request-id": [ + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -13,24 +13,23 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } - ] - } + "body": { + "value": [ + { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json index 9b914d8fe444..0f7b8bf58983 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json @@ -19,28 +19,28 @@ ], "storageAccount": { "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt" - } + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt" + } } }, "responses": { "200": { "body": { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } }, "202": {} } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json index 80ede46f2d01..74dba07c709f 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json @@ -50,4 +50,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json index 319034b98e6b..0a28cd3ae102 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json @@ -15,7 +15,9 @@ "responses": { "200": { "body": { - "properties": {"userType":"Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json index a06b4b1a4641..2b1debde372d 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json @@ -16,13 +16,17 @@ "body": { "value": [ { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", "name": "user2", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" }, { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json index b86dd062624e..eb630da5bed3 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json @@ -25,14 +25,16 @@ "encryptionCertThumbprint": "blah" }, "shareAccessRights": [], - "userType": "Share" + "userType": "Share" } } }, "responses": { "200": { "body": { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json index abc6368cb41c..82b602c6b63d 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json @@ -70,9 +70,6 @@ "$ref": "#/definitions/Workspace" } }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -113,6 +110,9 @@ "202": { "description": "Accepted - Returns this status until the asynchronous operation has completed." }, + "200": { + "description": "OK. The request has succeeded." + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -401,6 +401,28 @@ "items": { "$ref": "#/definitions/WorkspaceProviderAuthorization" } + }, + "createdBy": { + "description": "Indicates the Object ID, PUID and Application ID of entity that created the workspace.", + "$ref": "#/definitions/CreatedBy" + }, + "updatedBy": { + "description": "Indicates the Object ID, PUID and Application ID of entity that last updated the workspace.", + "$ref": "#/definitions/CreatedBy" + }, + "createdDateTime": { + "description": "Specifies the date and time when the workspace is created.", + "$ref": "#/definitions/CreatedDateTime" + }, + "workspaceId": { + "readOnly": true, + "description": "The unique identifier of the databricks workspace in databricks control plane.", + "type": "string" + }, + "workspaceUrl": { + "readOnly": true, + "description": "The workspace URL which is of the format 'adb-{workspaceId}.{random}.azuredatabricks.net'", + "type": "string" } }, "required": [ @@ -564,10 +586,6 @@ }, "WorkspaceCustomParameters": { "properties": { - "amlWorkspaceId": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The Workspace ID of an Azure Machine Learning Workspace" - }, "customVirtualNetworkId": { "$ref": "#/definitions/WorkspaceCustomStringParameter", "description": "The ID of a Virtual Network where this Databricks Cluster should be created" @@ -583,37 +601,37 @@ "enableNoPublicIp": { "$ref": "#/definitions/WorkspaceCustomBooleanParameter", "description": "Should the Public IP be Disabled?" + } + }, + "description": "Custom Parameters used for Cluster Creation." + }, + "CreatedDateTime": { + "type": "string", + "format": "date-time", + "description": "The date and time stamp when the workspace was created.", + "readOnly": true + }, + "CreatedBy": { + "properties": { + "oid": { + "type": "string", + "format": "uuid", + "description": "The Object ID that created the workspace.", + "readOnly": true }, - "loadBalancerBackendPoolName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name of a Backend Address Pool within an Azure Load Balancer" - }, - "loadBalancerId": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The Resource ID of an Azure Load Balancer" - }, - "relayNamespaceName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name of an Azure Relay Namespace" - }, - "storageAccountName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name which should be used for the Storage Account" - }, - "storageAccountSkuName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The SKU which should be used for this Storage Account" - }, - "resourceTags": { - "$ref": "#/definitions/WorkspaceCustomObjectParameter", - "description": "A map of Tags which should be applied to the resources used by this Databricks Cluster." + "puid": { + "type": "string", + "description": "The Personal Object ID corresponding to the object ID above", + "readOnly": true }, - "vnetAddressPrefix": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The first 2 octets of the virtual network /16 address range (e.g., '10.139' for the address range 10.139.0.0/16)." + "applicationId": { + "type": "string", + "format": "uuid", + "description": "The application ID of the application that initiated the creation of the workspace. For example, Azure Portal.", + "readOnly": true } }, - "description": "Custom Parameters used for Cluster Creation." + "description": "Provides details of the entity that created/updated the workspace." }, "WorkspaceProviderAuthorization": { "properties": { diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json index ae621c5399a9..4da476627d55 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json @@ -31,6 +31,33 @@ "operation": "Remove Workspace", "description": "Removes an workspace." } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/read", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Get Virtual Network Peering", + "description": "Gets the virtual network peering." + } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/write", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Add Virtual Network Peering", + "description": "Add or modify virtual network peering" + } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/delete", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Delete Virtual Network Peering", + "description": "Deletes a virtual network peering" + } } ] } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json index 977b42112e3b..2c2962677166 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json @@ -19,13 +19,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } }, @@ -35,15 +54,34 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", - "tags": null, + "tags": { + "environment": "dev" + }, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z" } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json index 4e9773afc9be..4a6d36ecbcff 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json @@ -6,7 +6,18 @@ "api-version": "2018-04-01", "parameters": { "properties": { - "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG" + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": { + "customVirtualNetworkId": { + "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" + }, + "customPublicSubnetName": { + "value": "myPublicSubnet" + }, + "customPrivateSubnetName": { + "value": "myPrivateSubnet" + } + } }, "location": "westus" } @@ -20,64 +31,45 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": { - "amlWorkspaceId": { - "type": "String", - "value": "11112222-3333-4444-5555-666677778888" - }, "customPrivateSubnetName": { "type": "String", - "value": "PrivateBob" + "value": "myPrivateSubnet" }, "customPublicSubnetName": { "type": "String", - "value": "PublicSarah" + "value": "myPublicSubnet" }, "customVirtualNetworkId": { "type": "String", "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "CustomBackendAddressPool" - }, - "loadBalancerId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/loadBalancers/lb1" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "resourceTags": { - "type": "Object", - "value": { - "hello": "world" - } - }, - "storageAccountName": { - "type": "String", - "value": "mysa999" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" } }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } }, @@ -88,66 +80,33 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", - "tags": null, + "tags": { + "environment": "dev" + }, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", - "parameters": { - "amlWorkspaceId": { - "type": "String", - "value": "11112222-3333-4444-5555-666677778888" - }, - "customPrivateSubnetName": { - "type": "String", - "value": "PrivateBob" - }, - "customPublicSubnetName": { - "type": "String", - "value": "PublicSarah" - }, - "customVirtualNetworkId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "CustomBackendAddressPool" - }, - "loadBalancerId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/loadBalancers/lb1" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "resourceTags": { - "type": "Object", - "value": { - "hello": "world" - } - }, - "storageAccountName": { - "type": "String", - "value": "mysa999" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "createdDateTime": "2020-02-20T00:10:29.2858439Z" } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json index f3362fe69807..affad060724a 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json @@ -6,6 +6,7 @@ "subscriptionId": "subid" }, "responses": { + "200": {}, "202": {}, "204": {} } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json index 699d03663b88..48fe6d0b4990 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json @@ -12,15 +12,36 @@ "name": "myWorkspace", "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", + "sku": { + "name": "premium" + }, "location": "East US 2", "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } - }, - "404": {} + } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json index d2afb9f36a5f..7babe97ee78a 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json @@ -13,6 +13,9 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", + "sku": { + "name": "premium" + }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": { @@ -27,53 +30,31 @@ "customVirtualNetworkId": { "type": "String", "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "" - }, - "loadBalancerId": { - "type": "String", - "value": "" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "storageAccountName": { - "type": "String", - "value": "examplesa99" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" - }, - "resourceTags": { - "type": "Object", - "value": { - "application": "databricks", - "databricks-environment": "true", - "Environment": "Production" - } - }, - "amlWorkspaceId": { - "type": "String", - "value": "" } }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } - }, - "404": {} + } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json index e386347fa0a2..766bbcd78728 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json @@ -20,11 +20,33 @@ "tags": { "mytag1": "myvalue1" }, + "sku": { + "name": "premium" + }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } }, diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json index e53b60c320e1..f8fad446745f 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json @@ -16,13 +16,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } }, { @@ -32,13 +51,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "standard" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } ] diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json index 4fbbf3fc1d89..de92bdaeaf18 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json @@ -15,13 +15,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } }, { @@ -31,13 +50,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "standard" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } ] diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index 830aeb5779c1..8e1e0fcb1665 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -3070,6 +3070,65 @@ "$ref": "#/definitions/GenericDatasetTypeProperties" } } + }, + "SnowflakeDataset": { + "x-ms-discriminator-value": "SnowflakeTable", + "description": "The snowflake dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Snowflake dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnowflakeDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SnowflakeDatasetTypeProperties": { + "description": "Snowflake dataset properties.", + "properties": { + "schema": { + "type": "object", + "description": "The schema name of the Snowflake database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Snowflake database. Type: string (or Expression with resultType string)." + } + } + }, + "SharePointOnlineListResourceDataset": { + "x-ms-discriminator-value": "SharePointOnlineListResource", + "description": "The sharepoint online list resource dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sharepoint online list dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharePointOnlineListDatasetTypeProperties" + } + } + }, + "SharePointOnlineListDatasetTypeProperties": { + "description": "Sharepoint online list dataset properties.", + "properties": { + "listName": { + "type": "object", + "description": "The name of the SharePoint Online list. Type: string (or Expression with resultType string)." + } + } } } } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json index df0fd8d28231..0804d441a8f4 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json @@ -215,6 +215,13 @@ "items": { "$ref": "#/definitions/CustomSetupBase" } + }, + "packageStores": { + "description": "Package stores for the SSIS Integration Runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/PackageStore" + } } }, "additionalProperties": { @@ -290,6 +297,24 @@ } } }, + "PackageStore": { + "description": "Package store for the SSIS integration runtime.", + "type": "object", + "properties": { + "name": { + "description": "The name of the package store", + "type": "string" + }, + "packageStoreLinkedService": { + "description": "The package store linked service reference.", + "$ref": "#/definitions/EntityReference" + } + }, + "required": [ + "name", + "packageStoreLinkedService" + ] + }, "CustomSetupBase": { "description": "The base definition of the custom setup.", "type": "object", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index f2db0c308021..4b63d84add83 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -945,14 +945,31 @@ "description": "Password to logon the server.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "connectionString": { + "type": "object", + "description": "The connection string. It is mutually exclusive with sasUri property. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure File resource. It is mutually exclusive with connectionString property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "fileShare": { + "description": "The azure file share name. It is required when auth with accountKey/sasToken. Type: string (or Expression with resultType string).", + "type": "object" + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." } - }, - "required": [ - "host" - ] + } }, "GoogleCloudStorageLinkedService": { "x-ms-discriminator-value": "GoogleCloudStorage", @@ -3036,10 +3053,7 @@ "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." } - }, - "required": [ - "server" - ] + } }, "AmazonMWSLinkedService": { "x-ms-discriminator-value": "AmazonMWS", @@ -5692,6 +5706,97 @@ "required": [ "functionAppUrl" ] + }, + "SnowflakeLinkedService": { + "x-ms-discriminator-value": "Snowflake", + "description": "Snowflake linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Snowflake linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnowflakeLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SnowflakeLinkedServiceTypeProperties": { + "description": "Snowflake linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string of snowflake. Type: string, SecureString.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "SharePointOnlineListLinkedService": { + "x-ms-discriminator-value": "SharePointOnlineList", + "description": "SharePoint Online List linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SharePoint Online List linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharePointOnlineListLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SharePointOnlineListLinkedServiceTypeProperties": { + "description": "SharePoint Online List linked service properties.", + "properties": { + "siteUrl": { + "type": "object", + "description": "The URL of the SharePoint Online site. For example, https://contoso.sharepoint.com/sites/siteName. Type: string (or Expression with resultType string)." + }, + "tenantId": { + "type": "object", + "description": "The tenant ID under which your application resides. You can find it from Azure portal Active Directory overview page. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The application (client) ID of your application registered in Azure Active Directory. Make sure to grant SharePoint site permission to this application. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The client secret of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "siteUrl", + "tenantId", + "servicePrincipalId", + "servicePrincipalKey" + ] } } } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index f4c82c6db904..6d3a8e411e5d 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -267,6 +267,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -306,6 +310,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -345,6 +353,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -388,6 +400,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -427,6 +443,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -434,6 +454,10 @@ "modifiedDatetimeEnd": { "type": "object", "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "fileFilter": { + "type": "object", + "description": "Specify a filter to be used to select a subset of files in the folderPath rather than all files. Type: string (or Expression with resultType string)." } } }, @@ -458,6 +482,10 @@ "type": "object", "description": "Azure File Storage wildcardFileName. Type: string (or Expression with resultType string)." }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Azure File name starting from root path. Type: string (or Expression with resultType string)." + }, "fileListPath": { "type": "object", "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." @@ -466,6 +494,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -528,6 +560,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -559,6 +595,14 @@ "type": "object", "description": "Ftp wildcardFileName. Type: string (or Expression with resultType string)." }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "fileListPath": { "type": "object", "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." @@ -590,6 +634,14 @@ "type": "object", "description": "Sftp wildcardFileName. Type: string (or Expression with resultType string)." }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "fileListPath": { "type": "object", "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." @@ -628,6 +680,14 @@ "requestTimeout": { "type": "object", "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." } } }, @@ -660,6 +720,10 @@ "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -770,6 +834,38 @@ "type" ] }, + "CompressionReadSettings": { + "description": "Compression read settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The Compression setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "ZipDeflateReadSettings": { + "description": "The ZipDeflate compression read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CompressionReadSettings" + } + ], + "properties": { + "preserveZipFileNameAsFolder": { + "description": "Preserve the zip file name as folder path. Type: boolean (or Expression with resultType boolean).", + "type": "object" + } + } + }, "DelimitedTextReadSettings": { "description": "Delimited text read settings.", "type": "object", @@ -782,6 +878,40 @@ "skipLineCount": { "type": "object", "description": "Indicates the number of non-empty rows to skip when reading data from input files. Type: integer (or Expression with resultType integer)." + }, + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." + } + } + }, + "JsonReadSettings": { + "description": "Json read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." + } + } + }, + "BinaryReadSettings": { + "description": "Binary read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." } } }, @@ -949,6 +1079,10 @@ "$ref": "#/definitions/StoreReadSettings", "description": "Json store settings." }, + "formatSettings": { + "$ref": "#/definitions/JsonReadSettings", + "description": "Json format settings." + }, "additionalColumns": { "type": "array", "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", @@ -1180,6 +1314,10 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "Binary store settings." + }, + "formatSettings": { + "$ref": "#/definitions/BinaryReadSettings", + "description": "Binary format settings." } } }, @@ -1535,6 +1673,10 @@ "type": "object", "description": "OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, "additionalColumns": { "type": "array", "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", @@ -1617,6 +1759,10 @@ "query": { "type": "object", "description": "SAP Cloud for Customer OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -1632,6 +1778,10 @@ "query": { "type": "object", "description": "SAP ECC OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -1846,6 +1996,14 @@ "isolationLevel": { "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string).", "type": "object" + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "$ref": "#/definitions/SqlPartitionOption" + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "$ref": "#/definitions/SqlPartitionSettings" } } }, @@ -1876,6 +2034,14 @@ "produceAdditionalTypes": { "description": "Which additional types to produce.", "type": "object" + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "$ref": "#/definitions/SqlPartitionOption" + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "$ref": "#/definitions/SqlPartitionSettings" } } }, @@ -1906,6 +2072,14 @@ "produceAdditionalTypes": { "description": "Which additional types to produce.", "type": "object" + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "$ref": "#/definitions/SqlPartitionOption" + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "$ref": "#/definitions/SqlPartitionSettings" } } }, @@ -1936,6 +2110,14 @@ "produceAdditionalTypes": { "description": "Which additional types to produce.", "type": "object" + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "$ref": "#/definitions/SqlPartitionOption" + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "$ref": "#/definitions/SqlPartitionSettings" } } }, @@ -1959,9 +2141,48 @@ "storedProcedureParameters": { "type": "object", "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "$ref": "#/definitions/SqlPartitionOption" + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "$ref": "#/definitions/SqlPartitionSettings" } } }, + "SqlPartitionSettings": { + "description": "The settings that will be leveraged for Sql source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column in integer or datetime type that will be used for proceeding partitioning. If not specified, the primary key of the table is auto-detected and used as the partition column. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "SqlPartitionOption": { + "description": "The partition mechanism that will be used for Sql read in parallel.", + "type": "string", + "enum": [ + "None", + "PhysicalPartitionsOfTable", + "DynamicRange" + ], + "x-ms-enum": { + "name": "SqlPartitionOption", + "modelAsString": true + } + }, "FileSystemSource": { "description": "A copy activity file system source.", "type": "object", @@ -2990,6 +3211,10 @@ "query": { "type": "object", "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -3060,6 +3285,67 @@ "bucketName" ] }, + "SnowflakeSource": { + "description": "A copy activity snowflake source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Snowflake Sql query. Type: string (or Expression with resultType string)." + }, + "exportSettings": { + "$ref": "#/definitions/SnowflakeExportCopyCommand", + "description": "Snowflake export settings." + } + } + }, + "ExportSettings": { + "description": "Export command settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The export setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SnowflakeExportCopyCommand": { + "description": "Snowflake export command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSettings" + } + ], + "properties": { + "additionalCopyOptions": { + "type": "object", + "description": "Additional copy options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalCopyOptions\": { \"DATE_FORMAT\": \"MM/DD/YYYY\", \"TIME_FORMAT\": \"'HH24:MI:SS.FF'\" }", + "additionalProperties": { + "type": "object" + } + }, + "additionalFormatOptions": { + "type": "object", + "description": "Additional format options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalFormatOptions\": { \"OVERWRITE\": \"TRUE\", \"MAX_FILE_SIZE\": \"'FALSE'\" }", + "additionalProperties": { + "type": "object" + } + } + } + }, "StoredProcedureParameter": { "description": "SQL stored procedure parameter.", "type": "object", @@ -3148,6 +3434,10 @@ "name": "SapCloudForCustomerSinkWriteBehavior", "modelAsString": true } + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -3584,6 +3874,67 @@ } } }, + "SnowflakeSink": { + "description": "A copy activity snowflake sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "importSettings": { + "$ref": "#/definitions/SnowflakeImportCopyCommand", + "description": "Snowflake import settings." + } + } + }, + "ImportSettings": { + "description": "Import command settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The import setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SnowflakeImportCopyCommand": { + "description": "Snowflake import command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImportSettings" + } + ], + "properties": { + "additionalCopyOptions": { + "type": "object", + "description": "Additional copy options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalCopyOptions\": { \"DATE_FORMAT\": \"MM/DD/YYYY\", \"TIME_FORMAT\": \"'HH24:MI:SS.FF'\" }", + "additionalProperties": { + "type": "object" + } + }, + "additionalFormatOptions": { + "type": "object", + "description": "Additional format options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalFormatOptions\": { \"FORCE\": \"TRUE\", \"LOAD_UNCERTAIN_FILES\": \"'FALSE'\" }", + "additionalProperties": { + "type": "object" + } + } + } + }, "LogStorageSettings": { "description": "Log storage settings.", "type": "object", @@ -4525,7 +4876,8 @@ "enum": [ "SSISDB", "File", - "InlinePackage" + "InlinePackage", + "PackageStore" ], "x-ms-enum": { "name": "SsisPackageLocationType", @@ -4555,6 +4907,10 @@ "description": "The configuration file of the package execution. Type: string (or Expression with resultType string).", "type": "object" }, + "configurationAccessCredential": { + "description": "The configuration file access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, "packageName": { "description": "The package name.", "type": "string" @@ -4924,6 +5280,10 @@ "dataset": { "description": "Delete activity dataset reference.", "$ref": "../datafactory.json#/definitions/DatasetReference" + }, + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Delete activity store settings." } }, "required": [ @@ -5146,6 +5506,14 @@ "type": "object", "description": "Type: string (or Expression with resultType string)." } + }, + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "GetMetadata activity store settings." + }, + "formatSettings": { + "$ref": "#/definitions/FormatReadSettings", + "description": "GetMetadata activity format settings." } }, "required": [ @@ -6087,6 +6455,25 @@ "required": [ "dataFlow" ] + }, + "SharePointOnlineListSource": { + "description": "A copy activity source for sharePoint online list source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "The OData query to filter the data in SharePoint Online list. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The wait time to get a response from SharePoint Online. Default value is 5 minutes (00:05:00). Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } } } } diff --git a/specification/datashare/resource-manager/readme.az.md b/specification/datashare/resource-manager/readme.az.md new file mode 100644 index 000000000000..adec34b35089 --- /dev/null +++ b/specification/datashare/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: datashare + namespace: azure.mgmt.datashare + package-name: azure-mgmt-datashare +az-output-folder: $(azure-cli-extension-folder)/src/datashare +python-sdk-output-folder: "$(az-output-folder)/azext_datashare/vendored_sdks/datashare" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/datashare/resource-manager/readme.cli.md b/specification/datashare/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/datashare/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/datashare/resource-manager/readme.md b/specification/datashare/resource-manager/readme.md index f6dc9607cdb6..5d1040195bd8 100644 --- a/specification/datashare/resource-manager/readme.md +++ b/specification/datashare/resource-manager/readme.md @@ -62,6 +62,7 @@ swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python - repo: azure-sdk-for-go + - repo: azure-cli-extensions ``` diff --git a/specification/datashare/resource-manager/readme.python.md b/specification/datashare/resource-manager/readme.python.md new file mode 100644 index 000000000000..aa1ddf769499 --- /dev/null +++ b/specification/datashare/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: azure.mgmt.datashare + package-name: azure-mgmt-datashare + package-version: 2019-11-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare/azure/mgmt/datashare +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare +``` \ No newline at end of file diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json index b627b27b959f..b47f17c0a57f 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json @@ -1067,7 +1067,7 @@ "operationId": "Rollouts_List", "summary": "Lists the rollouts in a resource group.", "x-ms-examples": { - "List rollouts by resource group" : { + "List rollouts by resource group": { "$ref": "./examples/rollouts_list.json" } }, @@ -2495,4 +2495,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json index f20743c1a4af..33fc29f32d8e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview", - "artifactSourceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview", + "artifactSourceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } - }, - "responses": { - "201": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json index 9d664c0186d8..35571cebc988 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json @@ -1,41 +1,41 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview", - "artifactSourceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "artifactRoot": "1.0.0.0", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview", + "artifactSourceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "artifactRoot": "1.0.0.0", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } - }, - "responses": { - "201": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json index 9bdd1a2b8df3..0b1a1669cd5b 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json index 6008aaf71d99..10b2de4cbe8f 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json @@ -1,27 +1,27 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json index c96954920d11..0b269f9f6f25 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json @@ -1,44 +1,44 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "TemplatesArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/templates?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } - }, - { - "name": "BinariesArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "artifactRoot": "builds/1.0.0.1", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/binaries?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "TemplatesArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/templates?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } + } + } + }, + { + "name": "BinariesArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "artifactRoot": "builds/1.0.0.1", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/binaries?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json index e7afad6252df..4eead345f910 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json @@ -1,166 +1,166 @@ { - "parameters": { - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "Microsoft.DeploymentManager/serviceTopologies/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "View service topology", - "description": "View the properties of a service topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "Update the service topology", - "description": "Create a new topology or update the properties of an existing topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "Delete service topology", - "description": "Deletes an existing topology." - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "View service in a topology", - "description": "View the properties of a service in a service topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "Update the service in a topology", - "description": "Create a new service or update the properties of an existing service" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "Delete service", - "description": "Deletes an existing service in a service topology." - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "View service unit", - "description": "View the properties of a service unit" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "Update the service unit", - "description": "Create a new service unit or update the properties of an existing service unit" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "Delete service unit", - "description": "Deletes an existing service unit." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "View artifact source", - "description": "View the properties of an artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "Update the artifact source", - "description": "Create a new artifact source or updates the properties of an existing artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "Delete artifact source", - "description": "Deletes an existing artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "View rollout", - "description": "View the properties of rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Create or update a rollout.", - "description": "Create a new rollout or update an existing rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/restart", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Restart a rollout", - "description": "Restarts a failed rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/cancel", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Cancel a rollout", - "description": "Cancel a rollout in progress." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Delete rollout", - "description": "Deletes an existing rollout." - } - } - ] - } - } + "parameters": { + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DeploymentManager/serviceTopologies/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "View service topology", + "description": "View the properties of a service topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "Update the service topology", + "description": "Create a new topology or update the properties of an existing topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "Delete service topology", + "description": "Deletes an existing topology." + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "View service in a topology", + "description": "View the properties of a service in a service topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "Update the service in a topology", + "description": "Create a new service or update the properties of an existing service" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "Delete service", + "description": "Deletes an existing service in a service topology." + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "View service unit", + "description": "View the properties of a service unit" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "Update the service unit", + "description": "Create a new service unit or update the properties of an existing service unit" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "Delete service unit", + "description": "Deletes an existing service unit." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "View artifact source", + "description": "View the properties of an artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "Update the artifact source", + "description": "Create a new artifact source or updates the properties of an existing artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "Delete artifact source", + "description": "Deletes an existing artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "View rollout", + "description": "View the properties of rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Create or update a rollout.", + "description": "Create a new rollout or update an existing rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/restart", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Restart a rollout", + "description": "Restarts a failed rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/cancel", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Cancel a rollout", + "description": "Cancel a rollout in progress." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Delete rollout", + "description": "Deletes an existing rollout." + } + } + ] + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json index 5ecd2a2b9313..613903aa42a3 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json @@ -1,122 +1,122 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview", - "rolloutRequest": { - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview", + "rolloutRequest": { + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] }, - "properties": { - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" }, - "properties": { - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json index acc12c224ca5..f333360355b2 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json index 9e25323db3e6..1792416c65a1 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json @@ -1,124 +1,124 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Running", - "operationInfo": { + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ], + "services": [ + { + "name": "myService1", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", + "targetLocation": "centralus", + "serviceUnits": [ + { + "name": "myTopologyUni1", + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "steps": [ + { + "name": "preDeploymentStep1", + "status": "succeeded", + "operationInfo": { "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 0 + "endTime": "2018-08-28T03:35:28.556Z" + } }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ], - "services": [ + { + "name": "preDeploymentStep2", + "status": "succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:36:56.386Z", + "endTime": "2018-08-28T03:37:28.556Z" + } + }, + { + "name": "deploy", + "status": "running", + "operationInfo": { + "startTime": "2018-08-28T03:38:56.386Z", + "lastUpdatedTime": "2018-08-28T03:39:28.556Z" + }, + "resourceOperations": [ { - "name": "myService1", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", - "targetLocation": "centralus", - "serviceUnits": [ - { - "name": "myTopologyUni1", - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "steps": [ - { - "name": "preDeploymentStep1", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:35:28.556Z" - } - }, - { - "name": "preDeploymentStep2", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:36:56.386Z", - "endTime": "2018-08-28T03:37:28.556Z" - } - }, - { - "name": "deploy", - "status": "running", - "operationInfo": { - "startTime": "2018-08-28T03:38:56.386Z", - "lastUpdatedTime": "2018-08-28T03:39:28.556Z" - }, - "resourceOperations": [ - { - "resourceName": "keyVaultcentralus", - "operationId": "20FC5A21382DA306", - "resourceType": "Microsoft.KeyVault/vaults", - "provisioningState": "Succeeded", - "statusMessage": "", - "statusCode": "OK" - } - ] - } - ] - } - ] + "resourceName": "keyVaultcentralus", + "operationId": "20FC5A21382DA306", + "resourceType": "Microsoft.KeyVault/vaults", + "provisioningState": "Succeeded", + "statusMessage": "", + "statusCode": "OK" } - ] + ] + } + ] } + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json index 0e701fec5a02..0c70c7ad973e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json @@ -1,124 +1,124 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Canceling", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Canceling", - "operationInfo": { + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ], + "services": [ + { + "name": "myService1", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", + "targetLocation": "centralus", + "serviceUnits": [ + { + "name": "myTopologyUni1", + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "steps": [ + { + "name": "preDeploymentStep1", + "status": "succeeded", + "operationInfo": { "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 0 + "endTime": "2018-08-28T03:35:28.556Z" + } }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ], - "services": [ + { + "name": "preDeploymentStep2", + "status": "succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:36:56.386Z", + "endTime": "2018-08-28T03:37:28.556Z" + } + }, + { + "name": "deploy", + "status": "running", + "operationInfo": { + "startTime": "2018-08-28T03:38:56.386Z", + "lastUpdatedTime": "2018-08-28T03:39:28.556Z" + }, + "resourceOperations": [ { - "name": "myService1", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", - "targetLocation": "centralus", - "serviceUnits": [ - { - "name": "myTopologyUni1", - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "steps": [ - { - "name": "preDeploymentStep1", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:35:28.556Z" - } - }, - { - "name": "preDeploymentStep2", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:36:56.386Z", - "endTime": "2018-08-28T03:37:28.556Z" - } - }, - { - "name": "deploy", - "status": "running", - "operationInfo": { - "startTime": "2018-08-28T03:38:56.386Z", - "lastUpdatedTime": "2018-08-28T03:39:28.556Z" - }, - "resourceOperations": [ - { - "resourceName": "keyVaultcentralus", - "operationId": "20FC5A21382DA306", - "resourceType": "Microsoft.KeyVault/vaults", - "provisioningState": "Succeeded", - "statusMessage": "", - "statusCode": "OK" - } - ] - } - ] - } - ] + "resourceName": "keyVaultcentralus", + "operationId": "20FC5A21382DA306", + "resourceType": "Microsoft.KeyVault/vaults", + "provisioningState": "Succeeded", + "statusMessage": "", + "statusCode": "OK" } - ] + ] + } + ] } + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json index c9b4fef98cd6..a31926654dd9 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json @@ -1,75 +1,75 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "skipSucceeded": true, - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "skipSucceeded": true, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 1 + }, + "totalRetryAttempts": 1, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Running", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 1 - }, - "totalRetryAttempts": 1, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json index dd2d56e65529..1649daa12071 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json @@ -1,101 +1,101 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "CanaryRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] - }, - "properties": { - "status": "Succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:43:55.010Z", - "retryAttempt": 0 - }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - } - ] - } - }, - { - "name": "ProdRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] - }, - "properties": { - "status": "Running", - "operationInfo": { - "startTime": "2019-05-02T03:33:56.386Z", - "retryAttempt": 0 - }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "ProdRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep3" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "CanaryRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" ] + }, + "properties": { + "status": "Succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "endTime": "2018-08-28T03:43:55.010Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + } + ] + } + }, + { + "name": "ProdRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2019-05-02T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "ProdRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep3" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ] + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json index 5ca7e868a588..e61a5441d174 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json @@ -1,31 +1,31 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview", - "serviceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } - }, - "responses": { - "201": { - "body": { - "name": "myService", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "serviceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } + } + }, + "responses": { + "201": { + "body": { + "name": "myService", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json index 00f626eb62cf..1a5bf772f1da 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json @@ -1,13 +1,13 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json index e9f59cca7cc0..e0b301b255f0 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json @@ -1,23 +1,23 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myService", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myService", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json index 8edd60ad4200..1c0e781d0ec2 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json @@ -1,34 +1,34 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "Service East", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "eastus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - }, - { - "name": "Service West", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "westus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Service East", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "eastus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } + }, + { + "name": "Service West", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "westus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json index 2fdd120aa40e..f9ffda6feb65 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json @@ -1,31 +1,31 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "ContosoSvc1Topology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso1ArtifactSource" - } - }, - { - "name": "ContosoSvc2Topology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso2ArtifactSource" - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "ContosoSvc1Topology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso1ArtifactSource" + } + }, + { + "name": "ContosoSvc2Topology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso2ArtifactSource" + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json index fbf1d2590f05..fdc32d53fffb 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json @@ -1,28 +1,28 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview", - "serviceTopologyInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } - }, - "responses": { - "201": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview", + "serviceTopologyInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" + } + } + }, + "responses": { + "201": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json index e622f7fa11e8..792c63cf4fbf 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json @@ -1,26 +1,24 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview", - "serviceTopologyInfo": { - "location": "centralus", - "tags": {}, - "properties": { - } - } - }, - "responses": { - "201": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview", + "serviceTopologyInfo": { + "location": "centralus", + "tags": {}, + "properties": {} } -} \ No newline at end of file + }, + "responses": { + "201": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": {} + } + } + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json index ef0abe0d2609..475c1dd213d6 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json index ac036b32147d..1c1d32c3031e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json @@ -1,21 +1,21 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json index 96edfad758e8..e1b0f0af48c8 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview", - "serviceUnitInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview", + "serviceUnitInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" } - }, - "responses": { - "201": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json index a5a4bd897d0e..6db5d722105b 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview", - "serviceUnitInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", - "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview", + "serviceUnitInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", + "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } - }, - "responses": { - "201": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", - "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", + "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json index 2e9ecdc6183f..d01b54bd7666 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json @@ -1,14 +1,14 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json index 1bdbe6f34d6f..39d26d54d6ca 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json @@ -1,28 +1,28 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json index c7d5a4e0d71b..7a3348c56b35 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json @@ -1,43 +1,43 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "BackEndServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/backend.template.json", - "parametersArtifactSourceRelativePath": "parameter/backend.parameters.json" - } - } - }, - { - "name": "FrontEndServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Complete", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/frontend.template.json", - "parametersArtifactSourceRelativePath": "parameter/frontend.parameters.json" - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "BackEndServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/backend.template.json", + "parametersArtifactSourceRelativePath": "parameter/backend.parameters.json" + } + } + }, + { + "name": "FrontEndServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Complete", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/frontend.template.json", + "parametersArtifactSourceRelativePath": "parameter/frontend.parameters.json" + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json index 987f1fa0c2ff..a15bc6d95257 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "deploymentStep1", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "deploymentStep1", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json index da493554e61a..9003d66939ed 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json @@ -1,24 +1,24 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "waitStep", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "deploymentStep1", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "waitStep", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "deploymentStep1", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json index cc21360eb0f5..b7c5e8bd2b2a 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json @@ -1,150 +1,150 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "healthCheckStep", - "api-version": "2019-11-01-preview", - "stepInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "HealthCheck", - "attributes": { - "waitDuration": "PT15M", - "maxElasticDuration": "PT30M", - "healthyStateDuration": "PT2H", - "type": "REST", - "properties": { - "healthChecks": [ - { - "name": "appHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "Code", - "in": "Query", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-App", - "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", - "(?mi)^(\"application_host\": 94781052)$" - ] - } - } - }, - { - "name": "serviceHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "code", - "in": "Header", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-Service-EndToEnd", - "(?i)\"health_status\":((.|\n)*)\"(green)\"" - ] - } - } - } - ] - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "healthCheckStep", + "api-version": "2019-11-01-preview", + "stepInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "HealthCheck", + "attributes": { + "waitDuration": "PT15M", + "maxElasticDuration": "PT30M", + "healthyStateDuration": "PT2H", + "type": "REST", + "properties": { + "healthChecks": [ + { + "name": "appHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "Code", + "in": "Query", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-App", + "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", + "(?mi)^(\"application_host\": 94781052)$" + ] + } } - } + }, + { + "name": "serviceHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "code", + "in": "Header", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-Service-EndToEnd", + "(?i)\"health_status\":((.|\n)*)\"(green)\"" + ] + } + } + } + ] + } } - }, - "responses": { - "201": { - "body": { - "name": "healthCheckStep", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "HealthCheck", - "attributes": { - "waitDuration": "PT15M", - "maxElasticDuration": "PT30M", - "healthyStateDuration": "PT2H", - "type": "REST", - "properties": { - "healthChecks": [ - { - "name": "appHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "Code", - "in": "Query", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-App", - "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", - "(?mi)^(\"application_host\": 94781052)$" - ] - } - } - }, - { - "name": "serviceHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "code", - "in": "Header", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-Service-EndToEnd", - "(?i)\"health_status\":((.|\n)*)\"(green)\"" - ] - } - } - } - ] - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "healthCheckStep", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "HealthCheck", + "attributes": { + "waitDuration": "PT15M", + "maxElasticDuration": "PT30M", + "healthyStateDuration": "PT2H", + "type": "REST", + "properties": { + "healthChecks": [ + { + "name": "appHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "Code", + "in": "Query", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-App", + "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", + "(?mi)^(\"application_host\": 94781052)$" + ] + } + } + }, + { + "name": "serviceHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "code", + "in": "Header", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-Service-EndToEnd", + "(?i)\"health_status\":((.|\n)*)\"(green)\"" + ] } + } } + ] } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json index 92a3f5563add..b296e83f2281 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json @@ -1,34 +1,34 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "waitStep", - "api-version": "2019-11-01-preview", - "stepInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "waitStep", + "api-version": "2019-11-01-preview", + "stepInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" } - }, - "responses": { - "201": { - "body": { - "name": "waitStep", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "waitStep", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json index b18db31e93f2..6990300763ab 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json @@ -1,37 +1,37 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "waitStepfrontEnd", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT10M" - } - } - }, - { - "name": "waitStepBackEnd", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT30M" - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "waitStepfrontEnd", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT10M" + } + } + }, + { + "name": "waitStepBackEnd", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT30M" + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json new file mode 100644 index 000000000000..461026a2fdfa --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json @@ -0,0 +1,3056 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-01-23-preview", + "title": "Desktop Virtualization API Client" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "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": { + "/providers/Microsoft.DesktopVirtualization/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "List all of the available operations the Desktop Virtualization resource provider supports.", + "x-ms-examples": { + "OperationDescription_List": { + "$ref": "./examples/OperationDescription_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Get", + "description": "Get a workspace.", + "x-ms-examples": { + "Workspace_Get": { + "$ref": "./examples/Workspace_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "x-ms-examples": { + "Workspace_Create": { + "$ref": "./examples/Workspace_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Successfully created workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Delete", + "description": "Remove a workspace.", + "x-ms-examples": { + "Workspace_Delete": { + "$ref": "./examples/Workspace_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted workspace." + }, + "204": { + "description": "Workspace does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Update", + "description": "Update a workspace.", + "x-ms-examples": { + "Workspace_Update": { + "$ref": "./examples/Workspace_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "List workspaces.", + "x-ms-examples": { + "Workspace_ListByResourceGroup": { + "$ref": "./examples/Workspace_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in resource group.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "List workspaces in subscription.", + "x-ms-examples": { + "Workspace_ListBySubscription": { + "$ref": "./examples/Workspace_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in subscription.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/userApplicationGroupAssignments": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroupAssignments_WorkspaceLevelList", + "description": "List application group that user can use.", + "x-ms-examples": { + "ApplicationGroupAssignment_WorkspaceLevelList": { + "$ref": "./examples/ApplicationGroupAssignment_WorkspaceLevelList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user application group assignments in workspace.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Get", + "description": "Get an application group.", + "x-ms-examples": { + "ApplicationGroup_Get": { + "$ref": "./examples/ApplicationGroup_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_CreateOrUpdate", + "description": "Create or update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Create": { + "$ref": "./examples/ApplicationGroup_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "201": { + "description": "Successfully created application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Delete", + "description": "Remove an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Delete": { + "$ref": "./examples/ApplicationGroup_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application group." + }, + "204": { + "description": "Application group does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Update", + "description": "Update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroups_Update": { + "$ref": "./examples/ApplicationGroup_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationGroupPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListByResourceGroup", + "description": "List applicationGroups.", + "x-ms-examples": { + "ApplicationGroup_ListByResourceGroup": { + "$ref": "./examples/ApplicationGroup_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in resource group.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListBySubscription", + "description": "List applicationGroups in subscription.", + "x-ms-examples": { + "ApplicationGroup_List": { + "$ref": "./examples/ApplicationGroup_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in subscription.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems": { + "get": { + "tags": [ + "StartMenuItem" + ], + "operationId": "StartMenuItems_List", + "description": "List start menu items in the given application group.", + "x-ms-examples": { + "StartMenuItem_List": { + "$ref": "./examples/StartMenuItem_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved start menu items in application group.", + "schema": { + "$ref": "#/definitions/StartMenuItemList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "description": "Get an application.", + "x-ms-examples": { + "Application_Get": { + "$ref": "./examples/Application_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "description": "Create or update an application.", + "x-ms-examples": { + "Application_Create": { + "$ref": "./examples/Application_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "201": { + "description": "Successfully created application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "description": "Remove an application.", + "x-ms-examples": { + "Application_Delete": { + "$ref": "./examples/Application_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application." + }, + "204": { + "description": "Application does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "description": "Update an application.", + "x-ms-examples": { + "Application_Update": { + "$ref": "./examples/Application_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "description": "List applications.", + "x-ms-examples": { + "Applications_List": { + "$ref": "./examples/Application_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved applications in application group.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Get", + "description": "Get a desktop.", + "x-ms-examples": { + "Desktop_Get": { + "$ref": "./examples/Desktop_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Update", + "description": "Update a desktop.", + "x-ms-examples": { + "Desktop_Update": { + "$ref": "./examples/Desktop_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + }, + { + "name": "desktop", + "description": "Object containing Desktop definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/DesktopPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_List", + "description": "List desktops.", + "x-ms-examples": { + "Desktop_List": { + "$ref": "./examples/Desktop_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktops in application group.", + "schema": { + "$ref": "#/definitions/DesktopList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Get", + "description": "Get a host pool.", + "x-ms-examples": { + "HostPool_Get": { + "$ref": "./examples/HostPool_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_CreateOrUpdate", + "description": "Create or update a host pool.", + "x-ms-examples": { + "HostPool_Create": { + "$ref": "./examples/HostPool_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HostPool" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "201": { + "description": "Successfully created host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Delete", + "description": "Remove a host pool.", + "x-ms-examples": { + "HostPool_Delete": { + "$ref": "./examples/HostPool_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to delete sessionHost." + } + ], + "responses": { + "200": { + "description": "Successfully removed host pool." + }, + "204": { + "description": "Host pool does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Update", + "description": "Update a host pool.", + "x-ms-examples": { + "HostPool_Update": { + "$ref": "./examples/HostPool_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/HostPoolPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_ListByResourceGroup", + "description": "List hostPools.", + "x-ms-examples": { + "HostPool_ListByResourceGroup": { + "$ref": "./examples/HostPool_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_List", + "description": "List hostPools in subscription.", + "x-ms-examples": { + "HostPool_List": { + "$ref": "./examples/HostPool_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in subscription.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_ListByHostPool", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_ListByHostPool": { + "$ref": "./examples/UserSession_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in host pool.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Get", + "description": "Get a session host.", + "x-ms-examples": { + "SessionHost_Get": { + "$ref": "./examples/SessionHost_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Delete", + "description": "Remove a SessionHost.", + "x-ms-examples": { + "SessionHost_Delete": { + "$ref": "./examples/SessionHost_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to force sessionHost deletion even when userSession exists." + } + ], + "responses": { + "200": { + "description": "Successfully removed session host." + }, + "204": { + "description": "Session host does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Update", + "description": "Update a session host.", + "x-ms-examples": { + "SessionHost_Update": { + "$ref": "./examples/SessionHost_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "sessionHost", + "description": "Object containing SessionHost definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SessionHostPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_List", + "description": "List sessionHosts.", + "x-ms-examples": { + "SessionHost_List": { + "$ref": "./examples/SessionHost_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session hosts in host pool.", + "schema": { + "$ref": "#/definitions/SessionHostList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/activeApplications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "ActiveApplications_ListBySessionHost", + "description": "List applications for the given session host.", + "x-ms-examples": { + "ActiveApplications_List": { + "$ref": "./examples/ActiveApplication_ListBySessionHost.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved active applications in session host.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Get", + "description": "Get a userSession.", + "x-ms-examples": { + "UserSession_Get": { + "$ref": "./examples/UserSession_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user session.", + "schema": { + "$ref": "#/definitions/UserSession" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Delete", + "description": "Remove a userSession.", + "x-ms-examples": { + "UserSession_Delete": { + "$ref": "./examples/UserSession_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to login off userSession." + } + ], + "responses": { + "200": { + "description": "Successfully removed user session." + }, + "204": { + "description": "User session does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_List", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_List": { + "$ref": "./examples/UserSession_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in session host.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Disconnect", + "description": "Disconnect a userSession.", + "x-ms-examples": { + "UserSession_Disconnect_Post": { + "$ref": "./examples/UserSession_Disconnect_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disconnected user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_SendMessage", + "description": "Send a message to a user.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/UserSession_SendMessage_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "sendMessage", + "description": "Object containing message includes title and message body", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SendMessage" + } + } + ], + "responses": { + "200": { + "description": "Successfully sent message to user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CloudError": { + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error response of an operation failure" + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft Desktop Virtualization.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + } + } + }, + "Workspace": { + "type": "object", + "description": "Represents a Workspace definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties" + } + } + }, + "WorkspaceProperties": { + "description": "Schema for Workspace properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup resource Ids.", + "items": { + "type": "string" + } + } + } + }, + "WorkspaceList": { + "type": "object", + "title": "WorkspaceList", + "description": "List of Workspace definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Workspace definitions.", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "WorkspacePatch": { + "type": "object", + "description": "Workspace properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspacePatchProperties" + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + } + } + }, + "ApplicationGroup": { + "type": "object", + "description": "Represents a ApplicationGroup definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for ApplicationGroup", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupProperties" + } + } + }, + "ApplicationGroupProperties": { + "description": "Schema for ApplicationGroup properties.", + "type": "object", + "required": [ + "hostPoolArmPath", + "applicationGroupType" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup.", + "x-nullable": false + }, + "workspaceArmPath": { + "type": "string", + "description": "Workspace arm path of ApplicationGroup.", + "readOnly": true + }, + "applicationGroupType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationGroupType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of ApplicationGroup.", + "x-nullable": false + } + } + }, + "ApplicationGroupPatch": { + "type": "object", + "description": "ApplicationGroup properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "ApplicationGroup properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupPatchProperties" + } + } + }, + "ApplicationGroupPatchProperties": { + "description": "ApplicationGroup properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + } + } + }, + "ApplicationGroupList": { + "type": "object", + "title": "ApplicationGroupList", + "description": "List of ApplicationGroup definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of ApplicationGroup definitions.", + "items": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "HostPool": { + "type": "object", + "description": "Represents a HostPool definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for HostPool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolProperties" + } + } + }, + "HostPoolProperties": { + "description": "Properties of HostPool.", + "type": "object", + "required": [ + "hostPoolType", + "personalDesktopAssignmentType", + "loadBalancerType" + ], + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool.", + "x-nullable": false + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer.", + "x-nullable": false + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfo", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "applicationGroupReferences": { + "readOnly": true, + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "HostPoolPatch": { + "type": "object", + "description": "HostPool properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "HostPool properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolPatchProperties" + } + } + }, + "HostPoolPatchProperties": { + "description": "Properties of HostPool.", + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer." + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfoPatch", + "description": "The registration info of HostPool." + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "RegistrationInfo": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + }, + "resetToken": { + "type": "boolean", + "description": "Update registration token." + } + } + }, + "RegistrationInfoPatch": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "resetToken": { + "type": "boolean", + "description": "Update registration token." + } + } + }, + "SendMessage": { + "description": "Represents message sent to a UserSession.", + "type": "object", + "properties": { + "messageTitle": { + "type": "string", + "description": "Title of message." + }, + "messageBody": { + "type": "string", + "description": "Body of message." + } + } + }, + "HostPoolList": { + "type": "object", + "title": "HostPoolList", + "description": "List of HostPool definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of HostPool definitions.", + "items": { + "$ref": "#/definitions/HostPool" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "Application": { + "description": "Schema for Application properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties" + } + } + }, + "ApplicationProperties": { + "description": "Schema for Application properties.", + "type": "object", + "required": [ + "commandLineSetting" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all.", + "x-nullable": false + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "ApplicationList": { + "type": "object", + "title": "ApplicationList", + "description": "List of Application definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Application definitions.", + "items": { + "$ref": "#/definitions/Application" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ApplicationPatch": { + "type": "object", + "description": "Application properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPatchProperties" + } + } + }, + "ApplicationPatchProperties": { + "description": "Application properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "Desktop": { + "description": "Schema for Desktop properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopProperties" + } + } + }, + "DesktopProperties": { + "description": "Schema for Desktop properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "The icon a 64 bit string as a byte array." + } + } + }, + "DesktopList": { + "type": "object", + "title": "DesktopList", + "description": "List of Desktop definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Desktop definitions.", + "items": { + "$ref": "#/definitions/Desktop" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "DesktopPatch": { + "type": "object", + "description": "Desktop properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopPatchProperties" + } + } + }, + "DesktopPatchProperties": { + "description": "Desktop properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + } + } + }, + "StartMenuItemProperties": { + "description": "Schema for StartMenuItem properties.", + "type": "object", + "properties": { + "appAlias": { + "type": "string", + "description": "Alias of StartMenuItem." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of StartMenuItem." + }, + "filePath": { + "type": "string", + "description": "Path to the file of StartMenuItem." + }, + "commandLineArguments": { + "type": "string", + "description": "Command line arguments for StartMenuItem." + }, + "iconPath": { + "type": "string", + "description": "Path to the icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "StartMenuItem": { + "type": "object", + "description": "Represents a StartMenuItem definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for StartMenuItem", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StartMenuItemProperties" + } + } + }, + "StartMenuItemList": { + "type": "object", + "title": "StartMenuItemList", + "description": "List of StartMenuItem definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of StartMenuItem definitions.", + "items": { + "$ref": "#/definitions/StartMenuItem" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "SessionHost": { + "type": "object", + "description": "Represents a SessionHost definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostProperties" + } + } + }, + "SessionHostProperties": { + "description": "Schema for SessionHost properties.", + "type": "object", + "properties": { + "lastHeartBeat": { + "format": "date-time", + "type": "string", + "description": "Last heart beat from SessionHost." + }, + "sessions": { + "type": "integer", + "description": "Number of sessions on SessionHost." + }, + "agentVersion": { + "type": "string", + "description": "Version of agent on SessionHost." + }, + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + }, + "status": { + "enum": [ + "Available", + "Unavailable", + "Shutdown", + "Disconnected", + "Upgrading", + "UpgradeFailed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + }, + "type": "string", + "description": "Status for a SessionHost." + }, + "statusTimestamp": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the status.", + "readOnly": true + }, + "osVersion": { + "type": "string", + "description": "The version of the OS on the session host." + }, + "sxSStackVersion": { + "type": "string", + "description": "The version of the side by side stack on the session host." + }, + "updateState": { + "enum": [ + "Initial", + "Pending", + "Started", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "UpdateState", + "modelAsString": true + }, + "type": "string", + "description": "Update state of a SessionHost." + }, + "lastUpdateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + }, + "updateErrorMessage": { + "type": "string", + "description": "The error message." + } + } + }, + "SessionHostPatch": { + "type": "object", + "description": "SessionHost properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostPatchProperties" + } + } + }, + "SessionHostPatchProperties": { + "description": "SessionHost properties that can be patched.", + "type": "object", + "properties": { + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + } + } + }, + "SessionHostList": { + "type": "object", + "title": "SessionHostList", + "description": "List of SessionHost definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of SessionHost definitions.", + "items": { + "$ref": "#/definitions/SessionHost" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "UserSession": { + "type": "object", + "description": "Represents a UserSession definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for UserSession", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserSessionProperties" + } + } + }, + "UserSessionProperties": { + "description": "Schema for UserSession properties.", + "type": "object", + "properties": { + "userPrincipalName": { + "type": "string", + "description": "The user principal name." + }, + "applicationType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Application type of application." + }, + "sessionState": { + "enum": [ + "Unknown", + "Active", + "Disconnected", + "Pending", + "LogOff", + "UserProfileDiskMounted" + ], + "x-ms-enum": { + "name": "SessionState", + "modelAsString": true + }, + "type": "string", + "description": "State of user session." + }, + "activeDirectoryUserName": { + "type": "string", + "description": "The active directory user name." + }, + "createTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the user session create." + } + } + }, + "UserSessionList": { + "type": "object", + "title": "UserSessionList", + "description": "List of UserSession definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of UserSession definitions.", + "items": { + "$ref": "#/definitions/UserSession" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + } + }, + "parameters": { + "HostPoolNameParameter": { + "name": "hostPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the host pool within the specified resource group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationGroupNameParameter": { + "name": "applicationGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application within the specified application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DesktopNameParameter": { + "name": "desktopName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the desktop within the specified desktop group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "SessionHostNameParameter": { + "name": "sessionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the session host within the specified host pool", + "maxLength": 48, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "UserSessionIdParameter": { + "name": "userSessionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user session within the specified session host", + "maxLength": 24, + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "StartMenuItemNameParameter": { + "name": "startMenuItemName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the start menu item within the specified host pool", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ActiveApplication_ListBySessionHost.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ActiveApplication_ListBySessionHost.json new file mode 100644 index 000000000000..5df22a508d50 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ActiveApplication_ListBySessionHost.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-01-23-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json new file mode 100644 index 000000000000..9846c97f6936 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-01-23-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Create.json new file mode 100644 index 000000000000..c75ce77be78f --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview", + "applicationGroup": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "applicationGroupType": "RemoteApp" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + }, + "201": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Delete.json new file mode 100644 index 000000000000..ae2bbf71e8cc --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Delete.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Get.json new file mode 100644 index 000000000000..56dcd59e08c8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListByResourceGroup.json new file mode 100644 index 000000000000..1c60b9541d56 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-01-23-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListBySubscription.json new file mode 100644 index 000000000000..29effd39da89 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_ListBySubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-01-23-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Update.json new file mode 100644 index 000000000000..2f206a5f4560 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/ApplicationGroup_Update.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview", + "applicationGroup": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Create.json new file mode 100644 index 000000000000..684a81bf75f9 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-01-23-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + }, + "201": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Delete.json new file mode 100644 index 000000000000..eb471d6e7f5c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Get.json new file mode 100644 index 000000000000..3cb0ca998e75 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_List.json new file mode 100644 index 000000000000..a49c11d5a7d5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Update.json new file mode 100644 index 000000000000..0c7295dc9509 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Application_Update.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-01-23-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Get.json new file mode 100644 index 000000000000..1222158ca13d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_List.json new file mode 100644 index 000000000000..36d5bcd19668 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Update.json new file mode 100644 index 000000000000..874ccd517df5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Desktop_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-01-23-preview", + "desktop": { + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/desktops/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Create.json new file mode 100644 index 000000000000..1aa50229fc28 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Create.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview", + "hostPool": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "resetToken": true + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": true + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "201": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": true + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Delete.json new file mode 100644 index 000000000000..4a35ba990066 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Delete.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview", + "force": true + }, + "responses": { + "200": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Get.json new file mode 100644 index 000000000000..83915696ba13 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_List.json new file mode 100644 index 000000000000..3b8929f94dd4 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_List.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_ListByResourceGroup.json new file mode 100644 index 000000000000..e8ad41224d96 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_ListByResourceGroup.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Update.json new file mode 100644 index 000000000000..f82f0feaea5b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/HostPool_Update.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview", + "hostPool": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "personalDesktopAssignmentType": "Automatic", + "registrationInfo": { + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "resetToken": false + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/OperationDescription_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/OperationDescription_List.json new file mode 100644 index 000000000000..f8b4fa7714f1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/OperationDescription_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DesktopVirtualization/ssocontext/read", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + }, + { + "name": "Microsoft.DesktopVirtualization/ssocontext/write", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Delete.json new file mode 100644 index 000000000000..6d95001e8311 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-01-23-preview", + "force": true + }, + "responses": { + "200": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Get.json new file mode 100644 index 000000000000..07246deb3a64 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_List.json new file mode 100644 index 000000000000..2618ca58698c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_List.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + { + "name": "sessionHost2.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost2microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user2@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Update.json new file mode 100644 index 000000000000..794cb51fc0c5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/SessionHost_Update.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-01-23-preview", + "sessionHost": { + "properties": { + "allowNewSession": true, + "assignedUser": "user1@microsoft.com" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2019-01-11T19:27:13.6108027Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2019-01-24T20:00:08.2893033Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/StartMenuItem_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/StartMenuItem_List.json new file mode 100644 index 000000000000..6adb97a59168 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/StartMenuItem_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "word", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + }, + { + "name": "application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "excel", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Delete.json new file mode 100644 index 000000000000..9e3f7954e56d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Delete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-01-23-preview", + "force": true + }, + "responses": { + "200": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Disconnect_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Disconnect_Post.json new file mode 100644 index 000000000000..6e3eda65d3a9 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Disconnect_Post.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Get.json new file mode 100644 index 000000000000..920cecc824a5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_List.json new file mode 100644 index 000000000000..20727ed16872 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_List.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_ListByHostPool.json new file mode 100644 index 000000000000..c11c2c48fe62 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_ListByHostPool.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-01-23-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com' and state eq 'active'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_SendMessage_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_SendMessage_Post.json new file mode 100644 index 000000000000..e9b9ea50e324 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/UserSession_SendMessage_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-01-23-preview", + "sendMessage": { + "messageTitle": "title", + "messageBody": "body" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Create.json new file mode 100644 index 000000000000..136ed75d9cca --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-01-23-preview", + "workspace": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "201": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Delete.json new file mode 100644 index 000000000000..913ef919c812 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Delete.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Get.json new file mode 100644 index 000000000000..691cbf19aa88 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListByResourceGroup.json new file mode 100644 index 000000000000..69d2b0d9642c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListBySubscription.json new file mode 100644 index 000000000000..2da968f5302b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_ListBySubscription.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-01-23-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Update.json new file mode 100644 index 000000000000..7398e946deab --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/examples/Workspace_Update.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-01-23-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json new file mode 100644 index 000000000000..d75ddf4291a2 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json @@ -0,0 +1,3075 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-09-24-preview", + "title": "Desktop Virtualization API Client" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "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": { + "/providers/Microsoft.DesktopVirtualization/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "List all of the available operations the Desktop Virtualization resource provider supports.", + "x-ms-examples": { + "OperationDescription_List": { + "$ref": "./examples/OperationDescription_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Get", + "description": "Get a workspace.", + "x-ms-examples": { + "Workspace_Get": { + "$ref": "./examples/Workspace_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "x-ms-examples": { + "Workspace_Create": { + "$ref": "./examples/Workspace_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Successfully created workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Delete", + "description": "Remove a workspace.", + "x-ms-examples": { + "Workspace_Delete": { + "$ref": "./examples/Workspace_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted workspace." + }, + "204": { + "description": "Workspace does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Update", + "description": "Update a workspace.", + "x-ms-examples": { + "Workspace_Update": { + "$ref": "./examples/Workspace_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "List workspaces.", + "x-ms-examples": { + "Workspace_ListByResourceGroup": { + "$ref": "./examples/Workspace_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in resource group.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "List workspaces in subscription.", + "x-ms-examples": { + "Workspace_ListBySubscription": { + "$ref": "./examples/Workspace_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in subscription.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/userApplicationGroupAssignments": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroupAssignments_WorkspaceLevelList", + "description": "List application group that user can use.", + "x-ms-examples": { + "ApplicationGroupAssignment_WorkspaceLevelList": { + "$ref": "./examples/ApplicationGroupAssignment_WorkspaceLevelList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user application group assignments in workspace.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Get", + "description": "Get an application group.", + "x-ms-examples": { + "ApplicationGroup_Get": { + "$ref": "./examples/ApplicationGroup_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_CreateOrUpdate", + "description": "Create or update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Create": { + "$ref": "./examples/ApplicationGroup_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "201": { + "description": "Successfully created application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Delete", + "description": "Remove an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Delete": { + "$ref": "./examples/ApplicationGroup_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application group." + }, + "204": { + "description": "Application group does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Update", + "description": "Update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroups_Update": { + "$ref": "./examples/ApplicationGroup_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationGroupPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListByResourceGroup", + "description": "List applicationGroups.", + "x-ms-examples": { + "ApplicationGroup_ListByResourceGroup": { + "$ref": "./examples/ApplicationGroup_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in resource group.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListBySubscription", + "description": "List applicationGroups in subscription.", + "x-ms-examples": { + "ApplicationGroup_List": { + "$ref": "./examples/ApplicationGroup_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in subscription.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems": { + "get": { + "tags": [ + "StartMenuItem" + ], + "operationId": "StartMenuItems_List", + "description": "List start menu items in the given application group.", + "x-ms-examples": { + "StartMenuItem_List": { + "$ref": "./examples/StartMenuItem_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved start menu items in application group.", + "schema": { + "$ref": "#/definitions/StartMenuItemList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "description": "Get an application.", + "x-ms-examples": { + "Application_Get": { + "$ref": "./examples/Application_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "description": "Create or update an application.", + "x-ms-examples": { + "Application_Create": { + "$ref": "./examples/Application_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "201": { + "description": "Successfully created application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "description": "Remove an application.", + "x-ms-examples": { + "Application_Delete": { + "$ref": "./examples/Application_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application." + }, + "204": { + "description": "Application does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "description": "Update an application.", + "x-ms-examples": { + "Application_Update": { + "$ref": "./examples/Application_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "description": "List applications.", + "x-ms-examples": { + "Applications_List": { + "$ref": "./examples/Application_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved applications in application group.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Get", + "description": "Get a desktop.", + "x-ms-examples": { + "Desktop_Get": { + "$ref": "./examples/Desktop_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Update", + "description": "Update a desktop.", + "x-ms-examples": { + "Desktop_Update": { + "$ref": "./examples/Desktop_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + }, + { + "name": "desktop", + "description": "Object containing Desktop definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/DesktopPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_List", + "description": "List desktops.", + "x-ms-examples": { + "Desktop_List": { + "$ref": "./examples/Desktop_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktops in application group.", + "schema": { + "$ref": "#/definitions/DesktopList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Get", + "description": "Get a host pool.", + "x-ms-examples": { + "HostPool_Get": { + "$ref": "./examples/HostPool_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_CreateOrUpdate", + "description": "Create or update a host pool.", + "x-ms-examples": { + "HostPool_Create": { + "$ref": "./examples/HostPool_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HostPool" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "201": { + "description": "Successfully created host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Delete", + "description": "Remove a host pool.", + "x-ms-examples": { + "HostPool_Delete": { + "$ref": "./examples/HostPool_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to delete sessionHost." + } + ], + "responses": { + "200": { + "description": "Successfully removed host pool." + }, + "204": { + "description": "Host pool does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Update", + "description": "Update a host pool.", + "x-ms-examples": { + "HostPool_Update": { + "$ref": "./examples/HostPool_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/HostPoolPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_ListByResourceGroup", + "description": "List hostPools.", + "x-ms-examples": { + "HostPool_ListByResourceGroup": { + "$ref": "./examples/HostPool_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_List", + "description": "List hostPools in subscription.", + "x-ms-examples": { + "HostPool_List": { + "$ref": "./examples/HostPool_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in subscription.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_ListByHostPool", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_ListByHostPool": { + "$ref": "./examples/UserSession_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in host pool.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Get", + "description": "Get a session host.", + "x-ms-examples": { + "SessionHost_Get": { + "$ref": "./examples/SessionHost_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Delete", + "description": "Remove a SessionHost.", + "x-ms-examples": { + "SessionHost_Delete": { + "$ref": "./examples/SessionHost_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to force sessionHost deletion even when userSession exists." + } + ], + "responses": { + "200": { + "description": "Successfully removed session host." + }, + "204": { + "description": "Session host does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Update", + "description": "Update a session host.", + "x-ms-examples": { + "SessionHost_Update": { + "$ref": "./examples/SessionHost_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "sessionHost", + "description": "Object containing SessionHost definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SessionHostPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_List", + "description": "List sessionHosts.", + "x-ms-examples": { + "SessionHost_List": { + "$ref": "./examples/SessionHost_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session hosts in host pool.", + "schema": { + "$ref": "#/definitions/SessionHostList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/activeApplications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "ActiveApplications_ListBySessionHost", + "description": "List applications for the given session host.", + "x-ms-examples": { + "ActiveApplications_List": { + "$ref": "./examples/ActiveApplication_ListBySessionHost.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved active applications in session host.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Get", + "description": "Get a userSession.", + "x-ms-examples": { + "UserSession_Get": { + "$ref": "./examples/UserSession_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user session.", + "schema": { + "$ref": "#/definitions/UserSession" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Delete", + "description": "Remove a userSession.", + "x-ms-examples": { + "UserSession_Delete": { + "$ref": "./examples/UserSession_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to login off userSession." + } + ], + "responses": { + "200": { + "description": "Successfully removed user session." + }, + "204": { + "description": "User session does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_List", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_List": { + "$ref": "./examples/UserSession_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in session host.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Disconnect", + "description": "Disconnect a userSession.", + "x-ms-examples": { + "UserSession_Disconnect_Post": { + "$ref": "./examples/UserSession_Disconnect_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disconnected user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_SendMessage", + "description": "Send a message to a user.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/UserSession_SendMessage_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "sendMessage", + "description": "Object containing message includes title and message body", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SendMessage" + } + } + ], + "responses": { + "200": { + "description": "Successfully sent message to user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CloudError": { + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error response of an operation failure" + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft Desktop Virtualization.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + } + } + }, + "Workspace": { + "type": "object", + "description": "Represents a Workspace definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties" + } + } + }, + "WorkspaceProperties": { + "description": "Schema for Workspace properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup resource Ids.", + "items": { + "type": "string" + } + } + } + }, + "WorkspaceList": { + "type": "object", + "title": "WorkspaceList", + "description": "List of Workspace definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Workspace definitions.", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "WorkspacePatch": { + "type": "object", + "description": "Workspace properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspacePatchProperties" + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + } + } + }, + "ApplicationGroup": { + "type": "object", + "description": "Represents a ApplicationGroup definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for ApplicationGroup", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupProperties" + } + } + }, + "ApplicationGroupProperties": { + "description": "Schema for ApplicationGroup properties.", + "type": "object", + "required": [ + "hostPoolArmPath", + "applicationGroupType" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup.", + "x-nullable": false + }, + "workspaceArmPath": { + "type": "string", + "description": "Workspace arm path of ApplicationGroup.", + "readOnly": true + }, + "applicationGroupType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationGroupType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of ApplicationGroup.", + "x-nullable": false + } + } + }, + "ApplicationGroupPatch": { + "type": "object", + "description": "ApplicationGroup properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "ApplicationGroup properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupPatchProperties" + } + } + }, + "ApplicationGroupPatchProperties": { + "description": "ApplicationGroup properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + } + } + }, + "ApplicationGroupList": { + "type": "object", + "title": "ApplicationGroupList", + "description": "List of ApplicationGroup definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of ApplicationGroup definitions.", + "items": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "HostPool": { + "type": "object", + "description": "Represents a HostPool definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for HostPool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolProperties" + } + } + }, + "HostPoolProperties": { + "description": "Properties of HostPool.", + "type": "object", + "required": [ + "hostPoolType", + "personalDesktopAssignmentType", + "loadBalancerType" + ], + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool.", + "x-nullable": false + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer.", + "x-nullable": false + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfo", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "applicationGroupReferences": { + "readOnly": true, + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "HostPoolPatch": { + "type": "object", + "description": "HostPool properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "HostPool properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolPatchProperties" + } + } + }, + "HostPoolPatchProperties": { + "description": "Properties of HostPool.", + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer." + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfoPatch", + "description": "The registration info of HostPool." + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "RegistrationInfo": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token.", + "x-nullable": false + } + } + }, + "RegistrationInfoPatch": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token." + } + } + }, + "SendMessage": { + "description": "Represents message sent to a UserSession.", + "type": "object", + "properties": { + "messageTitle": { + "type": "string", + "description": "Title of message." + }, + "messageBody": { + "type": "string", + "description": "Body of message." + } + } + }, + "HostPoolList": { + "type": "object", + "title": "HostPoolList", + "description": "List of HostPool definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of HostPool definitions.", + "items": { + "$ref": "#/definitions/HostPool" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "Application": { + "description": "Schema for Application properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties" + } + } + }, + "ApplicationProperties": { + "description": "Schema for Application properties.", + "type": "object", + "required": [ + "commandLineSetting" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all.", + "x-nullable": false + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "ApplicationList": { + "type": "object", + "title": "ApplicationList", + "description": "List of Application definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Application definitions.", + "items": { + "$ref": "#/definitions/Application" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ApplicationPatch": { + "type": "object", + "description": "Application properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPatchProperties" + } + } + }, + "ApplicationPatchProperties": { + "description": "Application properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "Desktop": { + "description": "Schema for Desktop properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopProperties" + } + } + }, + "DesktopProperties": { + "description": "Schema for Desktop properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "The icon a 64 bit string as a byte array." + } + } + }, + "DesktopList": { + "type": "object", + "title": "DesktopList", + "description": "List of Desktop definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Desktop definitions.", + "items": { + "$ref": "#/definitions/Desktop" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "DesktopPatch": { + "type": "object", + "description": "Desktop properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopPatchProperties" + } + } + }, + "DesktopPatchProperties": { + "description": "Desktop properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + } + } + }, + "StartMenuItemProperties": { + "description": "Schema for StartMenuItem properties.", + "type": "object", + "properties": { + "appAlias": { + "type": "string", + "description": "Alias of StartMenuItem." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of StartMenuItem." + }, + "filePath": { + "type": "string", + "description": "Path to the file of StartMenuItem." + }, + "commandLineArguments": { + "type": "string", + "description": "Command line arguments for StartMenuItem." + }, + "iconPath": { + "type": "string", + "description": "Path to the icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "StartMenuItem": { + "type": "object", + "description": "Represents a StartMenuItem definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for StartMenuItem", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StartMenuItemProperties" + } + } + }, + "StartMenuItemList": { + "type": "object", + "title": "StartMenuItemList", + "description": "List of StartMenuItem definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of StartMenuItem definitions.", + "items": { + "$ref": "#/definitions/StartMenuItem" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "SessionHost": { + "type": "object", + "description": "Represents a SessionHost definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostProperties" + } + } + }, + "SessionHostProperties": { + "description": "Schema for SessionHost properties.", + "type": "object", + "properties": { + "lastHeartBeat": { + "format": "date-time", + "type": "string", + "description": "Last heart beat from SessionHost." + }, + "sessions": { + "type": "integer", + "description": "Number of sessions on SessionHost." + }, + "agentVersion": { + "type": "string", + "description": "Version of agent on SessionHost." + }, + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + }, + "status": { + "enum": [ + "Available", + "Unavailable", + "Shutdown", + "Disconnected", + "Upgrading", + "UpgradeFailed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + }, + "type": "string", + "description": "Status for a SessionHost." + }, + "statusTimestamp": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the status.", + "readOnly": true + }, + "osVersion": { + "type": "string", + "description": "The version of the OS on the session host." + }, + "sxSStackVersion": { + "type": "string", + "description": "The version of the side by side stack on the session host." + }, + "updateState": { + "enum": [ + "Initial", + "Pending", + "Started", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "UpdateState", + "modelAsString": true + }, + "type": "string", + "description": "Update state of a SessionHost." + }, + "lastUpdateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + }, + "updateErrorMessage": { + "type": "string", + "description": "The error message." + } + } + }, + "SessionHostPatch": { + "type": "object", + "description": "SessionHost properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostPatchProperties" + } + } + }, + "SessionHostPatchProperties": { + "description": "SessionHost properties that can be patched.", + "type": "object", + "properties": { + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + } + } + }, + "SessionHostList": { + "type": "object", + "title": "SessionHostList", + "description": "List of SessionHost definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of SessionHost definitions.", + "items": { + "$ref": "#/definitions/SessionHost" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "UserSession": { + "type": "object", + "description": "Represents a UserSession definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for UserSession", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserSessionProperties" + } + } + }, + "UserSessionProperties": { + "description": "Schema for UserSession properties.", + "type": "object", + "properties": { + "userPrincipalName": { + "type": "string", + "description": "The user principal name." + }, + "applicationType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Application type of application." + }, + "sessionState": { + "enum": [ + "Unknown", + "Active", + "Disconnected", + "Pending", + "LogOff", + "UserProfileDiskMounted" + ], + "x-ms-enum": { + "name": "SessionState", + "modelAsString": true + }, + "type": "string", + "description": "State of user session." + }, + "activeDirectoryUserName": { + "type": "string", + "description": "The active directory user name." + }, + "createTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the user session create." + } + } + }, + "UserSessionList": { + "type": "object", + "title": "UserSessionList", + "description": "List of UserSession definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of UserSession definitions.", + "items": { + "$ref": "#/definitions/UserSession" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + } + }, + "parameters": { + "HostPoolNameParameter": { + "name": "hostPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the host pool within the specified resource group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationGroupNameParameter": { + "name": "applicationGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application within the specified application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DesktopNameParameter": { + "name": "desktopName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the desktop within the specified desktop group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "SessionHostNameParameter": { + "name": "sessionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the session host within the specified host pool", + "maxLength": 48, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "UserSessionIdParameter": { + "name": "userSessionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user session within the specified session host", + "maxLength": 24, + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "StartMenuItemNameParameter": { + "name": "startMenuItemName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the start menu item within the specified host pool", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ActiveApplication_ListBySessionHost.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ActiveApplication_ListBySessionHost.json new file mode 100644 index 000000000000..9f1476eecd78 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ActiveApplication_ListBySessionHost.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-09-24-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json new file mode 100644 index 000000000000..0ff08ef95927 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-09-24-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Create.json new file mode 100644 index 000000000000..160d165ed001 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview", + "applicationGroup": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "applicationGroupType": "RemoteApp" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + }, + "201": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Delete.json new file mode 100644 index 000000000000..dc4c6d73650d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Delete.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Get.json new file mode 100644 index 000000000000..7afb8906e640 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListByResourceGroup.json new file mode 100644 index 000000000000..838a52751007 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-09-24-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListBySubscription.json new file mode 100644 index 000000000000..366c713d3d6e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_ListBySubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-09-24-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Update.json new file mode 100644 index 000000000000..82ad3c164a2f --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/ApplicationGroup_Update.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview", + "applicationGroup": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Create.json new file mode 100644 index 000000000000..2094f71a0da0 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-09-24-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + }, + "201": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Delete.json new file mode 100644 index 000000000000..abb87bc9f1ba --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Get.json new file mode 100644 index 000000000000..1fb18dc17d56 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_List.json new file mode 100644 index 000000000000..1b20415656af --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Update.json new file mode 100644 index 000000000000..dede8e927257 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Application_Update.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-09-24-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Get.json new file mode 100644 index 000000000000..2719e939cce1 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_List.json new file mode 100644 index 000000000000..2b21a09458db --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Update.json new file mode 100644 index 000000000000..30c010a1abeb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Desktop_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-09-24-preview", + "desktop": { + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/desktops/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Create.json new file mode 100644 index 000000000000..daf9dee27580 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Create.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview", + "hostPool": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "201": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Delete.json new file mode 100644 index 000000000000..c5241c91d1f4 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Delete.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview", + "force": true + }, + "responses": { + "200": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Get.json new file mode 100644 index 000000000000..10e6a4a383ac --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_List.json new file mode 100644 index 000000000000..f29f8537eb5a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_List.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_ListByResourceGroup.json new file mode 100644 index 000000000000..1dec6d177630 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_ListByResourceGroup.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Update.json new file mode 100644 index 000000000000..18d1ca279723 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/HostPool_Update.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview", + "hostPool": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "personalDesktopAssignmentType": "Automatic", + "registrationInfo": { + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Shared", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/OperationDescription_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/OperationDescription_List.json new file mode 100644 index 000000000000..4ef6c3629a41 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/OperationDescription_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DesktopVirtualization/ssocontext/read", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + }, + { + "name": "Microsoft.DesktopVirtualization/ssocontext/write", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Delete.json new file mode 100644 index 000000000000..1b0c26c20792 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-09-24-preview", + "force": true + }, + "responses": { + "200": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Get.json new file mode 100644 index 000000000000..9b1c5f90bf63 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_List.json new file mode 100644 index 000000000000..164fcaccad86 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_List.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + { + "name": "sessionHost2.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost2microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user2@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Update.json new file mode 100644 index 000000000000..379d98bbebcd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/SessionHost_Update.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-09-24-preview", + "sessionHost": { + "properties": { + "allowNewSession": true, + "assignedUser": "user1@microsoft.com" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2019-01-11T19:27:13.6108027Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2019-01-24T20:00:08.2893033Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/StartMenuItem_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/StartMenuItem_List.json new file mode 100644 index 000000000000..d6b527527568 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/StartMenuItem_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "word", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + }, + { + "name": "application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "excel", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Delete.json new file mode 100644 index 000000000000..3011afc4e0cf --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Delete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-09-24-preview", + "force": true + }, + "responses": { + "200": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Disconnect_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Disconnect_Post.json new file mode 100644 index 000000000000..e20ff3b8a3f3 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Disconnect_Post.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Get.json new file mode 100644 index 000000000000..63830ee6ed1c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_List.json new file mode 100644 index 000000000000..a99ae4daf9ce --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_List.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_ListByHostPool.json new file mode 100644 index 000000000000..3f4c68bc38bb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_ListByHostPool.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-09-24-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com' and state eq 'active'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_SendMessage_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_SendMessage_Post.json new file mode 100644 index 000000000000..5249b6aed3aa --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/UserSession_SendMessage_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-09-24-preview", + "sendMessage": { + "messageTitle": "title", + "messageBody": "body" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Create.json new file mode 100644 index 000000000000..3aafb846a207 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-09-24-preview", + "workspace": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "201": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Delete.json new file mode 100644 index 000000000000..8860d04f7780 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Delete.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Get.json new file mode 100644 index 000000000000..0f56eed4ba01 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListByResourceGroup.json new file mode 100644 index 000000000000..076d2b1f8c51 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListBySubscription.json new file mode 100644 index 000000000000..ad37cca949d8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_ListBySubscription.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-09-24-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Update.json new file mode 100644 index 000000000000..a9076582e165 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/examples/Workspace_Update.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-09-24-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json new file mode 100644 index 000000000000..3af397de4739 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json @@ -0,0 +1,3078 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-10-preview", + "title": "Desktop Virtualization API Client" + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "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": { + "/providers/Microsoft.DesktopVirtualization/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "List all of the available operations the Desktop Virtualization resource provider supports.", + "x-ms-examples": { + "OperationDescription_List": { + "$ref": "./examples/OperationDescription_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Get", + "description": "Get a workspace.", + "x-ms-examples": { + "Workspace_Get": { + "$ref": "./examples/Workspace_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "x-ms-examples": { + "Workspace_Create": { + "$ref": "./examples/Workspace_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Successfully created workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Delete", + "description": "Remove a workspace.", + "x-ms-examples": { + "Workspace_Delete": { + "$ref": "./examples/Workspace_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted workspace." + }, + "204": { + "description": "Workspace does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_Update", + "description": "Update a workspace.", + "x-ms-examples": { + "Workspace_Update": { + "$ref": "./examples/Workspace_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "workspace", + "description": "Object containing Workspace definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated workspace.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListByResourceGroup", + "description": "List workspaces.", + "x-ms-examples": { + "Workspace_ListByResourceGroup": { + "$ref": "./examples/Workspace_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in resource group.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces": { + "get": { + "tags": [ + "Workspace" + ], + "operationId": "Workspaces_ListBySubscription", + "description": "List workspaces in subscription.", + "x-ms-examples": { + "Workspace_ListBySubscription": { + "$ref": "./examples/Workspace_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved workspaces in subscription.", + "schema": { + "$ref": "#/definitions/WorkspaceList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/userApplicationGroupAssignments": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroupAssignments_WorkspaceLevelList", + "description": "List application group that user can use.", + "x-ms-examples": { + "ApplicationGroupAssignment_WorkspaceLevelList": { + "$ref": "./examples/ApplicationGroupAssignment_WorkspaceLevelList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user application group assignments in workspace.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Get", + "description": "Get an application group.", + "x-ms-examples": { + "ApplicationGroup_Get": { + "$ref": "./examples/ApplicationGroup_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_CreateOrUpdate", + "description": "Create or update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Create": { + "$ref": "./examples/ApplicationGroup_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "201": { + "description": "Successfully created application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Delete", + "description": "Remove an applicationGroup.", + "x-ms-examples": { + "ApplicationGroup_Delete": { + "$ref": "./examples/ApplicationGroup_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application group." + }, + "204": { + "description": "Application group does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_Update", + "description": "Update an applicationGroup.", + "x-ms-examples": { + "ApplicationGroups_Update": { + "$ref": "./examples/ApplicationGroup_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "name": "applicationGroup", + "description": "Object containing ApplicationGroup definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationGroupPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application group.", + "schema": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListByResourceGroup", + "description": "List applicationGroups.", + "x-ms-examples": { + "ApplicationGroup_ListByResourceGroup": { + "$ref": "./examples/ApplicationGroup_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in resource group.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups": { + "get": { + "tags": [ + "ApplicationGroup" + ], + "operationId": "ApplicationGroups_ListBySubscription", + "description": "List applicationGroups in subscription.", + "x-ms-examples": { + "ApplicationGroup_List": { + "$ref": "./examples/ApplicationGroup_ListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are applicationGroupType." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application groups in subscription.", + "schema": { + "$ref": "#/definitions/ApplicationGroupList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems": { + "get": { + "tags": [ + "StartMenuItem" + ], + "operationId": "StartMenuItems_List", + "description": "List start menu items in the given application group.", + "x-ms-examples": { + "StartMenuItem_List": { + "$ref": "./examples/StartMenuItem_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved start menu items in application group.", + "schema": { + "$ref": "#/definitions/StartMenuItemList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "description": "Get an application.", + "x-ms-examples": { + "Application_Get": { + "$ref": "./examples/Application_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "description": "Create or update an application.", + "x-ms-examples": { + "Application_Create": { + "$ref": "./examples/Application_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "201": { + "description": "Successfully created application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "description": "Remove an application.", + "x-ms-examples": { + "Application_Delete": { + "$ref": "./examples/Application_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully removed application." + }, + "204": { + "description": "Application does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "description": "Update an application.", + "x-ms-examples": { + "Application_Update": { + "$ref": "./examples/Application_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "application", + "description": "Object containing Application definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated application.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "description": "List applications.", + "x-ms-examples": { + "Applications_List": { + "$ref": "./examples/Application_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved applications in application group.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops/{desktopName}": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Get", + "description": "Get a desktop.", + "x-ms-examples": { + "Desktop_Get": { + "$ref": "./examples/Desktop_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_Update", + "description": "Update a desktop.", + "x-ms-examples": { + "Desktop_Update": { + "$ref": "./examples/Desktop_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + }, + { + "$ref": "#/parameters/DesktopNameParameter" + }, + { + "name": "desktop", + "description": "Object containing Desktop definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/DesktopPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated desktop.", + "schema": { + "$ref": "#/definitions/Desktop" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops": { + "get": { + "tags": [ + "Desktop" + ], + "operationId": "Desktops_List", + "description": "List desktops.", + "x-ms-examples": { + "Desktop_List": { + "$ref": "./examples/Desktop_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApplicationGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved desktops in application group.", + "schema": { + "$ref": "#/definitions/DesktopList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Get", + "description": "Get a host pool.", + "x-ms-examples": { + "HostPool_Get": { + "$ref": "./examples/HostPool_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_CreateOrUpdate", + "description": "Create or update a host pool.", + "x-ms-examples": { + "HostPool_Create": { + "$ref": "./examples/HostPool_Create.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HostPool" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "201": { + "description": "Successfully created host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Delete", + "description": "Remove a host pool.", + "x-ms-examples": { + "HostPool_Delete": { + "$ref": "./examples/HostPool_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to delete sessionHost." + } + ], + "responses": { + "200": { + "description": "Successfully removed host pool." + }, + "204": { + "description": "Host pool does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_Update", + "description": "Update a host pool.", + "x-ms-examples": { + "HostPool_Update": { + "$ref": "./examples/HostPool_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "hostPool", + "description": "Object containing HostPool definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/HostPoolPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated host pool.", + "schema": { + "$ref": "#/definitions/HostPool" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_ListByResourceGroup", + "description": "List hostPools.", + "x-ms-examples": { + "HostPool_ListByResourceGroup": { + "$ref": "./examples/HostPool_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in resource group.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/hostPools": { + "get": { + "tags": [ + "HostPool" + ], + "operationId": "HostPools_List", + "description": "List hostPools in subscription.", + "x-ms-examples": { + "HostPool_List": { + "$ref": "./examples/HostPool_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved host pool in subscription.", + "schema": { + "$ref": "#/definitions/HostPoolList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_ListByHostPool", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_ListByHostPool": { + "$ref": "./examples/UserSession_ListByHostPool.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in host pool.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Get", + "description": "Get a session host.", + "x-ms-examples": { + "SessionHost_Get": { + "$ref": "./examples/SessionHost_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Delete", + "description": "Remove a SessionHost.", + "x-ms-examples": { + "SessionHost_Delete": { + "$ref": "./examples/SessionHost_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to force sessionHost deletion even when userSession exists." + } + ], + "responses": { + "200": { + "description": "Successfully removed session host." + }, + "204": { + "description": "Session host does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_Update", + "description": "Update a session host.", + "x-ms-examples": { + "SessionHost_Update": { + "$ref": "./examples/SessionHost_Update.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "sessionHost", + "description": "Object containing SessionHost definitions.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SessionHostPatch" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated session host.", + "schema": { + "$ref": "#/definitions/SessionHost" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts": { + "get": { + "tags": [ + "SessionHost" + ], + "operationId": "SessionHosts_List", + "description": "List sessionHosts.", + "x-ms-examples": { + "SessionHost_List": { + "$ref": "./examples/SessionHost_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved session hosts in host pool.", + "schema": { + "$ref": "#/definitions/SessionHostList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/activeApplications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "ActiveApplications_ListBySessionHost", + "description": "List applications for the given session host.", + "x-ms-examples": { + "ActiveApplications_List": { + "$ref": "./examples/ActiveApplication_ListBySessionHost.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are userprincipalname and sessionstate." + } + ], + "responses": { + "200": { + "description": "Successfully retrieved active applications in session host.", + "schema": { + "$ref": "#/definitions/ApplicationList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Get", + "description": "Get a userSession.", + "x-ms-examples": { + "UserSession_Get": { + "$ref": "./examples/UserSession_Get.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user session.", + "schema": { + "$ref": "#/definitions/UserSession" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Delete", + "description": "Remove a userSession.", + "x-ms-examples": { + "UserSession_Delete": { + "$ref": "./examples/UserSession_Delete.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force flag to login off userSession." + } + ], + "responses": { + "200": { + "description": "Successfully removed user session." + }, + "204": { + "description": "User session does not exist." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions": { + "get": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_List", + "description": "List userSessions.", + "x-ms-examples": { + "UserSession_List": { + "$ref": "./examples/UserSession_List.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved user sessions in session host.", + "schema": { + "$ref": "#/definitions/UserSessionList" + } + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/disconnect": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_Disconnect", + "description": "Disconnect a userSession.", + "x-ms-examples": { + "UserSession_Disconnect_Post": { + "$ref": "./examples/UserSession_Disconnect_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disconnected user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions/{userSessionId}/sendMessage": { + "post": { + "tags": [ + "UserSession" + ], + "operationId": "UserSessions_SendMessage", + "description": "Send a message to a user.", + "x-ms-examples": { + "UserSession_SendMessage_Post": { + "$ref": "./examples/UserSession_SendMessage_Post.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/HostPoolNameParameter" + }, + { + "$ref": "#/parameters/SessionHostNameParameter" + }, + { + "$ref": "#/parameters/UserSessionIdParameter" + }, + { + "name": "sendMessage", + "description": "Object containing message includes title and message body", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/SendMessage" + } + } + ], + "responses": { + "200": { + "description": "Successfully sent message to user session." + }, + "default": { + "description": "Automation error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CloudError": { + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error response of an operation failure" + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft Desktop Virtualization.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + } + } + }, + "Workspace": { + "type": "object", + "description": "Represents a Workspace definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties" + } + } + }, + "WorkspaceProperties": { + "description": "Schema for Workspace properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup resource Ids.", + "items": { + "type": "string" + } + } + } + }, + "WorkspaceList": { + "type": "object", + "title": "WorkspaceList", + "description": "List of Workspace definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Workspace definitions.", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "WorkspacePatch": { + "type": "object", + "description": "Workspace properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Workspace", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspacePatchProperties" + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "applicationGroupReferences": { + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + } + } + }, + "ApplicationGroup": { + "type": "object", + "description": "Represents a ApplicationGroup definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for ApplicationGroup", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupProperties", + "x-nullable": false + } + } + }, + "ApplicationGroupProperties": { + "description": "Schema for ApplicationGroup properties.", + "type": "object", + "required": [ + "hostPoolArmPath", + "applicationGroupType" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup.", + "x-nullable": false + }, + "workspaceArmPath": { + "type": "string", + "description": "Workspace arm path of ApplicationGroup.", + "readOnly": true + }, + "applicationGroupType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationGroupType", + "modelAsString": true + }, + "type": "string", + "description": "Resource Type of ApplicationGroup.", + "x-nullable": false + } + } + }, + "ApplicationGroupPatch": { + "type": "object", + "description": "ApplicationGroup properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "ApplicationGroup properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGroupPatchProperties" + } + } + }, + "ApplicationGroupPatchProperties": { + "description": "ApplicationGroup properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + } + } + }, + "ApplicationGroupList": { + "type": "object", + "title": "ApplicationGroupList", + "description": "List of ApplicationGroup definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of ApplicationGroup definitions.", + "items": { + "$ref": "#/definitions/ApplicationGroup" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "HostPool": { + "type": "object", + "description": "Represents a HostPool definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for HostPool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolProperties", + "x-nullable": false + } + } + }, + "HostPoolProperties": { + "description": "Properties of HostPool.", + "type": "object", + "required": [ + "hostPoolType", + "personalDesktopAssignmentType", + "loadBalancerType" + ], + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "hostPoolType": { + "enum": [ + "Personal", + "Pooled" + ], + "x-ms-enum": { + "name": "HostPoolType", + "modelAsString": true + }, + "type": "string", + "description": "HostPool type for desktop.", + "x-nullable": false + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool.", + "x-nullable": false + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer.", + "x-nullable": false + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfo", + "description": "The registration info of HostPool." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + }, + "applicationGroupReferences": { + "readOnly": true, + "type": "array", + "description": "List of applicationGroup links.", + "items": { + "type": "string" + } + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "HostPoolPatch": { + "type": "object", + "description": "HostPool properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "HostPool properties that can be patched.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HostPoolPatchProperties" + } + } + }, + "HostPoolPatchProperties": { + "description": "Properties of HostPool.", + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "maxSessionLimit": { + "type": "integer", + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "enum": [ + "Automatic", + "Direct" + ], + "x-ms-enum": { + "name": "PersonalDesktopAssignmentType", + "modelAsString": true + }, + "type": "string", + "description": "PersonalDesktopAssignment type for HostPool." + }, + "loadBalancerType": { + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ], + "x-ms-enum": { + "name": "LoadBalancerType", + "modelAsString": true + }, + "type": "string", + "description": "The type of the load balancer." + }, + "ring": { + "type": "integer", + "description": "The ring number of HostPool." + }, + "validationEnvironment": { + "type": "boolean", + "description": "Is validation environment." + }, + "registrationInfo": { + "$ref": "#/definitions/RegistrationInfoPatch", + "description": "The registration info of HostPool." + }, + "ssoContext": { + "type": "string", + "description": "Path to keyvault containing ssoContext secret." + } + } + }, + "RegistrationInfo": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "expirationTime": { + "format": "date-time", + "type": "string", + "description": "Expiration time of registration token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + }, + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token.", + "x-nullable": false + } + } + }, + "RegistrationInfoPatch": { + "description": "Represents a RegistrationInfo definition.", + "type": "object", + "properties": { + "registrationTokenOperation": { + "enum": [ + "Delete", + "None", + "Update" + ], + "x-ms-enum": { + "name": "RegistrationTokenOperation", + "modelAsString": true + }, + "type": "string", + "description": "The type of resetting the token." + } + } + }, + "SendMessage": { + "description": "Represents message sent to a UserSession.", + "type": "object", + "properties": { + "messageTitle": { + "type": "string", + "description": "Title of message." + }, + "messageBody": { + "type": "string", + "description": "Body of message." + } + } + }, + "HostPoolList": { + "type": "object", + "title": "HostPoolList", + "description": "List of HostPool definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of HostPool definitions.", + "items": { + "$ref": "#/definitions/HostPool" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "Application": { + "description": "Schema for Application properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "x-nullable": false + } + } + }, + "ApplicationProperties": { + "description": "Schema for Application properties.", + "type": "object", + "required": [ + "commandLineSetting" + ], + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all.", + "x-nullable": false + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "the icon a 64 bit string as a byte array." + } + } + }, + "ApplicationList": { + "type": "object", + "title": "ApplicationList", + "description": "List of Application definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Application definitions.", + "items": { + "$ref": "#/definitions/Application" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ApplicationPatch": { + "type": "object", + "description": "Application properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Application", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPatchProperties" + } + } + }, + "ApplicationPatchProperties": { + "description": "Application properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "commandLineSetting": { + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ], + "x-ms-enum": { + "name": "CommandLineSetting", + "modelAsString": true + }, + "type": "string", + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "showInPortal": { + "type": "boolean", + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "Desktop": { + "description": "Schema for Desktop properties.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopProperties" + } + } + }, + "DesktopProperties": { + "description": "Schema for Desktop properties.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + }, + "iconHash": { + "readOnly": true, + "type": "string", + "description": "Hash of the icon." + }, + "iconContent": { + "readOnly": true, + "type": "string", + "format": "byte", + "description": "The icon a 64 bit string as a byte array." + } + } + }, + "DesktopList": { + "type": "object", + "title": "DesktopList", + "description": "List of Desktop definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of Desktop definitions.", + "items": { + "$ref": "#/definitions/Desktop" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "DesktopPatch": { + "type": "object", + "description": "Desktop properties that can be patched.", + "properties": { + "tags": { + "type": "object", + "description": "tags to be updated" + }, + "properties": { + "description": "Detailed properties for Desktop", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DesktopPatchProperties" + } + } + }, + "DesktopPatchProperties": { + "description": "Desktop properties that can be patched.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of Desktop." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Desktop." + } + } + }, + "StartMenuItemProperties": { + "description": "Schema for StartMenuItem properties.", + "type": "object", + "properties": { + "appAlias": { + "type": "string", + "description": "Alias of StartMenuItem." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of StartMenuItem." + }, + "filePath": { + "type": "string", + "description": "Path to the file of StartMenuItem." + }, + "commandLineArguments": { + "type": "string", + "description": "Command line arguments for StartMenuItem." + }, + "iconPath": { + "type": "string", + "description": "Path to the icon." + }, + "iconIndex": { + "type": "integer", + "description": "Index of the icon." + } + } + }, + "StartMenuItem": { + "type": "object", + "description": "Represents a StartMenuItem definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for StartMenuItem", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StartMenuItemProperties" + } + } + }, + "StartMenuItemList": { + "type": "object", + "title": "StartMenuItemList", + "description": "List of StartMenuItem definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of StartMenuItem definitions.", + "items": { + "$ref": "#/definitions/StartMenuItem" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "SessionHost": { + "type": "object", + "description": "Represents a SessionHost definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostProperties" + } + } + }, + "SessionHostProperties": { + "description": "Schema for SessionHost properties.", + "type": "object", + "properties": { + "lastHeartBeat": { + "format": "date-time", + "type": "string", + "description": "Last heart beat from SessionHost." + }, + "sessions": { + "type": "integer", + "description": "Number of sessions on SessionHost." + }, + "agentVersion": { + "type": "string", + "description": "Version of agent on SessionHost." + }, + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + }, + "status": { + "enum": [ + "Available", + "Unavailable", + "Shutdown", + "Disconnected", + "Upgrading", + "UpgradeFailed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + }, + "type": "string", + "description": "Status for a SessionHost." + }, + "statusTimestamp": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the status.", + "readOnly": true + }, + "osVersion": { + "type": "string", + "description": "The version of the OS on the session host." + }, + "sxSStackVersion": { + "type": "string", + "description": "The version of the side by side stack on the session host." + }, + "updateState": { + "enum": [ + "Initial", + "Pending", + "Started", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "UpdateState", + "modelAsString": true + }, + "type": "string", + "description": "Update state of a SessionHost." + }, + "lastUpdateTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the last update.", + "readOnly": true + }, + "updateErrorMessage": { + "type": "string", + "description": "The error message." + } + } + }, + "SessionHostPatch": { + "type": "object", + "description": "SessionHost properties that can be patched.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for SessionHost", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SessionHostPatchProperties" + } + } + }, + "SessionHostPatchProperties": { + "description": "SessionHost properties that can be patched.", + "type": "object", + "properties": { + "allowNewSession": { + "type": "boolean", + "description": "Allow a new session." + }, + "assignedUser": { + "type": "string", + "description": "User assigned to SessionHost." + } + } + }, + "SessionHostList": { + "type": "object", + "title": "SessionHostList", + "description": "List of SessionHost definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of SessionHost definitions.", + "items": { + "$ref": "#/definitions/SessionHost" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "UserSession": { + "type": "object", + "description": "Represents a UserSession definition.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Detailed properties for UserSession", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserSessionProperties" + } + } + }, + "UserSessionProperties": { + "description": "Schema for UserSession properties.", + "type": "object", + "properties": { + "userPrincipalName": { + "type": "string", + "description": "The user principal name." + }, + "applicationType": { + "enum": [ + "RemoteApp", + "Desktop" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "type": "string", + "description": "Application type of application." + }, + "sessionState": { + "enum": [ + "Unknown", + "Active", + "Disconnected", + "Pending", + "LogOff", + "UserProfileDiskMounted" + ], + "x-ms-enum": { + "name": "SessionState", + "modelAsString": true + }, + "type": "string", + "description": "State of user session." + }, + "activeDirectoryUserName": { + "type": "string", + "description": "The active directory user name." + }, + "createTime": { + "format": "date-time", + "type": "string", + "description": "The timestamp of the user session create." + } + } + }, + "UserSessionList": { + "type": "object", + "title": "UserSessionList", + "description": "List of UserSession definitions.", + "properties": { + "value": { + "type": "array", + "description": "List of UserSession definitions.", + "items": { + "$ref": "#/definitions/UserSession" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + } + }, + "parameters": { + "HostPoolNameParameter": { + "name": "hostPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the host pool within the specified resource group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationGroupNameParameter": { + "name": "applicationGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application within the specified application group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "DesktopNameParameter": { + "name": "desktopName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the desktop within the specified desktop group", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "SessionHostNameParameter": { + "name": "sessionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the session host within the specified host pool", + "maxLength": 48, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "UserSessionIdParameter": { + "name": "userSessionId", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user session within the specified session host", + "maxLength": 24, + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "StartMenuItemNameParameter": { + "name": "startMenuItemName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the start menu item within the specified host pool", + "maxLength": 24, + "minLength": 3, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ActiveApplication_ListBySessionHost.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ActiveApplication_ListBySessionHost.json new file mode 100644 index 000000000000..973e60d06849 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ActiveApplication_ListBySessionHost.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-12-10-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json new file mode 100644 index 000000000000..c2ee315a000d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroupAssignment_WorkspaceLevelList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-12-10-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Create.json new file mode 100644 index 000000000000..8d6b4bb1382b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview", + "applicationGroup": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "applicationGroupType": "RemoteApp" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + }, + "201": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Delete.json new file mode 100644 index 000000000000..79cf00e37e7c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Delete.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Get.json new file mode 100644 index 000000000000..b7bb05752a8a --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListByResourceGroup.json new file mode 100644 index 000000000000..afcec930670e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListByResourceGroup.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-12-10-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListBySubscription.json new file mode 100644 index 000000000000..6a7fe723d2ed --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_ListBySubscription.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-12-10-preview", + "$filter": "applicationGroupType eq 'RailApplication'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + }, + { + "name": "applicationGroup2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup2", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Update.json new file mode 100644 index 000000000000..0d6da727b913 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/ApplicationGroup_Update.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview", + "applicationGroup": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1", + "type": "Microsoft.DesktopVirtualization/applicationGroups", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly", + "hostPoolArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "workspaceArmPath": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "applicationGroupType": "RemoteApp" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Create.json new file mode 100644 index 000000000000..6b4a238bc273 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-12-10-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + }, + "201": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Delete.json new file mode 100644 index 000000000000..519b9ba4a249 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Get.json new file mode 100644 index 000000000000..563967b99b5b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_List.json new file mode 100644 index 000000000000..ad1a505f987b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + }, + { + "name": "applicationGroup1/application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des2", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Update.json new file mode 100644 index 000000000000..14cc21f094ed --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Application_Update.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "applicationName": "application1", + "api-version": "2019-12-10-preview", + "application": { + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/applications", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "filePath": "path", + "commandLineSetting": "Allow", + "commandLineArguments": "arguments", + "showInPortal": true, + "iconPath": "icon", + "iconIndex": 1, + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Get.json new file mode 100644 index 000000000000..26b94e09f7c8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_List.json new file mode 100644 index 000000000000..ed22d9f54aa9 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/applications/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Update.json new file mode 100644 index 000000000000..0a1f83fccb49 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Desktop_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "desktopName": "SessionDesktop", + "api-version": "2019-12-10-preview", + "desktop": { + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "applicationGroup1/SessionDesktop", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/desktops/SessionDesktop", + "type": "Microsoft.DesktopVirtualization/applicationGroups/desktops", + "properties": { + "description": "des1", + "friendlyName": "friendly", + "iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc", + "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..." + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Create.json new file mode 100644 index 000000000000..7ea677d137e4 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Create.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview", + "hostPool": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "201": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Delete.json new file mode 100644 index 000000000000..447fc42fc699 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Delete.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview", + "force": true + }, + "responses": { + "200": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Get.json new file mode 100644 index 000000000000..73d515fb1992 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_List.json new file mode 100644 index 000000000000..e20d8baf3afb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_List.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_ListByResourceGroup.json new file mode 100644 index 000000000000..02e45253849c --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_ListByResourceGroup.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + }, + { + "name": "hostPool2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool2", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Update.json new file mode 100644 index 000000000000..6eb8e05ee4ce --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/HostPool_Update.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview", + "hostPool": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "personalDesktopAssignmentType": "Automatic", + "registrationInfo": { + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + }, + "responses": { + "200": { + "body": { + "name": "hostPool1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1", + "type": "/Microsoft.DesktopVirtualization/hostPools", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "friendlyName": "friendly", + "description": "des1", + "hostPoolType": "Pooled", + "personalDesktopAssignmentType": "Automatic", + "customRdpProperty": null, + "maxSessionLimit": 999999, + "loadBalancerType": "BreadthFirst", + "validationEnvironment": null, + "ring": null, + "registrationInfo": { + "expirationTime": "2008-09-22T14:01:54.9571247Z", + "token": "token", + "registrationTokenOperation": "Update" + }, + "ssoContext": "KeyVaultPath" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/OperationDescription_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/OperationDescription_List.json new file mode 100644 index 000000000000..cbd7e3aa1702 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/OperationDescription_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DesktopVirtualization/ssocontext/read", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + }, + { + "name": "Microsoft.DesktopVirtualization/ssocontext/write", + "display": { + "provider": "Microsoft.DesktopVirtualization", + "resource": "ssocontext" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Delete.json new file mode 100644 index 000000000000..3755a7e1ce7f --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-12-10-preview", + "force": true + }, + "responses": { + "200": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Get.json new file mode 100644 index 000000000000..d0372897c33e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_List.json new file mode 100644 index 000000000000..e00397e9da1f --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_List.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + }, + { + "name": "sessionHost2.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost2microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2008-09-22T14:01:54.9571247Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user2@microsoft.com", + "status": "Available", + "statusTimestamp": "2008-09-22T14:01:54.9571247Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Update.json new file mode 100644 index 000000000000..6b4d3500d06d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/SessionHost_Update.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-12-10-preview", + "sessionHost": { + "properties": { + "allowNewSession": true, + "assignedUser": "user1@microsoft.com" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sessionHost1.microsoft.com", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionhosts", + "properties": { + "lastHeartBeat": "2019-01-11T19:27:13.6108027Z", + "sessions": 1, + "agentVersion": "1.0.0.1391", + "allowNewSession": true, + "assignedUser": "user1@microsoft.com", + "status": "Available", + "statusTimestamp": "2019-01-24T20:00:08.2893033Z", + "osVersion": "10.0.17763", + "sxSStackVersion": "rdp-sxs190816002", + "updateState": "Succeeded", + "lastUpdateTime": "2008-09-22T14:01:54.9571247Z", + "updateErrorMessage": "" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/StartMenuItem_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/StartMenuItem_List.json new file mode 100644 index 000000000000..afd698213ed8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/StartMenuItem_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "applicationGroupName": "applicationGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "application1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application1", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "word", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + }, + { + "name": "application2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/applicationGroups/applicationGroup1/startMenuItem/application2", + "type": "Microsoft.DesktopVirtualization/applicationGroups/startMenuItems", + "properties": { + "appAlias": "excel", + "friendlyName": "friendly", + "filePath": "/path/to/file", + "commandLineArguments": "arguments", + "iconPath": "/path/to/icon", + "iconIndex": 1 + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Delete.json new file mode 100644 index 000000000000..da8cd8ae4bfb --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Delete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-12-10-preview", + "force": true + }, + "responses": { + "200": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Disconnect_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Disconnect_Post.json new file mode 100644 index 000000000000..001bc6529d84 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Disconnect_Post.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Get.json new file mode 100644 index 000000000000..06aac45ba81e --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_List.json new file mode 100644 index 000000000000..cef72db2561d --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_List.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_ListByHostPool.json new file mode 100644 index 000000000000..1c39908d8349 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_ListByHostPool.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "api-version": "2019-12-10-preview", + "$filter": "userPrincipalName eq 'user1@microsoft.com' and state eq 'active'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + }, + { + "name": "2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2", + "type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions", + "properties": { + "userPrincipalName": "user1@microsoft.com", + "applicationType": "Desktop", + "sessionState": "Active", + "activeDirectoryUserName": "WVDARM\\user1", + "createTime": "2008-09-22T14:01:54.9571247Z" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_SendMessage_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_SendMessage_Post.json new file mode 100644 index 000000000000..6e7076eb9f50 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/UserSession_SendMessage_Post.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "hostPoolName": "hostPool1", + "sessionHostName": "sessionHost1.microsoft.com", + "userSessionId": "1", + "api-version": "2019-12-10-preview", + "sendMessage": { + "messageTitle": "title", + "messageBody": "body" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Create.json new file mode 100644 index 000000000000..7085ade8ceed --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-12-10-preview", + "workspace": { + "location": "centralus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "201": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Delete.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Delete.json new file mode 100644 index 000000000000..2048117807aa --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Delete.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + "204": {} + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Get.json new file mode 100644 index 000000000000..dc613edd408b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListByResourceGroup.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListByResourceGroup.json new file mode 100644 index 000000000000..6f6dc3ad0de8 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListBySubscription.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListBySubscription.json new file mode 100644 index 000000000000..79ec5eea61dd --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_ListBySubscription.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "api-version": "2019-12-10-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + }, + { + "name": "workspace2", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace2", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + ] + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Update.json new file mode 100644 index 000000000000..33060dc90353 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/examples/Workspace_Update.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "daefabc0-95b4-48b3-b645-8a753a63c4fa", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-12-10-preview", + "workspace": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/workspaces/workspace1", + "type": "Microsoft.DesktopVirtualization/workspaces", + "location": "centralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "description": "des1", + "friendlyName": "friendly" + } + } + } + } +} diff --git a/specification/desktopvirtualization/resource-manager/readme.az.md b/specification/desktopvirtualization/resource-manager/readme.az.md new file mode 100644 index 000000000000..59b298c1cc19 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.az.md @@ -0,0 +1,12 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: desktopvirtualization + package-name: azure-mgmt-desktopvirtualization + namespace: azure.mgmt.desktopvirtualization +az-output-folder: $(azure-cli-extension-folder)/src/desktopvirtualization +python-sdk-output-folder: "$(az-output-folder)/azext_desktopvirtualization/vendored_sdks/desktopvirtualization" +``` diff --git a/specification/desktopvirtualization/resource-manager/readme.cli.md b/specification/desktopvirtualization/resource-manager/readme.cli.md new file mode 100644 index 000000000000..3add0b924943 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.cli.md @@ -0,0 +1,8 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml $(cli) +cli: + cli-name: desktopvirtualization +``` diff --git a/specification/desktopvirtualization/resource-manager/readme.csharp.md b/specification/desktopvirtualization/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..3fcc97028667 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.DesktopVirtualization + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/DesktopVirtualization/Management.DesktopVirtualization/Generated + clear-output-folder: true +``` diff --git a/specification/desktopvirtualization/resource-manager/readme.go.md b/specification/desktopvirtualization/resource-manager/readme.go.md new file mode 100644 index 000000000000..c8527d1dc4fa --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.go.md @@ -0,0 +1,46 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: desktopvirtualization + clear-output-folder: true +``` + +### Go multi-api +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-01-23-preview + - tag: package-2019-09-24-preview + - tag: package-2019-12-10-preview +``` + +### Tag: package-2019-12-10-preview and go + +These settings apply only when `--tag=package-2019-12-10-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-12-10-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-12-10-preview/$(namespace) +``` + +### Tag: package-2019-09-24-preview and go + +These settings apply only when `--tag=package-2019-09-24-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-09-24-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-09-24-preview/$(namespace) +``` + +### Tag: package-2019-01-23-preview and go + +These settings apply only when `--tag=package-2019-01-23-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-01-23-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-01-23-preview/$(namespace) +``` + diff --git a/specification/desktopvirtualization/resource-manager/readme.java.md b/specification/desktopvirtualization/resource-manager/readme.java.md new file mode 100644 index 000000000000..089093f5ff73 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.java.md @@ -0,0 +1,34 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.desktopvirtualization +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-desktopvirtualization +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-12-10-preview +``` + +### Tag: package-2019-12-10-preview and java + +These settings apply only when `--tag=package-2019-12-10-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-12-10-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.desktopvirtualization.v2019_12_10_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/desktopvirtualization/mgmt-v2019_12_10_preview +regenerate-manager: true +generate-interface: true +``` + diff --git a/specification/desktopvirtualization/resource-manager/readme.md b/specification/desktopvirtualization/resource-manager/readme.md new file mode 100644 index 000000000000..f925aac285c5 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.md @@ -0,0 +1,132 @@ +# DesktopVirtualization + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Desktop Virtualization. + + + +--- +## Getting Started +To build the SDK for DesktopVirtualizationClient, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the DesktopVirtualizationClient API. + +``` yaml +openapi-type: arm +tag: package-2019-12-10-preview +``` + +### Tag: package-2019-01-23-preview + +These settings apply only when `--tag=package-2019-01-23-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-01-23-preview' +input-file: +- Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json +``` + +### Tag: package-2019-09-24-preview + +These settings apply only when `--tag=package-2019-09-24-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09-24-preview' +input-file: +- Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json +``` + +### Tag: package-2019-12-10-preview + +These settings apply only when `--tag=package-2019-12-10-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12-10-preview' +input-file: +- Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json +``` + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-csharp + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-node + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_desktop_virtualization'] +``` + +## C# + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## Node + +See configuration in [readme.node.md](./readme.node.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json + - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json + - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/desktopvirtualization/resource-manager/readme.node.md b/specification/desktopvirtualization/resource-manager/readme.node.md new file mode 100644 index 000000000000..bf6d3eeeb08b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.node.md @@ -0,0 +1,15 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-mgmt-DesktopVirtualization + output-folder: $(node-sdks-folder)/lib/services/DesktopVirtualization + payload-flattening-threshold: 1 + generate-license-txt: true + generate-package-json: true + generate-readme.md: true +``` diff --git a/specification/desktopvirtualization/resource-manager/readme.python.md b/specification/desktopvirtualization/resource-manager/readme.python.md new file mode 100644 index 000000000000..9714d4109d0b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.DesktopVirtualization + package-name: azure-mgmt-DesktopVirtualization + package-version: 0.2.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-DesktopVirtualization/azure/mgmt/DesktopVirtualization +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-DesktopVirtualization +``` diff --git a/specification/desktopvirtualization/resource-manager/readme.ruby.md b/specification/desktopvirtualization/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..9491ec2d3560 --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.ruby.md @@ -0,0 +1,48 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml +package-name: azure_mgmt_desktop_virtualization +package-version: "0.16.0" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2019-01-23-preview + - tag: package-2019-09-24-preview + - tag: package-2019-12-10-preview +``` + +### Tag: package-2019-12-10-preview and ruby + +These settings apply only when `--tag=package-2019-12-10-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-12-10-preview' && $(ruby) +namespace: "Azure::DesktopVirtualization::Mgmt::V2019_12_10_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_desktop_virtualization/lib +``` + +### Tag: package-2019-09-24-preview and ruby + +These settings apply only when `--tag=package-2019-09-24-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-09-24-preview' && $(ruby) +namespace: "Azure::DesktopVirtualization::Mgmt::V2019_09_24_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_desktop_virtualization/lib +``` + +### Tag: package-2019-01-23-preview and ruby + +These settings apply only when `--tag=package-2019-01-23-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-01-23-preview' && $(ruby) +namespace: "Azure::DesktopVirtualization::Mgmt::V2019_01_23_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_desktop_virtualization/lib +``` \ No newline at end of file diff --git a/specification/desktopvirtualization/resource-manager/readme.typescript.md b/specification/desktopvirtualization/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..1c42590f0e2b --- /dev/null +++ b/specification/desktopvirtualization/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/DesktopVirtualization" + output-folder: "$(typescript-sdks-folder)/packages/@azure/DesktopVirtualization" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json new file mode 100644 index 000000000000..bad1dd6fb8c4 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json new file mode 100644 index 000000000000..e32b22fe2bf3 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "arguments": { + "name": "test213123" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "name is valid" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json new file mode 100644 index 000000000000..985e43062210 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotDpsDescription": { + "location": "East US", + "properties": {}, + "sku": { + "name": "S1", + "capacity": 1 + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups//providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups//providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json new file mode 100644 index 000000000000..6268ef59e80e --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": {}, + "204": {}, + "202": {}, + "404": {} + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json new file mode 100644 index 000000000000..a75650efd323 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json new file mode 100644 index 000000000000..e28a4c4bf1f3 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json new file mode 100644 index 000000000000..b44b366b80b5 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json new file mode 100644 index 000000000000..c477bfea1fa6 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json new file mode 100644 index 000000000000..9f307d6e87a9 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json new file mode 100644 index 000000000000..d4ee8aa65833 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "testKey" + }, + "responses": { + "200": { + "body": { + "keyName": "testKey", + "primaryKey": "##################################", + "secondaryKey": "################################", + "rights": "RegistrationStatusWrite" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json new file mode 100644 index 000000000000..38169a6a6832 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationId": "MTY5OTNmZDctODI5Yy00N2E2LTkxNDQtMDU1NGIyYzY1ZjRl", + "asyncinfo": "1508265712453" + }, + "responses": { + "200": { + "body": { + "status": "Succeeded" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json new file mode 100644 index 000000000000..bd010bd38ccf --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "S1" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json new file mode 100644 index 000000000000..5606e0a06bb4 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + }, + { + "etag": "AAAAAAAADGk=", + "name": "mySecondProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "mySecondProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/mySecondProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json new file mode 100644 index 000000000000..ae139fc87d88 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + }, + { + "etag": "AAAAAAAADGk=", + "name": "mySecondProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/mySecondProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json new file mode 100644 index 000000000000..aca0af4ab6b7 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "key1", + "primaryKey": "#####################################", + "secondaryKey": "###################################", + "rights": "ServiceConfig" + }, + { + "keyName": "key2", + "primaryKey": "#######################################", + "secondaryKey": "####################################=", + "rights": "ServiceConfig" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json new file mode 100644 index 000000000000..63fccdb5acfe --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json @@ -0,0 +1,293 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json new file mode 100644 index 000000000000..631bd5151555 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/ProvisioningServices", + "ProvisioningServiceTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": { + "foo": "bar" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json new file mode 100644 index 000000000000..92fd1b91fbf6 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "request": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json new file mode 100644 index 000000000000..70ea10d42a16 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json @@ -0,0 +1,2003 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "x-ms-code-generation-settings": { + "host": "management.azure.com" + }, + "title": "iotDpsClient", + "description": "API for using the Azure IoT Hub Device Provisioning Service features." + }, + "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": { + "/providers/Microsoft.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "DPSOperations": { + "$ref": "./examples/DPSOperations.json" + } + }, + "description": "Lists all of the available Microsoft.Devices REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "GET" + ], + "operationId": "DpsCertificate_Get", + "description": "Get the certificate from the provisioning service.", + "x-ms-examples": { + "DPSGetCertificate": { + "$ref": "./examples/DPSGetCertificate.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the certificate to retrieve." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service the certificate is associated with." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the certificate." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Metadata for the specified certificate.", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Upload the certificate to the provisioning service.", + "description": "Add new certificate or update an existing certificate.", + "operationId": "DpsCertificate_CreateOrUpdate", + "x-ms-examples": { + "DPSCreateOrUpdateCertificate": { + "$ref": "./examples/DPSCertificateCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group identifier.", + "required": true, + "type": "string" + }, + { + "name": "provisioningServiceName", + "in": "path", + "description": "The name of the provisioning service.", + "required": true, + "type": "string" + }, + { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate create or update.", + "required": true, + "type": "string", + "maxLength": 256 + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the certificate. This is required to update an existing certificate, and ignored while creating a brand new certificate." + } + ], + "responses": { + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "operationId": "DpsCertificate_Delete", + "summary": "Delete the Provisioning Service Certificate.", + "description": "Deletes the specified certificate associated with the Provisioning Service", + "x-ms-examples": { + "DPSDeleteCertificate": { + "$ref": "./examples/DPSDeleteCertificate.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate" + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the provisioning service." + }, + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "This is a mandatory field, and is the logical name of the certificate that the provisioning service will access by." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "This is optional, and it is the Common Name of the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data within the certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "type": "string", + "description": "A description that mentions the purpose of the certificate.", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "description": "Time the certificate is created.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "description": "Time the certificate is last updated.", + "format": "date-time" + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains a private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of the provisioning service.", + "description": "Get the metadata of the provisioning service without SAS keys.", + "operationId": "IotDpsResource_Get", + "x-ms-examples": { + "DPSGet": { + "$ref": "./examples/DPSGet.json" + } + }, + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service to retrieve." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Provisioning service description with no keys is included in the response.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of the provisioning service.", + "description": "Create or update the metadata of the provisioning service. The usual pattern to modify a property is to retrieve the provisioning service metadata and security metadata, and then combine them with the modified values in a new body to update the provisioning service.", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_CreateOrUpdate", + "x-ms-examples": { + "DPSCreate": { + "$ref": "./examples/DPSCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to create or update." + }, + { + "name": "iotDpsDescription", + "in": "body", + "required": true, + "description": "Description of the provisioning service to create or update.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the provisioning service. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing provisioning service's tags.", + "description": "Update an existing provisioning service's tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_Update", + "x-ms-examples": { + "DPSPatch": { + "$ref": "./examples/DPSPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to create or update." + }, + { + "name": "ProvisioningServiceTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the provisioning service instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Provisioning Service was successfully updated", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete the Provisioning Service", + "description": "Deletes the Provisioning Service.", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_Delete", + "x-ms-examples": { + "DPSDelete": { + "$ref": "./examples/DPSDelete.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to delete." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "202": { + "description": "The provisioning service resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the provisioning service status directly, or query the operation resource." + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state." + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the provisioning service metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the provisioning service metadata in the service." + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates": { + "get": { + "tags": [ + "GET" + ], + "operationId": "DpsCertificate_List", + "description": "Get all the certificates tied to the provisioning service.", + "x-ms-examples": { + "DPSGetCertificates": { + "$ref": "./examples/DPSGetCertificates.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of resource group." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to retrieve certificates for." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "List of certificate descriptions in a JSON-serialized array.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/provisioningServices": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the provisioning services in a subscription.", + "description": "List all the provisioning services for a given subscription id.", + "operationId": "IotDpsResource_ListBySubscription", + "x-ms-examples": { + "DPSListBySubscription": { + "$ref": "./examples/DPSListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the provisioning services in the subscription.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescriptionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotDpsResource_ListByResourceGroup", + "description": "Get a list of all provisioning services in the given resource group.", + "x-ms-examples": { + "DPSListByResourceGroup": { + "$ref": "./examples/DPSListByResourceGroup.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "List of provisioning services in the resource group.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescriptionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/operationresults/{operationId}": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotDpsResource_GetOperationResult", + "description": "Gets the status of a long running operation, such as create, update or delete a provisioning service.", + "x-ms-examples": { + "DPSGetOperationResult": { + "$ref": "./examples/DPSGetOperationResult.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation id corresponding to long running operation. Use this to poll for the status." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service that the operation is running on." + }, + { + "name": "asyncinfo", + "in": "query", + "description": "Async header used to poll on the status of the operation, obtained while creating the long running operation.", + "required": true, + "type": "string", + "default": "true" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "The status of the long running operation.", + "schema": { + "$ref": "#/definitions/AsyncOperationResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for a provisioning service.", + "description": "Gets the list of valid SKUs and tiers for a provisioning service.", + "operationId": "IotDpsResource_listValidSkus", + "x-ms-examples": { + "DPSGetValidSku": { + "$ref": "./examples/DPSGetValidSku.json" + } + }, + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of resource group." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this provisioning service.", + "schema": { + "$ref": "#/definitions/IotDpsSkuDefinitionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "POST" + ], + "operationId": "DpsCertificate_GenerateVerificationCode", + "description": "Generate verification code for Proof of Possession.", + "x-ms-examples": { + "DPSGenerateVerificationCode": { + "$ref": "./examples/DPSGenerateVerificationCode.json" + } + }, + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "The mandatory logical name of the certificate, that the provisioning service uses to access." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate. This is required to update an existing certificate, and ignored while creating a brand new certificate." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "name of resource group." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "Common Name for the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data of certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "type": "string", + "description": "Description mentioning the purpose of the certificate.", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate creation time." + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate last updated time." + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Generated verification code for that certificate is returned.", + "schema": { + "$ref": "#/definitions/VerificationCodeResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "POST" + ], + "operationId": "DpsCertificate_VerifyCertificate", + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "x-ms-examples": { + "DPSVerifyCertificate": { + "$ref": "./examples/DPSVerifyCertificate.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "The mandatory logical name of the certificate, that the provisioning service uses to access." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate." + }, + { + "name": "request", + "in": "body", + "required": true, + "description": "The name of the certificate", + "schema": { + "$ref": "#/definitions/VerificationCodeRequest" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Provisioning service name." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "Common Name for the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data of certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "description": "Describe the purpose of the certificate.", + "type": "string", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate creation time." + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate last updated time." + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkProvisioningServiceNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_CheckProvisioningServiceNameAvailability", + "x-ms-examples": { + "DPSCheckName": { + "$ref": "./examples/DPSCheckNameAvailability.json" + } + }, + "summary": "Check if a provisioning service name is available.", + "description": "Check if a provisioning service name is available. This will validate if the name is syntactically valid and if the name is usable", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "arguments", + "in": "body", + "required": true, + "description": "Set the name parameter in the OperationInputs structure to the name of the provisioning service to check.", + "schema": { + "$ref": "#/definitions/OperationInputs" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the provisioning service name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/NameAvailabilityInfo" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_ListKeys", + "x-ms-examples": { + "DPSListKeys": { + "$ref": "./examples/DPSListKeys.json" + } + }, + "summary": "Get the security metadata for a provisioning service.", + "description": "List the primary and secondary keys for a provisioning service.", + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The provisioning service name to get the shared access keys for." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "resource group name" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the provisioning service endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/keys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_ListKeysForKeyName", + "x-ms-examples": { + "DPSGetKey": { + "$ref": "./examples/DPSGetKey.json" + } + }, + "summary": "Get a shared access policy by name from a provisioning service.", + "description": "List primary and secondary keys for a specific key name", + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "description": "Logical key name to get key-values for." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the provisioning service.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more provisioning service endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "AsyncOperationResult": { + "type": "object", + "description": "Result of a long running operation.", + "properties": { + "status": { + "description": "current status of a long running operation.", + "type": "string" + }, + "error": { + "description": "Error message containing code, description and details", + "$ref": "#/definitions/ErrorMesssage" + } + } + }, + "ErrorMesssage": { + "description": "Error response containing message and code.", + "type": "object", + "properties": { + "code": { + "description": "standard error code", + "type": "string" + }, + "message": { + "description": "standard error description", + "type": "string" + }, + "details": { + "description": "detailed summary of error", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateResponse" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "Base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateResponse": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "description": "properties of a certificate", + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's creation date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + } + } + }, + "IotDpsSkuInfo": { + "type": "object", + "description": "List of possible provisioning service SKUs.", + "properties": { + "name": { + "description": "Sku name.", + "enum": [ + "S1" + ], + "type": "string", + "x-ms-enum": { + "name": "IotDpsSku", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "Pricing tier name of the provisioning service." + }, + "capacity": { + "format": "int64", + "type": "integer", + "description": "The number of units to provision" + } + } + }, + "ProvisioningServiceDescription": { + "description": "The description of the provisioning service.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "Service specific properties for a provisioning service", + "$ref": "#/definitions/IotDpsPropertiesDescription" + }, + "sku": { + "description": "Sku info for a provisioning Service.", + "$ref": "#/definitions/IotDpsSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku", + "properties" + ] + }, + "IotDpsPropertiesDescription": { + "description": "the service specific properties of a provisioning service, including keys, linked iot hubs, current state, and system generated properties such as hostname and idScope", + "type": "object", + "properties": { + "state": { + "description": "Current state of the provisioning service.", + "enum": [ + "Activating", + "Active", + "Deleting", + "Deleted", + "ActivationFailed", + "DeletionFailed", + "Transitioning", + "Suspending", + "Suspended", + "Resuming", + "FailingOver", + "FailoverFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "state", + "modelAsString": true + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the provisioning service.", + "type": "string" + }, + "iotHubs": { + "type": "array", + "description": "List of IoT hubs associated with this provisioning service.", + "items": { + "$ref": "#/definitions/IotHubDefinitionDescription" + } + }, + "allocationPolicy": { + "enum": [ + "Hashed", + "GeoLatency", + "Static" + ], + "type": "string", + "description": "Allocation policy to be used by this provisioning service.", + "x-ms-enum": { + "name": "AllocationPolicy", + "modelAsString": true + } + }, + "serviceOperationsHostName": { + "description": "Service endpoint for provisioning service.", + "type": "string", + "readOnly": true + }, + "deviceProvisioningHostName": { + "type": "string", + "description": "Device endpoint for this provisioning service.", + "readOnly": true + }, + "idScope": { + "type": "string", + "description": "Unique identifier of this provisioning service.", + "readOnly": true + }, + "authorizationPolicies": { + "description": "List of authorization keys for a provisioning service.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + } + } + }, + "IotHubDefinitionDescription": { + "type": "object", + "description": "Description of the IoT hub.", + "properties": { + "applyAllocationPolicy": { + "description": "flag for applying allocationPolicy or not for a given iot hub.", + "type": "boolean" + }, + "allocationWeight": { + "description": "weight to apply for a given iot h.", + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Host name of the IoT hub." + }, + "connectionString": { + "type": "string", + "description": "Connection string og the IoT hub." + }, + "location": { + "type": "string", + "description": "ARM region of the IoT hub." + } + }, + "required": [ + "connectionString", + "location" + ] + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT dps.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + }, + "target": { + "description": "Target for requests captured by this rule.", + "enum": [ + "all", + "serviceApi", + "deviceApi" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterTargetType", + "modelAsString": false + } + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "SharedAccessSignatureAuthorizationRule[AccessRightsDescription]": { + "type": "object", + "description": "Description of the shared access key.", + "properties": { + "keyName": { + "type": "string", + "description": "Name of the key." + }, + "primaryKey": { + "type": "string", + "description": "Primary SAS key value." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary SAS key value." + }, + "rights": { + "description": "Rights that this key has.", + "enum": [ + "ServiceConfig", + "EnrollmentRead", + "EnrollmentWrite", + "DeviceConnect", + "RegistrationStatusRead", + "RegistrationStatusWrite" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRightsDescription", + "modelAsString": true + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation.", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices." + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: ProvisioningServices." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation." + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "type": "object", + "description": "List of shared access keys.", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotDpsSkuDefinitionListResult": { + "type": "object", + "description": "List of available SKUs.", + "properties": { + "value": { + "description": "The list of SKUs", + "type": "array", + "items": { + "$ref": "#/definitions/IotDpsSkuDefinition" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotDpsSkuDefinition": { + "type": "object", + "description": "Available SKUs of tier and units.", + "properties": { + "name": { + "description": "Sku name.", + "enum": [ + "S1" + ], + "type": "string", + "x-ms-enum": { + "name": "IotDpsSku", + "modelAsString": true + } + } + } + }, + "OperationInputs": { + "description": "Input values for operation results call.", + "type": "object", + "properties": { + "name": { + "description": "The name of the Provisioning Service to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "NameAvailabilityInfo": { + "type": "object", + "description": "Description of name availability.", + "properties": { + "nameAvailable": { + "description": "specifies if a name is available or not", + "type": "boolean" + }, + "reason": { + "description": "specifies the reason a name is unavailable", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "NameUnavailabilityReason", + "modelAsString": true + } + }, + "message": { + "description": "message containing a detailed reason name is unavailable", + "type": "string" + } + } + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a Provisioning Service instance." + }, + "ProvisioningServiceDescriptionListResult": { + "type": "object", + "description": "List of provisioning service descriptions.", + "properties": { + "value": { + "description": "List of provisioning service descriptions.", + "type": "array", + "items": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "nextLink": { + "description": "the next link", + "type": "string", + "readOnly": true + } + } + }, + "VerificationCodeResponse": { + "type": "object", + "description": "Description of the response of the verification code.", + "properties": { + "name": { + "type": "string", + "description": "Name of certificate.", + "readOnly": true + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "Request etag." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "type": "object", + "properties": { + "verificationCode": { + "type": "string", + "description": "Verification code." + }, + "subject": { + "type": "string", + "description": "Certificate subject." + }, + "expiry": { + "type": "string", + "description": "Code expiry." + }, + "thumbprint": { + "type": "string", + "description": "Certificate thumbprint." + }, + "isVerified": { + "type": "boolean", + "description": "Indicate if the certificate is verified by owner of private key." + }, + "created": { + "type": "string", + "description": "Certificate created time." + }, + "updated": { + "type": "string", + "description": "Certificate updated time." + } + } + } + }, + "x-ms-azure-resource": true + }, + "VerificationCodeRequest": { + "type": "object", + "description": "The JSON-serialized leaf certificate", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/readme.md b/specification/deviceprovisioningservices/resource-manager/readme.md index 12b9dedbbe9a..9d6a860f4177 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.md @@ -54,6 +54,15 @@ input-file: - Microsoft.Devices/stable/2018-01-22/iotdps.json ``` +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01' +input-file: +- Microsoft.Devices/stable/2020-01-01/iotdps.json +``` + --- # Code Generation @@ -198,6 +207,7 @@ input-file: - $(this-folder)/Microsoft.Devices/preview/2017-08-21-preview/iotdps.json - $(this-folder)/Microsoft.Devices/stable/2017-11-15/iotdps.json - $(this-folder)/Microsoft.Devices/stable/2018-01-22/iotdps.json + - $(this-folder)/Microsoft.Devices/stable/2020-01-01/iotdps.json ``` diff --git a/specification/devops/resource-manager/readme.az.md b/specification/devops/resource-manager/readme.az.md new file mode 100644 index 000000000000..861cecad30bf --- /dev/null +++ b/specification/devops/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: devops + namespace: azure.mgmt.devops + package-name: azure-mgmt-devops +az-output-folder: $(azure-cli-extension-folder)/src/devops +python-sdk-output-folder: "$(az-output-folder)/azext_devops/vendored_sdks/devops" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/devops/resource-manager/readme.cli.md b/specification/devops/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/devops/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/devops/resource-manager/readme.md b/specification/devops/resource-manager/readme.md index f534d4c2d21b..bf7b56068c9c 100644 --- a/specification/devops/resource-manager/readme.md +++ b/specification/devops/resource-manager/readme.md @@ -53,10 +53,12 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java - repo: azure-sdk-for-go + - repo: azure-sdk-for-trenton - repo: azure-sdk-for-js - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_devops'] + - repo: azure-cli-extensions ``` ## Go @@ -103,3 +105,17 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli-name: devops + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: devops + package-name: devops + clear-output-folder: false +``` diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json index dd60faec5208..5eafc2b86ad4 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json @@ -836,9 +836,6 @@ { "$ref": "#/definitions/DigitalTwinsResource" } - ], - "required": [ - "sku" ] }, "DigitalTwinsPatchDescription": { @@ -889,7 +886,7 @@ "description": "The resource tags." }, "sku": { - "description": "The resource sku.", + "description": "This property is reserved for future use, and will be ignored/omitted", "$ref": "#/definitions/DigitalTwinsSkuInfo" } }, @@ -1177,7 +1174,6 @@ ], "properties": { "properties": { - "x-ms-client-flatten": true, "description": "DigitalTwinsInstance endpoint resource properties.", "$ref": "#/definitions/DigitalTwinsEndpointResourceProperties" } diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsDelete_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsDelete_example.json index 605145c989a6..4961b326a398 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsDelete_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsDelete_example.json @@ -13,9 +13,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "lastUpdatedTime": "2019-12-06T12:21:58.610Z", diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsGet_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsGet_example.json index d6faad9e8c2c..3c2d917a47e7 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsGet_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsGet_example.json @@ -12,9 +12,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "lastUpdatedTime": "2019-12-06T12:21:58.610Z", diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsListByResourceGroup_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsListByResourceGroup_example.json index 7c75885d58bc..7cc9457d1122 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsListByResourceGroup_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsListByResourceGroup_example.json @@ -14,9 +14,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "provisioningState": "Provisioning", @@ -28,9 +25,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService2", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "provisioningState": "Provisioning", diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsList_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsList_example.json index 63dca7f9958e..9b5ea011dbd3 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsList_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsList_example.json @@ -13,9 +13,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "provisioningState": "Provisioning", @@ -27,9 +24,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService2", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "provisioningState": "Provisioning", diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPatch_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPatch_example.json index 7c3d30d0dc1a..fcf1a7d2e56e 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPatch_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPatch_example.json @@ -17,9 +17,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "tags": { "purpose": "dev" }, diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPut_example.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPut_example.json index ff35dd81a970..523e94e93049 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPut_example.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/examples/DigitalTwinsPut_example.json @@ -5,10 +5,7 @@ "resourceName": "myDigitalTwinsService", "api-version": "2020-03-01-preview", "digitalTwinsCreate": { - "location": "WestUS", - "sku": { - "name": "F1" - } + "location": "WestUS" } }, "responses": { @@ -18,9 +15,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "lastUpdatedTime": "2019-12-06T12:21:58.610Z", @@ -35,9 +29,6 @@ "location": "westus", "type": "Microsoft.DigitalTwins/DigitalTwinsInstance", "name": "myDigitalTwinsService", - "sku": { - "name": "F1" - }, "properties": { "createdTime": "2019-11-19T12:55:05.229Z", "lastUpdatedTime": "2019-12-06T12:21:58.610Z", diff --git a/specification/digitaltwins/resource-manager/readme.md b/specification/digitaltwins/resource-manager/readme.md index 3637629ef595..7e6c12494037 100644 --- a/specification/digitaltwins/resource-manager/readme.md +++ b/specification/digitaltwins/resource-manager/readme.md @@ -24,7 +24,7 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the digitaltwins. -```yaml +``` yaml openapi-type: arm tag: package-2020-03-01-preview ``` @@ -33,7 +33,7 @@ tag: package-2020-03-01-preview These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2020-03-01-preview' +``` yaml $(tag) == 'package-2020-03-01-preview' input-file: - Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json ``` @@ -47,7 +47,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -```yaml $(swagger-to-sdk) +``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java @@ -78,7 +78,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -94,7 +94,7 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' @@ -102,3 +102,14 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## Suppression + +``` yaml +directive: + - suppress: AvoidNestedProperties + where: $.definitions.DigitalTwinsEndpointResource.properties.properties + from: digitaltwins.json + reason: |- + Flattening properties generates SDK (using autorest) that does not support polymorphism. + In this case DigitalTwinsEndpointResourceProperties is used as a base class for EventGrid, EventHub and ServiceBus. Flattening DigitalTwinsEndpointResourceProperties removes the link between DigitalTwinsEndpointResource and resources above. +``` diff --git a/specification/digitaltwins/resource-manager/readme.python.md b/specification/digitaltwins/resource-manager/readme.python.md index e17563d2181a..24e1b64ff0e7 100644 --- a/specification/digitaltwins/resource-manager/readme.python.md +++ b/specification/digitaltwins/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.DigitalTwins - package-name: digitaltwins + namespace: azure.mgmt.digitaltwins + package-name: azure-mgmt-digitaltwins package-version: 2020-03-01-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/digitaltwins + output-folder: $(python-sdks-folder)/digitaltwins/azure-mgmt-digitaltwins/azure/mgmt/digitaltwins ``` diff --git a/specification/dns/resource-manager/readme.cli.md b/specification/dns/resource-manager/readme.cli.md index 04bbcbafd97a..f9d7f22c0541 100644 --- a/specification/dns/resource-manager/readme.cli.md +++ b/specification/dns/resource-manager/readme.cli.md @@ -12,39 +12,39 @@ cli: cli-directive: - select: 'parameter' where: - operationGroup: 'record_sets' + operationGroup: 'recordSets' parameter: 'parameters' set: name: 'record_set' required: true - select: 'parameter' where: - operationGroup: 'record_sets' - parameter: 'relative_record_set_name' + operationGroup: 'recordSets' + parameter: 'relativeRecordSetName' set: - name: 'Name' + name: 'name' alias: relative_record_set_name - select: 'parameter' where: - operationGroup: 'record_sets' - parameter: '(recordsetnamesuffix|record_set_name_suffix)' + operationGroup: 'recordSets' + parameter: '(recordsetnamesuffix|recordSetNameSuffix)' set: name: 'name_suffix' - select: 'operation' where: - operationGroup: 'record_sets' - operation: '^(create_or_update|update)$' + operationGroup: 'recordSets' + operation: '^(createOrUpdate|update)$' hidden: true - select: 'parameter' where: - operationGroup: 'dns_resource_reference' + operationGroup: 'dnsResourceReference' parameter: 'parameters' set: name: 'resource_reference' - select: 'operation' where: - operationGroup: 'dns_resource_reference' - operation: 'get_by_target_resources' + operationGroup: 'dnsResourceReference' + operation: 'getByTargetResources' hidden: true - select: 'operation' where: @@ -60,6 +60,6 @@ cli: - select: 'operation' where: operationGroup: 'zones' - operation: 'create_or_update' + operation: 'createOrUpdate' hidden: true ``` diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json index 052a5e20473b..5654c5f25f55 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json @@ -491,7 +491,7 @@ } } }, - "ReplicaSet": { + "ReplicaSet": { "description": "Replica Set Definition", "properties": { "replicaSetId": { diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json index 417bcb7fe6db..472a34281067 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json @@ -47,11 +47,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -100,11 +100,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -153,7 +153,7 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "replicaSets": [ diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json index 9553e3590a05..da5850f9784d 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json @@ -18,11 +18,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json index f1536af06a21..6fc61d10bb04 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json @@ -19,11 +19,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json index 4181f4bb3ffb..553e034a9af0 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json @@ -18,11 +18,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json index 35de395e3988..1d5d8b684199 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json @@ -10,7 +10,7 @@ "replicaSets": [ { "location": "West US", - "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" }, { "location": "East US", @@ -53,11 +53,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -117,11 +117,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json index 0934272be086..7f2bc6f2bc4a 100644 --- a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json +++ b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json @@ -17,7 +17,7 @@ }, "modelVersion": { "description": "The version of the model that was registered.", - "type": "integer" + "type": "string" }, "modelTags": { "description": "The tags of the model that was registered.", @@ -125,6 +125,40 @@ "format": "date-time" } } + }, + "MachineLearningServicesRunStatusChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.RunStatusChanged event.", + "type": "object", + "properties": { + "experimentId": { + "description": "The ID of the experiment that the Machine Learning Run belongs to.", + "type": "string" + }, + "experimentName": { + "description": "The name of the experiment that the Machine Learning Run belongs to.", + "type": "string" + }, + "runId": { + "description": "The ID of the Machine Learning Run.", + "type": "string" + }, + "runType": { + "description": "The Run Type of the Machine Learning Run.", + "type": "string" + }, + "runTags": { + "description": "The tags of the Machine Learning Run.", + "type": "object" + }, + "runProperties": { + "description": "The properties of the Machine Learning Run.", + "type": "object" + }, + "runStatus": { + "description": "The status of the Machine Learning Run.", + "type": "string" + } + } } } } diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json index 77ee12851d56..407f89526a45 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json @@ -882,7 +882,8 @@ "EventChannels_Delete": { "$ref": "./examples/EventChannels_Delete.json" } - } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels": { @@ -1618,6 +1619,12 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { @@ -1637,7 +1644,7 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, @@ -1987,6 +1994,12 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { @@ -2006,7 +2019,7 @@ } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, @@ -3466,7 +3479,7 @@ "nextLinkName": null }, "x-ms-examples": { - "PartnerTopics_Get": { + "PartnerRegistrations_List": { "$ref": "./examples/PartnerRegistrations_List.json" } } @@ -3919,7 +3932,9 @@ "summary": "Update a specific private endpoint connection.", "description": "Update a specific private endpoint connection under a topic or domain.", "operationId": "PrivateEndpointConnections_Update", - "consumes": [], + "consumes": [ + "application/json" + ], "produces": [ "application/json" ], @@ -3955,6 +3970,15 @@ "required": true, "type": "string" }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection object to update.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -3977,7 +4001,7 @@ } }, "x-ms-examples": { - "PartnerTopics_Delete": { + "PrivateEndpointConnections_Update": { "$ref": "./examples/PrivateEndpointConnections_Update.json" } }, @@ -5354,7 +5378,7 @@ "type": "object", "properties": { "name": { - "description": "the Sku name of the resource.\r\nthe possible values: Basic; Premium", + "description": "The Sku name of the resource. The possible values are: Basic or Premium.", "enum": [ "Basic", "Premium" @@ -5404,7 +5428,6 @@ }, "PrivateEndpointConnection": { "type": "object", - "description": "PrivateEndpointConnection resource information.", "allOf": [ { "$ref": "#/definitions/Resource" @@ -5475,7 +5498,7 @@ "x-ms-azure-resource": true }, "PrivateEndpointConnectionProperties": { - "description": "Properties of the private endpoint connection resource", + "description": "Properties of the private endpoint connection resource.", "type": "object", "properties": { "privateEndpoint": { @@ -5522,7 +5545,7 @@ } }, "ConnectionState": { - "description": "ConnectionState Information.", + "description": "ConnectionState information.", "type": "object", "properties": { "status": { @@ -5721,8 +5744,8 @@ } }, "DomainUpdateParameterProperties": { - "type": "object", "description": "Information of domain update parameter properties.", + "type": "object", "properties": { "publicNetworkAccess": { "description": "This determines if traffic is allowed over public network. By default it is enabled. \r\nYou can further restrict to specific IPs by configuring ", @@ -5872,6 +5895,34 @@ "name": "EventChannelProvisioningState", "modelAsString": true } + }, + "partnerTopicReadinessState": { + "description": "The readiness state of the corresponding partner topic.", + "enum": [ + "NotActivatedByUserYet", + "ActivatedByUser", + "DeactivatedByUser", + "DeletedByUser" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PartnerTopicReadinessState", + "modelAsString": true + } + }, + "expirationTimeIfNotActivatedUtc": { + "format": "date-time", + "description": "Expiration time of the event channel. If this timer expires while the corresponding partner topic is never activated,\r\nthe event channel and corresponding partner topic are deleted.", + "type": "string" + }, + "filter": { + "$ref": "#/definitions/EventChannelFilter", + "description": "Information about the filter for the event channel." + }, + "partnerTopicFriendlyDescription": { + "description": "Friendly description about the topic. This can be set by the publisher/partner to show custom description for the customer partner topic.\r\nThis will be helpful to remove any ambiguity of the origin of creation of the partner topic for the customer.", + "type": "string" } } }, @@ -5903,350 +5954,89 @@ } } }, - "EventChannel": { - "description": "Event Channel.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/EventChannelProperties", - "description": "Properties of the EventChannel.", - "x-ms-client-flatten": true - } - } - }, - "EventChannelsListResult": { - "description": "Result of the List Event Channels operation", + "EventChannelFilter": { + "description": "Filter for the Event Channel.", "type": "object", "properties": { - "value": { - "description": "A collection of Event Channels", + "advancedFilters": { + "description": "An array of advanced filters that are used for filtering event channels.", "type": "array", "items": { - "$ref": "#/definitions/EventChannel" + "$ref": "#/definitions/AdvancedFilter" } - }, - "nextLink": { - "description": "A link for the next page of event channels", - "type": "string" } } }, - "EventSubscriptionProperties": { - "description": "Properties of the Event Subscription.", + "NumberInAdvancedFilter": { + "description": "NumberIn Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "topic": { - "description": "Name of the topic of the event subscription.", - "type": "string", - "readOnly": true - }, - "provisioningState": { - "description": "Provisioning state of the event subscription.", - "enum": [ - "Creating", - "Updating", - "Deleting", - "Succeeded", - "Canceled", - "Failed", - "AwaitingManualAction" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "EventSubscriptionProvisioningState", - "modelAsString": true - } - }, - "destination": { - "$ref": "#/definitions/EventSubscriptionDestination", - "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." - }, - "deliveryWithResourceIdentity": { - "$ref": "#/definitions/DeliveryWithResourceIdentity", - "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." - }, - "filter": { - "$ref": "#/definitions/EventSubscriptionFilter", - "description": "Information about the filter for the event subscription." - }, - "labels": { - "description": "List of user defined labels.", + "values": { + "description": "The set of filter values.", "type": "array", "items": { - "type": "string" - } - }, - "expirationTimeUtc": { - "format": "date-time", - "description": "Expiration time of the event subscription.", - "type": "string" - }, - "eventDeliverySchema": { - "description": "The event delivery schema for the event subscription.", - "enum": [ - "EventGridSchema", - "CustomInputSchema", - "CloudEventSchemaV1_0" - ], - "type": "string", - "x-ms-enum": { - "name": "EventDeliverySchema", - "modelAsString": true + "format": "double", + "type": "number" } - }, - "retryPolicy": { - "$ref": "#/definitions/RetryPolicy", - "description": "The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events." - }, - "deadLetterDestination": { - "$ref": "#/definitions/DeadLetterDestination", - "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." - }, - "deadLetterWithResourceIdentity": { - "$ref": "#/definitions/DeadLetterWithResourceIdentity", - "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." } - } + }, + "x-ms-discriminator-value": "NumberIn" }, - "DeliveryWithResourceIdentity": { - "description": "Information about the delivery for an event subscription with resource identity.", + "NumberNotInAdvancedFilter": { + "description": "NumberNotIn Advanced Filter.", "type": "object", - "properties": { - "identity": { - "$ref": "#/definitions/EventSubscriptionIdentity", - "description": "The identity to use when delivering events." - }, - "destination": { - "$ref": "#/definitions/EventSubscriptionDestination", - "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" } - } - }, - "EventSubscriptionFilter": { - "description": "Filter for the Event Subscription.", - "type": "object", + ], "properties": { - "subjectBeginsWith": { - "description": "An optional string to filter events for an event subscription based on a resource path prefix.\r\nThe format of this depends on the publisher of the events.\r\nWildcard characters are not supported in this path.", - "type": "string" - }, - "subjectEndsWith": { - "description": "An optional string to filter events for an event subscription based on a resource path suffix.\r\nWildcard characters are not supported in this path.", - "type": "string" - }, - "includedEventTypes": { - "description": "A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.", - "type": "array", - "items": { - "type": "string" - } - }, - "isSubjectCaseSensitive": { - "description": "Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter\r\nshould be compared in a case sensitive manner.", - "default": false, - "type": "boolean" - }, - "advancedFilters": { - "description": "An array of advanced filters that are used for filtering event subscriptions.", + "values": { + "description": "The set of filter values.", "type": "array", "items": { - "$ref": "#/definitions/AdvancedFilter" + "format": "double", + "type": "number" } } - } + }, + "x-ms-discriminator-value": "NumberNotIn" }, - "RetryPolicy": { - "description": "Information about the retry policy for an event subscription.", + "NumberLessThanAdvancedFilter": { + "description": "NumberLessThan Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "maxDeliveryAttempts": { - "format": "int32", - "description": "Maximum number of delivery retry attempts for events.", - "type": "integer" - }, - "eventTimeToLiveInMinutes": { - "format": "int32", - "description": "Time To Live (in minutes) for events.", - "type": "integer" + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" } - } + }, + "x-ms-discriminator-value": "NumberLessThan" }, - "DeadLetterWithResourceIdentity": { - "description": "Information about the deadletter destination with resource identity.", + "NumberGreaterThanAdvancedFilter": { + "description": "NumberGreaterThan Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "identity": { - "$ref": "#/definitions/EventSubscriptionIdentity", - "description": "The identity to use when dead-lettering events." - }, - "deadLetterDestination": { - "$ref": "#/definitions/DeadLetterDestination", - "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." - } - } - }, - "EventSubscriptionIdentity": { - "description": "The identity information with the event subscription.", - "type": "object", - "properties": { - "type": { - "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity.", - "enum": [ - "SystemAssigned", - "UserAssigned" - ], - "type": "string", - "x-ms-enum": { - "name": "EventSubscriptionIdentityType", - "modelAsString": true - } - }, - "userAssignedIdentity": { - "description": "The user identity associated with the resource.", - "type": "string" - } - } - }, - "WebHookEventSubscriptionDestinationProperties": { - "description": "Information about the webhook destination properties for an event subscription.", - "type": "object", - "properties": { - "endpointUrl": { - "description": "The URL that represents the endpoint of the destination of an event subscription.", - "type": "string" - }, - "endpointBaseUrl": { - "description": "The base URL that represents the endpoint of the destination of an event subscription.", - "type": "string", - "readOnly": true - }, - "maxEventsPerBatch": { - "format": "int32", - "description": "Maximum number of events per batch.", - "type": "integer" - }, - "preferredBatchSizeInKilobytes": { - "format": "int32", - "description": "Preferred batch size in Kilobytes.", - "type": "integer" - }, - "azureActiveDirectoryTenantId": { - "description": "The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests.", - "type": "string" - }, - "azureActiveDirectoryApplicationIdOrUri": { - "description": "The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests.", - "type": "string" - } - } - }, - "StorageBlobDeadLetterDestinationProperties": { - "description": "Properties of the storage blob based dead letter destination.", - "type": "object", - "properties": { - "resourceId": { - "description": "The Azure Resource ID of the storage account that is the destination of the deadletter events", - "type": "string" - }, - "blobContainerName": { - "description": "The name of the Storage blob container that is the destination of the deadletter events", - "type": "string" - } - } - }, - "NumberInAdvancedFilter": { - "description": "NumberIn Advanced Filter.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], - "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } - } - }, - "x-ms-discriminator-value": "NumberIn" - }, - "StorageBlobDeadLetterDestination": { - "description": "Information about the storage blob based dead letter destination.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DeadLetterDestination" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/StorageBlobDeadLetterDestinationProperties", - "description": "The properties of the Storage Blob based deadletter destination", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "StorageBlob" - }, - "NumberNotInAdvancedFilter": { - "description": "NumberNotIn Advanced Filter.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], - "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } - } - }, - "x-ms-discriminator-value": "NumberNotIn" - }, - "NumberLessThanAdvancedFilter": { - "description": "NumberLessThan Advanced Filter.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], - "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" - } - }, - "x-ms-discriminator-value": "NumberLessThan" - }, - "NumberGreaterThanAdvancedFilter": { - "description": "NumberGreaterThan Advanced Filter.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], - "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" } }, "x-ms-discriminator-value": "NumberGreaterThan" @@ -6432,6 +6222,280 @@ }, "discriminator": "operatorType" }, + "EventChannel": { + "description": "Event Channel.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EventChannelProperties", + "description": "Properties of the EventChannel.", + "x-ms-client-flatten": true + } + } + }, + "EventChannelsListResult": { + "description": "Result of the List Event Channels operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of Event Channels", + "type": "array", + "items": { + "$ref": "#/definitions/EventChannel" + } + }, + "nextLink": { + "description": "A link for the next page of event channels", + "type": "string" + } + } + }, + "EventSubscriptionProperties": { + "description": "Properties of the Event Subscription.", + "type": "object", + "properties": { + "topic": { + "description": "Name of the topic of the event subscription.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "Provisioning state of the event subscription.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed", + "AwaitingManualAction" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EventSubscriptionProvisioningState", + "modelAsString": true + } + }, + "destination": { + "$ref": "#/definitions/EventSubscriptionDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deliveryWithResourceIdentity": { + "$ref": "#/definitions/DeliveryWithResourceIdentity", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "filter": { + "$ref": "#/definitions/EventSubscriptionFilter", + "description": "Information about the filter for the event subscription." + }, + "labels": { + "description": "List of user defined labels.", + "type": "array", + "items": { + "type": "string" + } + }, + "expirationTimeUtc": { + "format": "date-time", + "description": "Expiration time of the event subscription.", + "type": "string" + }, + "eventDeliverySchema": { + "description": "The event delivery schema for the event subscription.", + "enum": [ + "EventGridSchema", + "CustomInputSchema", + "CloudEventSchemaV1_0" + ], + "type": "string", + "x-ms-enum": { + "name": "EventDeliverySchema", + "modelAsString": true + } + }, + "retryPolicy": { + "$ref": "#/definitions/RetryPolicy", + "description": "The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events." + }, + "deadLetterDestination": { + "$ref": "#/definitions/DeadLetterDestination", + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deadLetterWithResourceIdentity": { + "$ref": "#/definitions/DeadLetterWithResourceIdentity", + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." + } + } + }, + "DeliveryWithResourceIdentity": { + "description": "Information about the delivery for an event subscription with resource identity.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/EventSubscriptionIdentity", + "description": "The identity to use when delivering events." + }, + "destination": { + "$ref": "#/definitions/EventSubscriptionDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + } + } + }, + "EventSubscriptionFilter": { + "description": "Filter for the Event Subscription.", + "type": "object", + "properties": { + "subjectBeginsWith": { + "description": "An optional string to filter events for an event subscription based on a resource path prefix.\r\nThe format of this depends on the publisher of the events.\r\nWildcard characters are not supported in this path.", + "type": "string" + }, + "subjectEndsWith": { + "description": "An optional string to filter events for an event subscription based on a resource path suffix.\r\nWildcard characters are not supported in this path.", + "type": "string" + }, + "includedEventTypes": { + "description": "A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.", + "type": "array", + "items": { + "type": "string" + } + }, + "isSubjectCaseSensitive": { + "description": "Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter\r\nshould be compared in a case sensitive manner.", + "default": false, + "type": "boolean" + }, + "advancedFilters": { + "description": "An array of advanced filters that are used for filtering event subscriptions.", + "type": "array", + "items": { + "$ref": "#/definitions/AdvancedFilter" + } + } + } + }, + "RetryPolicy": { + "description": "Information about the retry policy for an event subscription.", + "type": "object", + "properties": { + "maxDeliveryAttempts": { + "format": "int32", + "description": "Maximum number of delivery retry attempts for events.", + "type": "integer" + }, + "eventTimeToLiveInMinutes": { + "format": "int32", + "description": "Time To Live (in minutes) for events.", + "type": "integer" + } + } + }, + "DeadLetterWithResourceIdentity": { + "description": "Information about the deadletter destination with resource identity.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/EventSubscriptionIdentity", + "description": "The identity to use when dead-lettering events." + }, + "deadLetterDestination": { + "$ref": "#/definitions/DeadLetterDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." + } + } + }, + "EventSubscriptionIdentity": { + "description": "The identity information with the event subscription.", + "type": "object", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity.", + "enum": [ + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "EventSubscriptionIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentity": { + "description": "The user identity associated with the resource.", + "type": "string" + } + } + }, + "WebHookEventSubscriptionDestinationProperties": { + "description": "Information about the webhook destination properties for an event subscription.", + "type": "object", + "properties": { + "endpointUrl": { + "description": "The URL that represents the endpoint of the destination of an event subscription.", + "type": "string" + }, + "endpointBaseUrl": { + "description": "The base URL that represents the endpoint of the destination of an event subscription.", + "type": "string", + "readOnly": true + }, + "maxEventsPerBatch": { + "format": "int32", + "description": "Maximum number of events per batch.", + "type": "integer" + }, + "preferredBatchSizeInKilobytes": { + "format": "int32", + "description": "Preferred batch size in Kilobytes.", + "type": "integer" + }, + "azureActiveDirectoryTenantId": { + "description": "The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests.", + "type": "string" + }, + "azureActiveDirectoryApplicationIdOrUri": { + "description": "The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests.", + "type": "string" + } + } + }, + "StorageBlobDeadLetterDestinationProperties": { + "description": "Properties of the storage blob based dead letter destination.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource ID of the storage account that is the destination of the deadletter events", + "type": "string" + }, + "blobContainerName": { + "description": "The name of the Storage blob container that is the destination of the deadletter events", + "type": "string" + } + } + }, + "StorageBlobDeadLetterDestination": { + "description": "Information about the storage blob based dead letter destination.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DeadLetterDestination" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageBlobDeadLetterDestinationProperties", + "description": "The properties of the Storage Blob based deadletter destination", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "StorageBlob" + }, "WebHookEventSubscriptionDestination": { "description": "Information about the webhook destination for an event subscription.", "type": "object", @@ -6968,7 +7032,23 @@ "type": "string" }, "partnerResourceTypeDescription": { - "description": "Description of the partner resource type.", + "description": "Short description of the partner resource type. The length of this description should not exceed 256 characters.", + "type": "string" + }, + "longDescription": { + "description": "Long description for the custom scenarios and integration to be displayed in the portal if needed.\r\nLength of this description should not exceed 2048 characters.", + "type": "string" + }, + "partnerCustomerServiceNumber": { + "description": "The customer service number of the publisher. The expected phone format should start with a '+' sign \r\nfollowed by the country code. The remaining digits are then followed. Only digits and spaces are allowed and its\r\nlength cannot exceed 16 digits including country code. Examples of valid phone numbers are: +1 515 123 4567 and\r\n+966 7 5115 2471. Examples of invalid phone numbers are: +1 (515) 123-4567, 1 515 123 4567 and +966 121 5115 24 7 551 1234 43", + "type": "string" + }, + "partnerCustomerServiceExtension": { + "description": "The extension of the customer service number of the publisher. Only digits are allowed and number of digits should not exceed 10.", + "type": "string" + }, + "customerServiceUri": { + "description": "The extension of the customer service URI of the publisher.", "type": "string" }, "setupUri": { @@ -7021,6 +7101,13 @@ "description": "Properties of the Partner Registration update.", "type": "object", "properties": { + "tags": { + "description": "Tags of the partner registration resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, "partnerTopicTypeName": { "description": "Name of the partner topic type.", "type": "string" @@ -7122,6 +7209,19 @@ } } }, + "PartnerTopicUpdateParameters": { + "description": "Properties of the Partner Topic update.", + "type": "object", + "properties": { + "tags": { + "description": "Tags of the partner topic.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, "PartnerTopicProperties": { "description": "Properties of the Partner Topic.", "type": "object", @@ -7130,6 +7230,11 @@ "description": "Source associated with this partner topic. This represents a unique partner resource.", "type": "string" }, + "expirationTimeIfNotActivatedUtc": { + "format": "date-time", + "description": "Expiration time of the partner topic. If this timer expires while the partner topic is still never activated,\r\nthe partner topic and corresponding event channel are deleted.", + "type": "string" + }, "provisioningState": { "description": "Provisioning state of the partner topic.", "enum": [ @@ -7159,6 +7264,10 @@ "name": "PartnerTopicActivationState", "modelAsString": true } + }, + "partnerTopicFriendlyDescription": { + "description": "Friendly description about the topic. This can be set by the publisher/partner to show custom description for the customer partner topic.\r\nThis will be helpful to remove any ambiguity of the origin of creation of the partner topic for the customer.", + "type": "string" } } }, @@ -7178,19 +7287,6 @@ } } }, - "PartnerTopicUpdateParameters": { - "description": "Properties of the Partner Topic update.", - "type": "object", - "properties": { - "tags": { - "description": "Tags of the partner topic.", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, "PartnerTopicsListResult": { "description": "Result of the List Partner Topics operation.", "type": "object", @@ -7307,8 +7403,8 @@ } }, "PrivateLinkResource": { - "type": "object", "description": "Information of the private link resource.", + "type": "object", "properties": { "properties": { "$ref": "#/definitions/PrivateLinkResourceProperties", @@ -7369,40 +7465,6 @@ } } }, - "SkuDefinitionsForResourceTypeListResult": { - "description": "List collection of Sku Definitions for each Resource Type.", - "type": "object", - "properties": { - "value": { - "description": "A collection of Sku Definitions for each Resource Type.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuDefinitionsForResourceType" - } - }, - "nextLink": { - "description": "A link for the next page of Sku Definitions.", - "type": "string" - } - } - }, - "SkuDefinitionsForResourceType": { - "description": "Describes an EventGrid Resource Sku Definition.", - "type": "object", - "properties": { - "resourceType": { - "description": "The Resource Type applicable for the Sku.", - "type": "string" - }, - "skus": { - "description": "The Sku pricing tiers for the resource type.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceSku" - } - } - } - }, "SystemTopicProperties": { "description": "Properties of the System Topic.", "type": "object", @@ -7490,7 +7552,6 @@ "type": "object", "properties": { "privateEndpointConnections": { - "description": "List of private endpoint connections.", "type": "array", "items": { "$ref": "#/definitions/PrivateEndpointConnection" @@ -7598,8 +7659,8 @@ } }, "identity": { - "description": "Resource identity information.", - "$ref": "#/definitions/IdentityInfo" + "$ref": "#/definitions/IdentityInfo", + "description": "Resource identity information." }, "properties": { "$ref": "#/definitions/TopicUpdateParameterProperties", diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json index 532a2e9b343d..05dbe5771842 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json @@ -5,7 +5,16 @@ "parentType": "topics", "parentName": "exampletopic1", "privateEndpointConnectionName": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", - "api-version": "2020-04-01-preview" + "api-version": "2020-04-01-preview", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approving connection", + "actionsRequired": "None" + } + } + } }, "responses": { "200": { @@ -18,8 +27,8 @@ "topic" ], "privateLinkServiceConnectionState": { - "status": "Pending", - "description": "Test", + "status": "Approved", + "description": "approving connection", "actionsRequired": "None" }, "provisioningState": "Succeeded" @@ -39,8 +48,8 @@ "topic" ], "privateLinkServiceConnectionState": { - "status": "Pending", - "description": "Test", + "status": "Approved", + "description": "approving connection", "actionsRequired": "None" }, "provisioningState": "Succeeded" diff --git a/specification/eventgrid/resource-manager/readme.java.md b/specification/eventgrid/resource-manager/readme.java.md index 7f0e1b379b95..b092844a2960 100644 --- a/specification/eventgrid/resource-manager/readme.java.md +++ b/specification/eventgrid/resource-manager/readme.java.md @@ -26,7 +26,7 @@ batch: - tag: package-2018-01 ``` -### Tag: package-2020-01-preview and java +### Tag: package-2020-04-preview and java These settings apply only when `--tag=package-2020-04-preview --java` is specified on the command line. diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/common/v1/definitions.json b/specification/eventhub/resource-manager/Microsoft.EventHub/common/v1/definitions.json new file mode 100644 index 000000000000..195b5900769a --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/common/v1/definitions.json @@ -0,0 +1,221 @@ +{ + "swagger": "2.0", + "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" + } + } + }, + "info": { + "version": "2017-04-01", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "TrackedResource": { + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Definition of resource." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "description": "The resource definition.", + "x-ms-azure-resource": true + }, + "ErrorResponse": { + "description": "Error response indicates Event Hub service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the resource group within the azure subscription." + }, + "NamespaceNameParameter": { + "name": "namespaceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 6, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The Namespace name" + }, + "EventHubNameParameter": { + "name": "eventHubName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The Event Hub name" + }, + "ConsumerGroupNameParameter": { + "name": "consumerGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The consumer group name" + }, + "SkipParameter": { + "name": "$skip", + "description": "Skip is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 0, + "maximum": 1000, + "x-ms-parameter-location": "method" + }, + "TopParameter": { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N usageDetails.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 1000, + "x-ms-parameter-location": "method" + }, + "AuthorizationRuleNameParameter": { + "name": "authorizationRuleName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "description": "The authorization rule name." + }, + "AliasNameParameter": { + "name": "alias", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The Disaster Recovery configuration name" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "minLength": 6, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The name of the Event Hubs Cluster." + }, + "IpFilterRuleNameParameter": { + "name": "ipFilterRuleName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "description": "The IP Filter Rule name." + }, + "VirtualNetworkRuleNameParameter": { + "name": "virtualNetworkRuleName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "description": "The Virtual Network Rule name." + }, + "SkuNameParameter": { + "name": "sku", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The sku type." + } + } +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json new file mode 100644 index 000000000000..a31517c688e1 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json @@ -0,0 +1,98 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/availableClusterRegions": { + "get": { + "tags": [ + "Event Hubs Clusters" + ], + "operationId": "Clusters_ListAvailableClusters", + "x-ms-examples": { + "ListAvailableClusters": { + "$ref": "./examples/Clusters/ListAvailableClustersGet.json" + } + }, + "description": "List the quantity of available pre-provisioned Event Hubs Clusters, indexed by Azure region.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Available clusters listed successfully.", + "schema": { + "$ref": "#/definitions/AvailableClustersList" + } + }, + "default": { + "description": "Error response describing why available clusters could not be successfully listed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AvailableClustersList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableCluster" + }, + "description": "The count of readily available and pre-provisioned Event Hubs Clusters per region." + } + }, + "description": "The response of the List Available Clusters operation." + }, + "AvailableCluster": { + "properties": { + "location": { + "type": "string", + "description": "Location fo the Available Cluster" + } + }, + "description": "Pre-provisioned and readily available Event Hubs Cluster count per region." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json new file mode 100644 index 000000000000..e96bca0885db --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json @@ -0,0 +1,425 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/clusters": { + "get": { + "tags": [ + "Event Hubs Clusters" + ], + "operationId": "Clusters_ListByResourceGroup", + "x-ms-examples": { + "ClustersListByResourceGroup": { + "$ref": "./examples/Clusters/ClustersListByResourceGroup.json" + } + }, + "description": "Lists the available Event Hubs Clusters within an ARM resource group", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Clusters returned successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Event Hub Cluster error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters/{clusterName}": { + "get": { + "tags": [ + "Event Hubs Cluster" + ], + "operationId": "Clusters_Get", + "x-ms-examples": { + "ClusterGet": { + "$ref": "./examples/Clusters/ClusterGet.json" + } + }, + "description": "Gets the resource description of the specified Event Hubs Cluster.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Event Hubs Cluster resource description returned successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Event Hubs Cluster error response describing why the cluster description get operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Event Hubs Cluster" + ], + "operationId": "Clusters_Put", + "x-ms-examples": { + "ClusterPut": { + "$ref": "./examples/Clusters/ClusterPut.json" + } + }, + "description": "Creates or updates an instance of an Event Hubs Cluster.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Event Hubs Cluster successfully created or updated.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Event Hubs Cluster create or update request accepted.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Event Hubs Cluster create or update request accepted." + }, + "default": { + "description": "Event Hubs error response detailing why the Event Hubs Cluster create or update operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Event Hubs Cluster" + ], + "operationId": "Clusters_Patch", + "x-ms-examples": { + "ClusterPatch": { + "$ref": "./examples/Clusters/ClusterPatch.json" + } + }, + "description": "Modifies mutable properties on the Event Hubs Cluster. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The properties of the Event Hubs Cluster which should be updated." + } + ], + "responses": { + "200": { + "description": "Event Hubs Cluster successfully created.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Event Hubs Cluster update request accepted.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Event Hubs Cluster update request accepted." + }, + "default": { + "description": "Event Hubs error response detailing why the Event Hubs Cluster update operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Event Hubs Cluster" + ], + "operationId": "Clusters_Delete", + "x-ms-examples": { + "ClusterDelete": { + "$ref": "./examples/Clusters/ClusterDelete.json" + } + }, + "description": "Deletes an existing Event Hubs Cluster. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Event Hubs Cluster successfully deleted." + }, + "202": { + "description": "Event Hubs Cluster delete request accepted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Event Hubs error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters/{clusterName}/namespaces": { + "get": { + "tags": [ + "Event Hubs Namespace Enumeration in Cluster" + ], + "operationId": "Clusters_ListNamespaces", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "description": "List all Event Hubs Namespace IDs in an Event Hubs Dedicated Cluster.", + "x-ms-examples": { + "ListNamespacesInCluster": { + "$ref": "./examples/Clusters/ListNamespacesInClusterGet.json" + } + }, + "responses": { + "200": { + "description": "List of Namespace IDs in Cluster successfully delivered.", + "schema": { + "$ref": "#/definitions/EHNamespaceIdListResult" + } + }, + "default": { + "description": "Event Hubs Cluster error response detailing why this operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Cluster": { + "properties": { + "sku": { + "$ref": "#/definitions/ClusterSku", + "description": "Properties of the cluster SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "properties": { + "created": { + "readOnly": true, + "type": "string", + "description": "The UTC time when the Event Hubs Cluster was created." + }, + "updated": { + "readOnly": true, + "type": "string", + "description": "The UTC time when the Event Hubs Cluster was last updated." + }, + "metricId": { + "readOnly": true, + "type": "string", + "description": "The metric ID of the cluster resource. Provided by the service and not modifiable by the user." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of the Cluster resource" + } + }, + "description": "Event Hubs Cluster properties supplied in responses in List or Get operations." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Single Event Hubs Cluster resource in List or Get operations." + }, + "ClusterSku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of this SKU.", + "enum": [ + "Dedicated" + ], + "x-ms-enum": { + "name": "ClusterSkuName", + "modelAsString": true + } + }, + "capacity": { + "format": "int32", + "maximum": 32, + "minimum": 1, + "type": "integer", + "description": "The quantity of Event Hubs Cluster Capacity Units contained in this cluster." + } + }, + "required": [ + "name" + ], + "description": "SKU parameters particular to a cluster instance." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "The Event Hubs Clusters present in the List Event Hubs operation results." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Empty unless the value parameter contains an incomplete list of Event Hubs Clusters." + } + }, + "description": "The response of the List Event Hubs Clusters operation." + }, + "EHNamespaceIdListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EHNamespaceIdContainer" + }, + "description": "Result of the List Namespace IDs operation" + } + }, + "description": "The response of the List Namespace IDs operation" + }, + "EHNamespaceIdContainer": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "id parameter" + } + }, + "description": "The full ARM ID of an Event Hubs Namespace" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json deleted file mode 100644 index cef1828ec89b..000000000000 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json +++ /dev/null @@ -1,1972 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "EventHub2018PreviewManagementClient", - "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", - "version": "2018-01-01-preview" - }, - "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": { - "/providers/Microsoft.EventHub/operations": { - "get": { - "tags": [ - "Operations" - ], - "operationId": "Operations_List", - "x-ms-examples": { - "EHOperations_List": { - "$ref": "./examples/Operations_List.json" - } - }, - "description": "Lists all of the available Event Hub REST API operations.", - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/availableClusterRegions": { - "get": { - "tags": [ - "Event Hubs Clusters" - ], - "operationId": "Clusters_ListAvailableClusters", - "x-ms-examples": { - "ListAvailableClusters": { - "$ref": "./examples/Clusters/ListAvailableClustersGet.json" - } - }, - "description": "List the quantity of available pre-provisioned Event Hubs Clusters, indexed by Azure region.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Available clusters listed successfully.", - "schema": { - "$ref": "#/definitions/AvailableClustersList" - } - }, - "default": { - "description": "Error response describing why available clusters could not be successfully listed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters": { - "get": { - "tags": [ - "Event Hubs Clusters" - ], - "operationId": "Clusters_ListByResourceGroup", - "x-ms-examples": { - "ClustersListByResourceGroup": { - "$ref": "./examples/Clusters/ClustersListByResourceGroup.json" - } - }, - "description": "Lists the available Event Hubs Clusters within an ARM resource group.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Clusters returned successfully.", - "schema": { - "$ref": "#/definitions/ClusterListResult" - } - }, - "default": { - "description": "Event Hub Cluster error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters/{clusterName}": { - "get": { - "tags": [ - "Event Hubs Cluster" - ], - "operationId": "Clusters_Get", - "x-ms-examples": { - "ClusterGet": { - "$ref": "./examples/Clusters/ClusterGet.json" - } - }, - "description": "Gets the resource description of the specified Event Hubs Cluster.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Event Hubs Cluster resource description returned successfully.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "default": { - "description": "Event Hubs Cluster error response describing why the cluster description get operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "tags": [ - "Event Hubs Cluster" - ], - "operationId": "Clusters_Put", - "x-ms-examples": { - "ClusterPut": { - "$ref": "./examples/Clusters/ClusterPut.json" - } - }, - "description": "Creates or updates an instance of an Event Hubs Cluster.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Event Hubs Cluster successfully created or updated.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "201": { - "description": "Event Hubs Cluster create or update request accepted.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "202": { - "description": "Event Hubs Cluster create or update request accepted." - }, - "default": { - "description": "Event Hubs error response detailing why the Event Hubs Cluster create or update operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Event Hubs Cluster" - ], - "operationId": "Clusters_Patch", - "x-ms-examples": { - "ClusterPatch": { - "$ref": "./examples/Clusters/ClusterPatch.json" - } - }, - "description": "Modifies mutable properties on the Event Hubs Cluster. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Cluster" - }, - "description": "The properties of the Event Hubs Cluster which should be updated." - } - ], - "responses": { - "200": { - "description": "Event Hubs Cluster successfully created.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "201": { - "description": "Event Hubs Cluster update request accepted.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "202": { - "description": "Event Hubs Cluster update request accepted." - }, - "default": { - "description": "Event Hubs error response detailing why the Event Hubs Cluster update operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "delete": { - "tags": [ - "Event Hubs Cluster" - ], - "operationId": "Clusters_Delete", - "x-ms-examples": { - "ClusterDelete": { - "$ref": "./examples/Clusters/ClusterDelete.json" - } - }, - "description": "Deletes an existing Event Hubs Cluster. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Event Hubs Cluster successfully deleted." - }, - "202": { - "description": "Event Hubs Cluster delete request accepted." - }, - "204": { - "description": "No content." - }, - "default": { - "description": "Event Hubs error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters/{clusterName}/namespaces": { - "get": { - "tags": [ - "Event Hubs Namespace Enumeration in Cluster" - ], - "operationId": "Clusters_ListNamespaces", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "description": "List all Event Hubs Namespace IDs in an Event Hubs Dedicated Cluster.", - "x-ms-examples": { - "ListNamespacesInCluster": { - "$ref": "./examples/Clusters/ListNamespacesInClusterGet.json" - } - }, - "responses": { - "200": { - "description": "List of Namespace IDs in Cluster successfully delivered.", - "schema": { - "$ref": "#/definitions/EHNamespaceIdListResult" - } - }, - "default": { - "description": "Event Hubs Cluster error response detailing why this operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/clusters/{clusterName}/quotaConfiguration/default": { - "patch": { - "tags": [ - "Event Hubs Cluster Configuration" - ], - "operationId": "Configuration_Patch", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ClusterQuotaConfigurationProperties", - "required": [ - "settings" - ] - }, - "description": "Parameters for creating an Event Hubs Cluster resource." - } - ], - "x-ms-examples": { - "ClustersQuotasConfigurationPatch": { - "$ref": "./examples/Clusters/ClusterQuotaConfigurationPatch.json" - } - }, - "description": "Replace all specified Event Hubs Cluster settings with those contained in the request body. Leaves the settings not specified in the request body unmodified.", - "responses": { - "200": { - "description": "Event Hubs Cluster settings configuration returned.", - "schema": { - "$ref": "#/definitions/ClusterQuotaConfigurationProperties" - } - }, - "201": { - "description": "Event Hubs Cluster setting configuration request successfully accepted.", - "schema": { - "$ref": "#/definitions/ClusterQuotaConfigurationProperties" - } - }, - "202": { - "description": "Event Hubs Cluster update request accepted." - }, - "default": { - "description": "Event Hubs Cluster error response describing why the get cluster quotas and settings operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Event Hubs Cluster Configuration" - ], - "operationId": "Configuration_Get", - "parameters": [ - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/clusterNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "x-ms-examples": { - "ClustersQuotasConfigurationGet": { - "$ref": "./examples/Clusters/ClusterQuotaConfigurationGet.json" - } - }, - "description": "Get all Event Hubs Cluster settings - a collection of key/value pairs which represent the quotas and settings imposed on the cluster.", - "responses": { - "200": { - "description": "Event Hubs Cluster settings configuration returned.", - "schema": { - "$ref": "#/definitions/ClusterQuotaConfigurationProperties" - } - }, - "default": { - "description": "Event Hubs Cluster error response describing why the get cluster quotas and settings operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/namespaces": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_List", - "x-ms-examples": { - "NamespacesListBySubscription": { - "$ref": "./examples/NameSpaces/EHNameSpaceList.json" - } - }, - "description": "Lists all the available Namespaces within a subscription, irrespective of the resource groups.", - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespaces returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespaceListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListByResourceGroup", - "x-ms-examples": { - "NamespaceListByResourceGroup": { - "$ref": "./examples/NameSpaces/EHNameSpaceListByResourceGroup.json" - } - }, - "description": "Lists the available Namespaces within a resource group.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespaces returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespaceListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}": { - "put": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CreateOrUpdate", - "x-ms-examples": { - "NamespaceCreate": { - "$ref": "./examples/NameSpaces/EHNameSpaceCreate.json" - } - }, - "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/EHNamespace", - "required": [ - "location" - ] - }, - "description": "Parameters for creating a namespace resource." - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace successfully created.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "201": { - "description": "Namespace create request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "202": { - "description": "Namespace create or update request accepted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "delete": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Delete", - "x-ms-examples": { - "NameSpaceDelete": { - "$ref": "./examples/NameSpaces/EHNameSpaceDelete.json" - } - }, - "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace successfully deleted." - }, - "202": { - "description": "Namespace delete request accepted." - }, - "204": { - "description": "No content." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Get", - "x-ms-examples": { - "NameSpaceGet": { - "$ref": "./examples/NameSpaces/EHNameSpaceGet.json" - } - }, - "description": "Gets the description of the specified namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "201": { - "description": "Namespace update request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "patch": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Update", - "x-ms-examples": { - "NamespacesUpdate": { - "$ref": "./examples/NameSpaces/EHNameSpaceUpdate.json" - } - }, - "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/EHNamespace" - }, - "description": "Parameters for updating a namespace resource." - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace successfully updated.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "201": { - "description": "Namespace update request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "202": { - "description": "Namespace create or update request accepted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/ipfilterrules": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListIPFilterRules", - "x-ms-examples": { - "ListIpFilterRules": { - "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIPFilterRuleListAll.json" - } - }, - "description": "Gets a list of IP Filter rules for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace IpFilterRule successfully returned.", - "schema": { - "$ref": "#/definitions/IpFilterRuleListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/ipfilterrules/{ipFilterRuleName}": { - "put": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CreateOrUpdateIpFilterRule", - "x-ms-examples": { - "NameSpaceIpFilterRuleCreate": { - "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleCreateorUpdate.json" - } - }, - "description": "Creates or updates an IpFilterRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/ipFilterRuleNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/IpFilterRule" - }, - "description": "The Namespace IpFilterRule." - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace IpFilterRule created", - "schema": { - "$ref": "#/definitions/IpFilterRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_DeleteIpFilterRule", - "x-ms-examples": { - "NameSpaceIpFilterRuleDelete": { - "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleDelete.json" - } - }, - "description": "Deletes an IpFilterRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/ipFilterRuleNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace IpFilterRule successfully deleted." - }, - "204": { - "description": "No content." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_GetIpFilterRule", - "x-ms-examples": { - "NameSpaceIpFilterRuleGet": { - "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleGet.json" - } - }, - "description": "Gets an IpFilterRule for a Namespace by rule name.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/ipFilterRuleNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace IpFilterRule returned successfully.", - "schema": { - "$ref": "#/definitions/IpFilterRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/virtualnetworkrules": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListVirtualNetworkRules", - "x-ms-examples": { - "ListIpFilterRules": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleListAll.json" - } - }, - "description": "Gets a list of VirtualNetwork rules for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace VirtualNetworkRule successfully returned.", - "schema": { - "$ref": "#/definitions/VirtualNetworkRuleListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/virtualnetworkrules/{virtualNetworkRuleName}": { - "put": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CreateOrUpdateVirtualNetworkRule", - "x-ms-examples": { - "NameSpaceVirtualNetworkRuleCreate": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleCreateorUpdate.json" - } - }, - "description": "Creates or updates an VirtualNetworkRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/virtualNetworkRuleNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/VirtualNetworkRule" - }, - "description": "The Namespace VirtualNetworkRule." - } - ], - "responses": { - "200": { - "description": "Namespace VirtualNetworkRule created", - "schema": { - "$ref": "#/definitions/VirtualNetworkRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_DeleteVirtualNetworkRule", - "x-ms-examples": { - "NameSpaceVirtualNetworkRuleDelete": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleDelete.json" - } - }, - "description": "Deletes an VirtualNetworkRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/virtualNetworkRuleNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace VirtualNetworkRule successfully deleted." - }, - "204": { - "description": "No content." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_GetVirtualNetworkRule", - "x-ms-examples": { - "NameSpaceVirtualNetworkRuleGet": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleGet.json" - } - }, - "description": "Gets an VirtualNetworkRule for a Namespace by rule name.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/virtualNetworkRuleNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace VirtualNetworkRule returned successfully.", - "schema": { - "$ref": "#/definitions/VirtualNetworkRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { - "put": { - "tags": [ - "Namespaces" - ], - "x-ms-examples": { - "NameSpaceNetworkRuleSetCreate": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetCreate.json" - } - }, - "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", - "description": "Create or update NetworkRuleSet for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - }, - "description": "The Namespace IpFilterRule." - } - ], - "responses": { - "200": { - "description": "Namespace NetworkRuleSet successfully returned.", - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - } - }, - "default": { - "description": "ServiceBus error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Namespaces" - ], - "x-ms-examples": { - "NameSpaceNetworkRuleSetGet": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetGet.json" - } - }, - "operationId": "Namespaces_GetNetworkRuleSet", - "description": "Gets NetworkRuleSet for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/resourceGroupNameParameter" - }, - { - "$ref": "#/parameters/namespaceNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace NetworkRuleSet successfully returned.", - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - } - }, - "default": { - "description": "ServiceBus error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "OperationListResult": { - "description": "Result of the request to list Event Hub operations. It contains a list of operations and a URL link to get the next set of results.", - "properties": { - "value": { - "description": "List of Event Hub operations supported by the Microsoft.EventHub resource provider.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Operation" - } - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "URL to get the next set of operation list results if there are any." - } - } - }, - "Operation": { - "description": "A Event Hub REST API operation", - "type": "object", - "properties": { - "name": { - "readOnly": true, - "type": "string", - "description": "Operation name: {provider}/{resource}/{operation}" - }, - "display": { - "description": "The object that represents the operation.", - "properties": { - "provider": { - "readOnly": true, - "type": "string", - "description": "Service provider: Microsoft.EventHub" - }, - "resource": { - "readOnly": true, - "type": "string", - "description": "Resource on which the operation is performed: Invoice, etc." - }, - "operation": { - "readOnly": true, - "type": "string", - "description": "Operation type: Read, write, delete, etc." - } - } - } - } - }, - "Cluster": { - "properties": { - "sku": { - "$ref": "#/definitions/ClusterSku", - "description": "Properties of the cluster SKU." - }, - "properties": { - "x-ms-client-flatten": true, - "properties": { - "created": { - "readOnly": true, - "type": "string", - "description": "The UTC time when the Event Hubs Cluster was created." - }, - "updated": { - "readOnly": true, - "type": "string", - "description": "The UTC time when the Event Hubs Cluster was last updated." - }, - "metricId": { - "readOnly": true, - "type": "string", - "description": "The metric ID of the cluster resource. Provided by the service and not modifiable by the user." - }, - "status": { - "readOnly": true, - "type": "string", - "description": "Status of the Cluster resource" - } - }, - "description": "Event Hubs Cluster properties supplied in responses in List or Get operations." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TrackedResource" - } - ], - "description": "Single Event Hubs Cluster resource in List or Get operations." - }, - "AvailableClustersList": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AvailableCluster" - }, - "description": "The count of readily available and pre-provisioned Event Hubs Clusters per region." - } - }, - "description": "The response of the List Available Clusters operation." - }, - "AvailableCluster": { - "properties": { - "location": { - "type": "string", - "description": "Location fo the Available Cluster" - } - }, - "description": "Pre-provisioned and readily available Event Hubs Cluster count per region." - }, - "ClusterListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Cluster" - }, - "description": "The Event Hubs Clusters present in the List Event Hubs operation results." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Empty unless the value parameter contains an incomplete list of Event Hubs Clusters." - } - }, - "description": "The response of the List Event Hubs Clusters operation." - }, - "ClusterQuotaConfigurationProperties": { - "properties": { - "settings": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "All possible Cluster settings - a collection of key/value paired settings which apply to quotas and configurations imposed on the cluster." - } - }, - "description": "Contains all settings for the cluster." - }, - "ErrorResponse": { - "description": "Error response that indicates the service is not able to process the incoming request. The reason is provided in the error message.", - "type": "object", - "properties": { - "code": { - "description": "Error code.", - "type": "string" - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string" - } - } - }, - "TrackedResource": { - "properties": { - "location": { - "type": "string", - "x-ms-mutability": [ - "read", - "create" - ], - "description": "Resource location" - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-ms-mutability": [ - "read", - "create", - "update" - ], - "description": "Resource tags" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Definition of an Azure resource." - }, - "Resource": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "Resource Id" - }, - "name": { - "type": "string", - "readOnly": true, - "description": "Resource name" - }, - "type": { - "type": "string", - "readOnly": true, - "description": "Resource type" - } - }, - "description": "The Resource definition", - "x-ms-azure-resource": true - }, - "ClusterSku": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of this SKU.", - "enum": [ - "Dedicated" - ], - "x-ms-enum": { - "name": "SkuName", - "modelAsString": true - } - }, - "capacity": { - "format": "int32", - "maximum": 32, - "minimum": 1, - "type": "integer", - "description": "The quantity of Event Hubs Cluster Capacity Units contained in this cluster." - } - }, - "required": [ - "name" - ], - "description": "SKU parameters particular to a cluster instance." - }, - "EHNamespaceIdListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/EHNamespaceIdContainer" - }, - "description": "Result of the List Namespace IDs operation" - } - }, - "description": "The response of the List Namespace IDs operation" - }, - "EHNamespaceIdContainer": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "id parameter" - } - }, - "description": "The full ARM ID of an Event Hubs Namespace" - }, - "EHNamespaceListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/EHNamespace" - }, - "description": "Result of the List Namespace operation" - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains incomplete list of namespaces." - } - }, - "description": "The response of the List Namespace operation" - }, - "EHNamespace": { - "properties": { - "sku": { - "$ref": "#/definitions/Sku", - "description": "Properties of sku resource" - }, - "properties": { - "x-ms-client-flatten": true, - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "Provisioning state of the Namespace." - }, - "createdAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The time the Namespace was created." - }, - "updatedAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The time the Namespace was updated." - }, - "serviceBusEndpoint": { - "readOnly": true, - "type": "string", - "description": "Endpoint you can use to perform Service Bus operations." - }, - "clusterArmId": { - "type": "string", - "description": "Cluster ARM ID of the Namespace." - }, - "metricId": { - "readOnly": true, - "type": "string", - "description": "Identifier for Azure Insights metrics." - }, - "isAutoInflateEnabled": { - "type": "boolean", - "description": "Value that indicates whether AutoInflate is enabled for eventhub namespace." - }, - "maximumThroughputUnits": { - "format": "int32", - "type": "integer", - "maximum": 20, - "minimum": 0, - "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" - }, - "kafkaEnabled": { - "type": "boolean", - "description": "Value that indicates whether Kafka is enabled for eventhub namespace." - }, - "zoneRedundant": { - "type": "boolean", - "description": "Enabling this property creates a Standard Event Hubs Namespace in regions supported availability zones." - }, - "identity": { - "$ref": "#/definitions/Identity", - "description": "Properties of BYOK Identity description" - }, - "encryption": { - "$ref": "#/definitions/Encryption", - "description": "Properties of BYOK Encryption description" - } - }, - "description": "Namespace properties supplied for create namespace operation." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TrackedResource" - } - ], - "description": "Single Namespace item in List or Get Operation" - }, - "Sku": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of this SKU.", - "enum": [ - "Basic", - "Standard" - ], - "x-ms-enum": { - "name": "SkuName", - "modelAsString": true - } - }, - "tier": { - "type": "string", - "description": "The billing tier of this particular SKU.", - "enum": [ - "Basic", - "Standard" - ], - "x-ms-enum": { - "name": "SkuTier", - "modelAsString": true - } - }, - "capacity": { - "format": "int32", - "maximum": 20, - "minimum": 0, - "type": "integer", - "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." - } - }, - "required": [ - "name" - ], - "description": "SKU parameters supplied to the create namespace operation" - }, - "IpFilterRule": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "ipMask": { - "type": "string", - "description": "IP Mask" - }, - "action": { - "type": "string", - "description": "The IP Filter Action", - "enum": [ - "Accept", - "Reject" - ], - "x-ms-enum": { - "name": "IPAction", - "modelAsString": true - } - }, - "filterName": { - "type": "string", - "description": "IP Filter name" - } - }, - "description": "Properties supplied to create or update IpFilterRules" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in a List or Get IpFilterRules operation" - }, - "IpFilterRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/IpFilterRule" - }, - "description": "Result of the List IpFilter Rules operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains an incomplete list of IpFilter Rules" - } - }, - "description": "The response from the List namespace operation." - }, - "VirtualNetworkRule": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "virtualNetworkSubnetId": { - "type": "string", - "description": "ARM ID of Virtual Network Subnet" - } - }, - "description": "Properties supplied to create or update VirtualNetworkRules" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in a List or Get VirtualNetworkRules operation" - }, - "VirtualNetworkRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/VirtualNetworkRule" - }, - "description": "Result of the List VirtualNetwork Rules operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains an incomplete list of VirtualNetwork Rules" - } - }, - "description": "The response from the List namespace operation." - }, - "Subnet": { - "properties": { - "id": { - "type": "string", - "description": "Resource ID of Virtual Network Subnet" - } - }, - "description": "Properties supplied for Subnet" - }, - "NWRuleSetIpRules": { - "x-ms-client-flatten": true, - "properties": { - "ipMask": { - "type": "string", - "description": "IP Mask" - }, - "action": { - "type": "string", - "description": "The IP Filter Action", - "enum": [ - "Allow" - ], - "x-ms-enum": { - "name": "NetworkRuleIPAction", - "modelAsString": true - } - } - }, - "description": "The response from the List namespace operation." - }, - "NWRuleSetVirtualNetworkRules": { - "x-ms-client-flatten": true, - "properties": { - "subnet": { - "$ref": "#/definitions/Subnet", - "description": "Subnet properties" - }, - "ignoreMissingVnetServiceEndpoint": { - "type": "boolean", - "description": "Value that indicates whether to ignore missing Vnet Service Endpoint" - } - }, - "description": "The response from the List namespace operation." - }, - "NetworkRuleSet": { - "properties": { - "properties": { - "description": "NetworkRuleSet properties", - "x-ms-client-flatten": true, - "properties": { - "defaultAction": { - "type": "string", - "description": "Default Action for Network Rule Set", - "enum": [ - "Allow", - "Deny" - ], - "x-ms-enum": { - "name": "DefaultAction", - "modelAsString": true - } - }, - "virtualNetworkRules": { - "type": "array", - "items": { - "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" - }, - "description": "List VirtualNetwork Rules" - }, - "ipRules": { - "type": "array", - "items": { - "$ref": "#/definitions/NWRuleSetIpRules" - }, - "description": "List of IpRules" - } - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Description of topic resource." - }, - "Identity": { - "x-ms-client-flatten": true, - "properties": { - "principalId": { - "type": "string", - "description": "ObjectId from the KeyVault" - }, - "tenantId": { - "type": "string", - "description": "TenantId from the KeyVault" - }, - "type": { - "type": "string", - "description": "Enumerates the possible value Identity type, which currently supports only 'SystemAssigned'", - "default": "SystemAssigned", - "enum": [ - "SystemAssigned" - ], - "x-ms-enum": { - "name": "IdentityType", - "modelAsString": false - } - } - }, - "description": "Properties to configure Identity for Bring your Own Keys" - }, - "Encryption": { - "x-ms-client-flatten": true, - "properties": { - "keyVaultProperties": { - "$ref": "#/definitions/KeyVaultProperties", - "description": "Properties of KeyVault" - }, - "keySource": { - "type": "string", - "description": "Enumerates the possible value of keySource for Encryption", - "default": "Microsoft.KeyVault", - "enum": [ - "Microsoft.KeyVault" - ], - "x-ms-enum": { - "name": "keySource", - "modelAsString": false - } - } - }, - "description": "Properties to configure Encryption" - }, - "KeyVaultProperties": { - "properties": { - "keyName": { - "type": "string", - "description": "Name of the Key from KeyVault" - }, - "keyVaultUri": { - "type": "string", - "description": "Uri of KeyVault" - } - }, - "description": "Properties to configure keyVault Properties" - } - }, - "parameters": { - "subscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." - }, - "apiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client API version." - }, - "resourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 90, - "x-ms-parameter-location": "method", - "description": "Name of the resource group within the Azure subscription." - }, - "clusterNameParameter": { - "name": "clusterName", - "in": "path", - "required": true, - "type": "string", - "minLength": 6, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The name of the Event Hubs Cluster." - }, - "namespaceNameParameter": { - "name": "namespaceName", - "in": "path", - "required": true, - "type": "string", - "minLength": 6, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The Namespace name" - }, - "authorizationRuleNameParameter": { - "name": "authorizationRuleName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "description": "The authorization rule name." - }, - "ipFilterRuleNameParameter": { - "name": "ipFilterRuleName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "description": "The IP Filter Rule name." - }, - "virtualNetworkRuleNameParameter": { - "name": "virtualNetworkRuleName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "description": "The Virtual Network Rule name." - }, - "skuNameParameter": { - "name": "sku", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The sku type." - }, - "skipParameter": { - "name": "$skip", - "description": "Skip is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting point to use for subsequent calls.", - "in": "query", - "required": false, - "type": "integer", - "minimum": 0, - "maximum": 1000, - "x-ms-parameter-location": "method" - }, - "topParameter": { - "name": "$top", - "description": "May be used to limit the number of results to the most recent N usageDetails.", - "in": "query", - "required": false, - "type": "integer", - "minimum": 1, - "maximum": 1000, - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceList.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceList.json index a05c321ff63a..6d370dd73983 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceList.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceList.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2017-04-01", + "api-version": "2018-01-01-preview", "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" }, "responses": { diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceListByResourceGroup.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceListByResourceGroup.json index fc43b939227d..d35b85a52ecc 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceListByResourceGroup.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/examples/NameSpaces/EHNameSpaceListByResourceGroup.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2017-04-01", + "api-version": "2018-01-01-preview", "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", "resourceGroupName": "ArunMonocle" }, diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json new file mode 100644 index 000000000000..3117aeec05db --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json @@ -0,0 +1,278 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/namespaces/{namespaceName}/ipfilterrules": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListIPFilterRules", + "x-ms-examples": { + "ListIpFilterRules": { + "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIPFilterRuleListAll.json" + } + }, + "description": "Gets a list of IP Filter rules for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace IpFilterRule successfully returned.", + "schema": { + "$ref": "#/definitions/IpFilterRuleListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/ipfilterrules/{ipFilterRuleName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdateIpFilterRule", + "x-ms-examples": { + "NameSpaceIpFilterRuleCreate": { + "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleCreateorUpdate.json" + } + }, + "description": "Creates or updates an IpFilterRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/IpFilterRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpFilterRule" + }, + "description": "The Namespace IpFilterRule." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace IpFilterRule created", + "schema": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_DeleteIpFilterRule", + "x-ms-examples": { + "NameSpaceIpFilterRuleDelete": { + "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleDelete.json" + } + }, + "description": "Deletes an IpFilterRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/IpFilterRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace IpFilterRule successfully deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_GetIpFilterRule", + "x-ms-examples": { + "NameSpaceIpFilterRuleGet": { + "$ref": "./examples/NameSpaces/IPFilterRule/EHNameSpaceIpFilterRuleGet.json" + } + }, + "description": "Gets an IpFilterRule for a Namespace by rule name.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/IpFilterRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace IpFilterRule returned successfully.", + "schema": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "IpFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Accept", + "Reject" + ], + "x-ms-enum": { + "name": "IPAction", + "modelAsString": true + } + }, + "filterName": { + "type": "string", + "description": "IP Filter name" + } + }, + "description": "Properties supplied to create or update IpFilterRules" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in a List or Get IpFilterRules operation" + }, + "IpFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + }, + "description": "Result of the List IpFilter Rules operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains an incomplete list of IpFilter Rules" + } + }, + "description": "The response from the List namespace operation." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json new file mode 100644 index 000000000000..0f2174cfb648 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json @@ -0,0 +1,540 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_List", + "x-ms-examples": { + "NamespacesListBySubscription": { + "$ref": "./examples/NameSpaces/EHNameSpaceList.json" + } + }, + "description": "Lists all the available Namespaces within a subscription, irrespective of the resource groups.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespaceListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListByResourceGroup", + "x-ms-examples": { + "NamespaceListByResourceGroup": { + "$ref": "./examples/NameSpaces/EHNameSpaceListByResourceGroup.json" + } + }, + "description": "Lists the available Namespaces within a resource group.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespaceListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdate", + "x-ms-examples": { + "NamespaceCreate": { + "$ref": "./examples/NameSpaces/EHNameSpaceCreate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EHNamespace", + "required": [ + "location" + ] + }, + "description": "Parameters for creating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully created.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace create request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "202": { + "description": "Namespace create or update request accepted." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Delete", + "x-ms-examples": { + "NameSpaceDelete": { + "$ref": "./examples/NameSpaces/EHNameSpaceDelete.json" + } + }, + "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully deleted." + }, + "202": { + "description": "Namespace delete request accepted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Get", + "x-ms-examples": { + "NameSpaceGet": { + "$ref": "./examples/NameSpaces/EHNameSpaceGet.json" + } + }, + "description": "Gets the description of the specified namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Update", + "x-ms-examples": { + "NamespacesUpdate": { + "$ref": "./examples/NameSpaces/EHNameSpaceUpdate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EHNamespace" + }, + "description": "Parameters for updating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully updated.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "202": { + "description": "Namespace create or update request accepted." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "EHNamespaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EHNamespace" + }, + "description": "Result of the List Namespace operation" + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of namespaces." + } + }, + "description": "The response of the List Namespace operation" + }, + "EHNamespace": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "Properties of sku resource" + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "Properties of BYOK Identity description" + }, + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the Namespace." + }, + "createdAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the Namespace was created." + }, + "updatedAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the Namespace was updated." + }, + "serviceBusEndpoint": { + "readOnly": true, + "type": "string", + "description": "Endpoint you can use to perform Service Bus operations." + }, + "clusterArmId": { + "type": "string", + "description": "Cluster ARM ID of the Namespace." + }, + "metricId": { + "readOnly": true, + "type": "string", + "description": "Identifier for Azure Insights metrics." + }, + "isAutoInflateEnabled": { + "type": "boolean", + "description": "Value that indicates whether AutoInflate is enabled for eventhub namespace." + }, + "maximumThroughputUnits": { + "format": "int32", + "type": "integer", + "maximum": 20, + "minimum": 0, + "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" + }, + "kafkaEnabled": { + "type": "boolean", + "description": "Value that indicates whether Kafka is enabled for eventhub namespace." + }, + "zoneRedundant": { + "type": "boolean", + "description": "Enabling this property creates a Standard Event Hubs Namespace in regions supported availability zones." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Properties of BYOK Encryption description" + } + }, + "description": "Namespace properties supplied for create namespace operation." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Single Namespace item in List or Get Operation" + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of this SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "The billing tier of this particular SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "capacity": { + "format": "int32", + "maximum": 20, + "minimum": 0, + "type": "integer", + "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." + } + }, + "required": [ + "name" + ], + "description": "SKU parameters supplied to the create namespace operation" + }, + "Identity": { + "x-ms-client-flatten": true, + "properties": { + "principalId": { + "type": "string", + "description": "ObjectId from the KeyVault" + }, + "tenantId": { + "type": "string", + "description": "TenantId from the KeyVault" + }, + "type": { + "type": "string", + "description": "Enumerates the possible value Identity type, which currently supports only 'SystemAssigned'", + "default": "SystemAssigned", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "description": "Properties to configure Identity for Bring your Own Keys" + }, + "Encryption": { + "x-ms-client-flatten": true, + "properties": { + "keyVaultProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyVaultProperties" + }, + "x-ms-client-name": "KeyVaultProperties", + "description": "Properties of KeyVault" + }, + "keySource": { + "type": "string", + "description": "Enumerates the possible value of keySource for Encryption", + "default": "Microsoft.KeyVault", + "enum": [ + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "keySource", + "modelAsString": false + } + } + }, + "description": "Properties to configure Encryption" + }, + "KeyVaultProperties": { + "properties": { + "keyName": { + "type": "string", + "description": "Name of the Key from KeyVault", + "x-ms-client-name": "KeyName" + }, + "keyVaultUri": { + "type": "string", + "description": "Uri of KeyVault", + "x-ms-client-name": "KeyVaultUri" + }, + "keyVersion": { + "type": "string", + "description": "Key Version", + "x-ms-client-name": "KeyVersion" + } + }, + "description": "Properties to configure keyVault Properties" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json new file mode 100644 index 000000000000..fbf741fc7b1f --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json @@ -0,0 +1,218 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { + "put": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetCreate.json" + } + }, + "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", + "description": "Create or update NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "The Namespace IpFilterRule." + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetGet": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetGet.json" + } + }, + "operationId": "Namespaces_GetNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Subnet": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID of Virtual Network Subnet" + } + }, + "description": "Properties supplied for Subnet" + }, + "NWRuleSetIpRules": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + } + } + }, + "description": "The response from the List namespace operation." + }, + "NWRuleSetVirtualNetworkRules": { + "x-ms-client-flatten": true, + "properties": { + "subnet": { + "$ref": "#/definitions/Subnet", + "description": "Subnet properties" + }, + "ignoreMissingVnetServiceEndpoint": { + "type": "boolean", + "description": "Value that indicates whether to ignore missing Vnet Service Endpoint" + } + }, + "description": "The response from the List namespace operation." + }, + "NetworkRuleSet": { + "properties": { + "properties": { + "description": "NetworkRuleSet properties", + "x-ms-client-flatten": true, + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" + }, + "description": "List VirtualNetwork Rules" + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + }, + "description": "List of IpRules" + } + } + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Description of topic resource." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/operations-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/operations-preview.json new file mode 100644 index 000000000000..38b1a7b797f1 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/operations-preview.json @@ -0,0 +1,126 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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": { + "/providers/Microsoft.EventHub/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "EHOperations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "description": "Lists all of the available Event Hub REST API operations.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Event Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of Event Hub operations supported by the Microsoft.EventHub resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "A Event Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{operation}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft.EventHub" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource on which the operation is performed: Invoice, etc." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Operation type: Read, write, delete, etc." + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json new file mode 100644 index 000000000000..a5104a699020 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json @@ -0,0 +1,156 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/clusters/{clusterName}/quotaConfiguration/default": { + "patch": { + "tags": [ + "Event Hubs Cluster Configuration" + ], + "operationId": "Configuration_Patch", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterQuotaConfigurationProperties", + "required": [ + "settings" + ] + }, + "description": "Parameters for creating an Event Hubs Cluster resource." + } + ], + "x-ms-examples": { + "ClustersQuotasConfigurationPatch": { + "$ref": "./examples/Clusters/ClusterQuotaConfigurationPatch.json" + } + }, + "description": "Replace all specified Event Hubs Cluster settings with those contained in the request body. Leaves the settings not specified in the request body unmodified.", + "responses": { + "200": { + "description": "Event Hubs Cluster settings configuration returned.", + "schema": { + "$ref": "#/definitions/ClusterQuotaConfigurationProperties" + } + }, + "201": { + "description": "Event Hubs Cluster setting configuration request successfully accepted.", + "schema": { + "$ref": "#/definitions/ClusterQuotaConfigurationProperties" + } + }, + "202": { + "description": "Event Hubs Cluster update request accepted." + }, + "default": { + "description": "Event Hubs Cluster error response describing why the get cluster quotas and settings operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Event Hubs Cluster Configuration" + ], + "operationId": "Configuration_Get", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ClusterNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "ClustersQuotasConfigurationGet": { + "$ref": "./examples/Clusters/ClusterQuotaConfigurationGet.json" + } + }, + "description": "Get all Event Hubs Cluster settings - a collection of key/value pairs which represent the quotas and settings imposed on the cluster.", + "responses": { + "200": { + "description": "Event Hubs Cluster settings configuration returned.", + "schema": { + "$ref": "#/definitions/ClusterQuotaConfigurationProperties" + } + }, + "default": { + "description": "Event Hubs Cluster error response describing why the get cluster quotas and settings operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ClusterQuotaConfigurationProperties": { + "properties": { + "settings": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "All possible Cluster settings - a collection of key/value paired settings which apply to quotas and configurations imposed on the cluster." + } + }, + "description": "Contains all settings for the cluster." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json new file mode 100644 index 000000000000..4e1b10f54503 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json @@ -0,0 +1,262 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client for managing Event Hubs Cluster, IPFilter Rules and VirtualNetworkRules resources.", + "version": "2018-01-01-preview" + }, + "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.EventHub/namespaces/{namespaceName}/virtualnetworkrules": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListVirtualNetworkRules", + "x-ms-examples": { + "ListIpFilterRules": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleListAll.json" + } + }, + "description": "Gets a list of VirtualNetwork rules for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace VirtualNetworkRule successfully returned.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRuleListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/virtualnetworkrules/{virtualNetworkRuleName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdateVirtualNetworkRule", + "x-ms-examples": { + "NameSpaceVirtualNetworkRuleCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleCreateorUpdate.json" + } + }, + "description": "Creates or updates an VirtualNetworkRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VirtualNetworkRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "The Namespace VirtualNetworkRule." + } + ], + "responses": { + "200": { + "description": "Namespace VirtualNetworkRule created", + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_DeleteVirtualNetworkRule", + "x-ms-examples": { + "NameSpaceVirtualNetworkRuleDelete": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleDelete.json" + } + }, + "description": "Deletes an VirtualNetworkRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VirtualNetworkRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace VirtualNetworkRule successfully deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_GetVirtualNetworkRule", + "x-ms-examples": { + "NameSpaceVirtualNetworkRuleGet": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNameSpaceVirtualNetworkRuleGet.json" + } + }, + "description": "Gets an VirtualNetworkRule for a Namespace by rule name.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VirtualNetworkRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace VirtualNetworkRule returned successfully.", + "schema": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "VirtualNetworkRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "virtualNetworkSubnetId": { + "type": "string", + "description": "ARM ID of Virtual Network Subnet" + } + }, + "description": "Properties supplied to create or update VirtualNetworkRules" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in a List or Get VirtualNetworkRules operation" + }, + "VirtualNetworkRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + }, + "description": "Result of the List VirtualNetwork Rules operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains an incomplete list of VirtualNetwork Rules" + } + }, + "description": "The response from the List namespace operation." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json new file mode 100644 index 000000000000..a9a69b03b22c --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json @@ -0,0 +1,886 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces/{namespaceName}/authorizationRules": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListAuthorizationRules", + "x-ms-examples": { + "ListAuthorizationRules": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleListAll.json" + } + }, + "description": "Gets a list of authorization rules for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule successfully returned.", + "schema": { + "$ref": "#/definitions/AuthorizationRuleListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/authorizationRules/{authorizationRuleName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdateAuthorizationRule", + "x-ms-examples": { + "NameSpaceAuthorizationRuleCreate": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleCreate.json" + } + }, + "description": "Creates or updates an AuthorizationRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AuthorizationRule" + }, + "description": "The shared access AuthorizationRule." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule created", + "schema": { + "$ref": "#/definitions/AuthorizationRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_DeleteAuthorizationRule", + "x-ms-examples": { + "NameSpaceAuthorizationRuleDelete": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleDelete.json" + } + }, + "description": "Deletes an AuthorizationRule for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule successfully deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_GetAuthorizationRule", + "x-ms-examples": { + "NameSpaceAuthorizationRuleGet": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleGet.json" + } + }, + "description": "Gets an AuthorizationRule for a Namespace by rule name.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule returned successfully.", + "schema": { + "$ref": "#/definitions/AuthorizationRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/authorizationRules/{authorizationRuleName}/listKeys": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListKeys", + "x-ms-examples": { + "NameSpaceAuthorizationRuleListKey": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleListKey.json" + } + }, + "description": "Gets the primary and secondary connection strings for the Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Connection strings returned successfully.", + "schema": { + "$ref": "#/definitions/AccessKeys" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/authorizationRules/{authorizationRuleName}/regenerateKeys": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_RegenerateKeys", + "x-ms-examples": { + "NameSpaceAuthorizationRuleRegenerateKey": { + "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenerateKey.json" + } + }, + "description": "Regenerates the primary or secondary connection strings for the specified Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateAccessKeyParameters" + }, + "description": "Parameters required to regenerate the connection string." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Connection strings regenerated successfully.", + "schema": { + "$ref": "#/definitions/AccessKeys" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules": { + "get": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_ListAuthorizationRules", + "x-ms-examples": { + "ListAuthorizationRules": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListAll.json" + } + }, + "description": "Gets a list of authorization rules for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace AuthorizationRule successfully returned.", + "schema": { + "$ref": "#/definitions/AuthorizationRuleListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}": { + "get": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_GetAuthorizationRule", + "x-ms-examples": { + "NameSpaceAuthorizationRuleGet": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleGet.json" + } + }, + "description": "Gets an AuthorizationRule for a Namespace by rule name.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Alias Namespace AuthorizationRule returned successfully.", + "schema": { + "$ref": "#/definitions/AuthorizationRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys": { + "post": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_ListKeys", + "x-ms-examples": { + "NameSpaceAuthorizationRuleListKey": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListKey.json" + } + }, + "description": "Gets the primary and secondary connection strings for the Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Connection strings returned successfully.", + "schema": { + "$ref": "#/definitions/AccessKeys" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules": { + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_ListAuthorizationRules", + "x-ms-examples": { + "EventHubAuthorizationRuleListAll": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleListAll.json" + } + }, + "description": "Gets the authorization rules for an Event Hub.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub AuthorizationRule returned successfully.", + "schema": { + "$ref": "#/definitions/AuthorizationRuleListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}": { + "put": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_CreateOrUpdateAuthorizationRule", + "x-ms-examples": { + "EventHubAuthorizationRuleCreate": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleCreate.json" + } + }, + "description": "Creates or updates an AuthorizationRule for the specified Event Hub. Creation/update of the AuthorizationRule will take a few seconds to take effect.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AuthorizationRule" + }, + "description": "The shared access AuthorizationRule." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub AuthorizationRule successfully created.", + "schema": { + "$ref": "#/definitions/AuthorizationRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_GetAuthorizationRule", + "x-ms-examples": { + "EventHubAuthorizationRuleGet": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleGet.json" + } + }, + "description": "Gets an AuthorizationRule for an Event Hub by rule name.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub AuthorizationRule successfully returned.", + "schema": { + "$ref": "#/definitions/AuthorizationRule" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_DeleteAuthorizationRule", + "x-ms-examples": { + "EventHubAuthorizationRuleDelete": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleDelete.json" + } + }, + "description": "Deletes an Event Hub AuthorizationRule.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub AuthorizationRule successfully deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}/listKeys": { + "post": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_ListKeys", + "x-ms-examples": { + "EventHubAuthorizationRuleListKey": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleListKey.json" + } + }, + "description": "Gets the ACS and SAS connection strings for the Event Hub.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Connection strings successfully returned.", + "schema": { + "$ref": "#/definitions/AccessKeys" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}/regenerateKeys": { + "post": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_RegenerateKeys", + "x-ms-examples": { + "EventHubAuthorizationRuleRegenerateKey": { + "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleRegenerateKey.json" + } + }, + "description": "Regenerates the ACS and SAS connection strings for the Event Hub.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AuthorizationRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateAccessKeyParameters" + }, + "description": "Parameters supplied to regenerate the AuthorizationRule Keys (PrimaryKey/SecondaryKey)." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Connection strings successfully regenerated.", + "schema": { + "$ref": "#/definitions/AccessKeys" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AuthorizationRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationRule" + }, + "description": "Result of the List Authorization Rules operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains an incomplete list of Authorization Rules" + } + }, + "description": "The response from the List namespace operation." + }, + "AuthorizationRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "rights": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Manage", + "Send", + "Listen" + ], + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": true + } + }, + "description": "The rights associated with the rule." + } + }, + "required": [ + "rights" + ], + "description": "Properties supplied to create or update AuthorizationRule" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in a List or Get AuthorizationRule operation" + }, + "AccessKeys": { + "properties": { + "primaryConnectionString": { + "readOnly": true, + "type": "string", + "description": "Primary connection string of the created namespace AuthorizationRule." + }, + "secondaryConnectionString": { + "readOnly": true, + "type": "string", + "description": "Secondary connection string of the created namespace AuthorizationRule." + }, + "aliasPrimaryConnectionString": { + "readOnly": true, + "type": "string", + "description": "Primary connection string of the alias if GEO DR is enabled" + }, + "aliasSecondaryConnectionString": { + "readOnly": true, + "type": "string", + "description": "Secondary connection string of the alias if GEO DR is enabled" + }, + "primaryKey": { + "readOnly": true, + "type": "string", + "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." + }, + "secondaryKey": { + "readOnly": true, + "type": "string", + "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." + }, + "keyName": { + "readOnly": true, + "type": "string", + "description": "A string that describes the AuthorizationRule." + } + }, + "description": "Namespace/EventHub Connection String" + }, + "RegenerateAccessKeyParameters": { + "properties": { + "keyType": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "PrimaryKey", + "SecondaryKey" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "key": { + "type": "string", + "description": "Optional, if the key value provided, is set for KeyType or autogenerated Key value set for keyType" + } + }, + "required": [ + "keyType" + ], + "description": "Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs to be reset." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json new file mode 100644 index 000000000000..3dbed5304f40 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json @@ -0,0 +1,132 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/checkNameAvailability": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CheckNameAvailability", + "x-ms-examples": { + "NamespacesCheckNameAvailability": { + "$ref": "./examples/NameSpaces/EHNameSpaceCheckNameAvailability.json" + } + }, + "description": "Check the give Namespace name availability.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameter" + }, + "description": "Parameters to check availability of the given Namespace name" + } + ], + "responses": { + "200": { + "description": "check availability returned successfully.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "UnavailableReason": { + "type": "string", + "enum": [ + "None", + "InvalidName", + "SubscriptionIsDisabled", + "NameInUse", + "NameInLockdown", + "TooManyNamespaceInCurrentSubscription" + ], + "x-ms-enum": { + "name": "UnavailableReason", + "modelAsString": false + }, + "description": "Specifies the reason for the unavailability of the service." + }, + "CheckNameAvailabilityParameter": { + "properties": { + "name": { + "type": "string", + "description": "Name to check the namespace name availability" + } + }, + "required": [ + "name" + ], + "description": "Parameter supplied to check Namespace name availability operation " + }, + "CheckNameAvailabilityResult": { + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the Namespace." + }, + "nameAvailable": { + "type": "boolean", + "description": "Value indicating Namespace is availability, true if the Namespace is available; otherwise, false." + }, + "reason": { + "$ref": "#/definitions/UnavailableReason", + "description": "The reason for unavailability of a Namespace." + } + }, + "description": "The Result of the CheckNameAvailability operation" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json deleted file mode 100644 index ff360bf3d626..000000000000 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json +++ /dev/null @@ -1,3045 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "EventHubManagementClient", - "description": "Azure Event Hubs client", - "version": "2017-04-01" - }, - "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": { - "/providers/Microsoft.EventHub/operations": { - "get": { - "tags": [ - "Operations" - ], - "operationId": "Operations_List", - "x-ms-examples": { - "EHOperations_List": { - "$ref": "./examples/EHOperations_List.json" - } - }, - "description": "Lists all of the available Event Hub REST API operations.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/CheckNameAvailability": { - "post": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CheckNameAvailability", - "x-ms-examples": { - "NamespacesCheckNameAvailability": { - "$ref": "./examples/NameSpaces/EHNameSpaceCheckNameAvailability.json" - } - }, - "description": "Check the give Namespace name availability.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityParameter" - }, - "description": "Parameters to check availability of the given Namespace name" - } - ], - "responses": { - "200": { - "description": "check availability returned successfully.", - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/namespaces": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_List", - "x-ms-examples": { - "NamespacesListBySubscription": { - "$ref": "./examples/NameSpaces/EHNameSpaceList.json" - } - }, - "description": "Lists all the available Namespaces within a subscription, irrespective of the resource groups.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespaces returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespaceListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListByResourceGroup", - "x-ms-examples": { - "NamespaceListByResourceGroup": { - "$ref": "./examples/NameSpaces/EHNameSpaceListByResourceGroup.json" - } - }, - "description": "Lists the available Namespaces within a resource group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespaces returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespaceListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}": { - "put": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CreateOrUpdate", - "x-ms-examples": { - "NamespaceCreate": { - "$ref": "./examples/NameSpaces/EHNameSpaceCreate.json" - } - }, - "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/EHNamespace", - "required": [ - "location" - ] - }, - "description": "Parameters for creating a namespace resource." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Namespace create request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "200": { - "description": "Namespace successfully created.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "202": { - "description": "Namespace create or update request accepted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "delete": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Delete", - "x-ms-examples": { - "NameSpaceDelete": { - "$ref": "./examples/NameSpaces/EHNameSpaceDelete.json" - } - }, - "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No content." - }, - "200": { - "description": "Namespace successfully deleted." - }, - "202": { - "description": "Namespace delete request accepted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Get", - "x-ms-examples": { - "NameSpaceGet": { - "$ref": "./examples/NameSpaces/EHNameSpaceGet.json" - } - }, - "description": "Gets the description of the specified namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace returned successfully.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "201": { - "description": "Namespace update request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "patch": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_Update", - "x-ms-examples": { - "NamespacesUpdate": { - "$ref": "./examples/NameSpaces/EHNameSpaceUpdate.json" - } - }, - "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/EHNamespace" - }, - "description": "Parameters for updating a namespace resource." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Namespace update request accepted.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "200": { - "description": "Namespace successfully updated.", - "schema": { - "$ref": "#/definitions/EHNamespace" - } - }, - "202": { - "description": "Namespace create or update request accepted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/messagingplan": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_GetMessagingPlan", - "x-ms-examples": { - "GetNamespaceMessagingPlan": { - "$ref": "./examples/NameSpaces/EHNameSpaceGetMessagingPlan.json" - } - }, - "description": "Gets messaging plan for specified namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Messaging Plan successfully returned.", - "schema": { - "$ref": "#/definitions/MessagingPlan" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules": { - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListAuthorizationRules", - "x-ms-examples": { - "ListAuthorizationRules": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleListAll.json" - } - }, - "description": "Gets a list of authorization rules for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace AuthorizationRule successfully returned.", - "schema": { - "$ref": "#/definitions/AuthorizationRuleListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}": { - "put": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_CreateOrUpdateAuthorizationRule", - "x-ms-examples": { - "NameSpaceAuthorizationRuleCreate": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleCreate.json" - } - }, - "description": "Creates or updates an AuthorizationRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AuthorizationRule" - }, - "description": "The shared access AuthorizationRule." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace AuthorizationRule created", - "schema": { - "$ref": "#/definitions/AuthorizationRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_DeleteAuthorizationRule", - "x-ms-examples": { - "NameSpaceAuthorizationRuleDelete": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleDelete.json" - } - }, - "description": "Deletes an AuthorizationRule for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No content." - }, - "200": { - "description": "Namespace AuthorizationRule successfully deleted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_GetAuthorizationRule", - "x-ms-examples": { - "NameSpaceAuthorizationRuleGet": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleGet.json" - } - }, - "description": "Gets an AuthorizationRule for a Namespace by rule name.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace AuthorizationRule returned successfully.", - "schema": { - "$ref": "#/definitions/AuthorizationRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys": { - "post": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_ListKeys", - "x-ms-examples": { - "NameSpaceAuthorizationRuleListKey": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleListKey.json" - } - }, - "description": "Gets the primary and secondary connection strings for the Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Connection strings returned successfully.", - "schema": { - "$ref": "#/definitions/AccessKeys" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys": { - "post": { - "tags": [ - "Namespaces" - ], - "operationId": "Namespaces_RegenerateKeys", - "x-ms-examples": { - "NameSpaceAuthorizationRuleRegenerateKey": { - "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenerateKey.json" - } - }, - "description": "Regenerates the primary or secondary connection strings for the specified Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RegenerateAccessKeyParameters" - }, - "description": "Parameters required to regenerate the connection string." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Connection strings regenerated successfully.", - "schema": { - "$ref": "#/definitions/AccessKeys" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability": { - "post": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_CheckNameAvailability", - "x-ms-examples": { - "NamespacesCheckNameAvailability": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasCheckNameAvailability.json" - } - }, - "description": "Check the give Namespace name availability.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityParameter" - }, - "description": "Parameters to check availability of the given Alias name" - } - ], - "responses": { - "200": { - "description": "check availability returned successfully.", - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs": { - "get": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_List", - "x-ms-examples": { - "EHAliasList": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasList.json" - } - }, - "description": "Gets all Alias(Disaster Recovery configurations)", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the list of Alias(Disaster Recovery configurations) for eventhub namespace", - "schema": { - "$ref": "#/definitions/ArmDisasterRecoveryListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}": { - "put": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_CreateOrUpdate", - "x-ms-examples": { - "EHAliasCreate": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasCreate.json" - } - }, - "description": "Creates or updates a new Alias(Disaster Recovery configuration)", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ArmDisasterRecovery" - }, - "description": "Parameters required to create an Alias(Disaster Recovery configuration)" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Alias(Disaster Recovery configuration) successfully created", - "schema": { - "$ref": "#/definitions/ArmDisasterRecovery" - } - }, - "201": { - "description": "Alias(Disaster Recovery configuration) creation request received" - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_Delete", - "x-ms-examples": { - "EHAliasDelete": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasDelete.json" - } - }, - "description": "Deletes an Alias(Disaster Recovery configuration)", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Delete Alias(Disaster Recovery configuration) request accepted" - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_Get", - "x-ms-examples": { - "EHAliasGet": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasGet.json" - } - }, - "description": "Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the Alias(Disaster Recovery configurations)", - "schema": { - "$ref": "#/definitions/ArmDisasterRecovery" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing": { - "post": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_BreakPairing", - "x-ms-examples": { - "EHAliasBreakPairing": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasBreakPairing.json" - } - }, - "description": "This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Break-Pairing operation is successful." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover": { - "post": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_FailOver", - "x-ms-examples": { - "EHAliasFailOver": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasFailOver.json" - } - }, - "description": "Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Failover operation is successful." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules": { - "get": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_ListAuthorizationRules", - "x-ms-examples": { - "ListAuthorizationRules": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListAll.json" - } - }, - "description": "Gets a list of authorization rules for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace AuthorizationRule successfully returned.", - "schema": { - "$ref": "#/definitions/AuthorizationRuleListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules/{authorizationRuleName}": { - "get": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_GetAuthorizationRule", - "x-ms-examples": { - "NameSpaceAuthorizationRuleGet": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleGet.json" - } - }, - "description": "Gets an AuthorizationRule for a Namespace by rule name.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Alias Namespace AuthorizationRule returned successfully.", - "schema": { - "$ref": "#/definitions/AuthorizationRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules/{authorizationRuleName}/listKeys": { - "post": { - "tags": [ - "DisasterRecoveryConfigs" - ], - "operationId": "DisasterRecoveryConfigs_ListKeys", - "x-ms-examples": { - "NameSpaceAuthorizationRuleListKey": { - "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListKey.json" - } - }, - "description": "Gets the primary and secondary connection strings for the Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/AliasNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Connection strings returned successfully.", - "schema": { - "$ref": "#/definitions/AccessKeys" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs": { - "get": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_ListByNamespace", - "x-ms-examples": { - "EventHubsListAll": { - "$ref": "./examples/EventHubs/EHEventHubListByNameSpace.json" - } - }, - "description": "Gets all the Event Hubs in a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/SkipParameter" - }, - { - "$ref": "#/parameters/TopParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the list of Event Hubs.", - "schema": { - "$ref": "#/definitions/EventHubListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}": { - "put": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_CreateOrUpdate", - "x-ms-examples": { - "EventHubCreate": { - "$ref": "./examples/EventHubs/EHEventHubCreate.json" - } - }, - "description": "Creates or updates a new Event Hub as a nested resource within a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Eventhub" - }, - "description": "Parameters supplied to create an Event Hub resource." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Event Hub successfully created.", - "schema": { - "$ref": "#/definitions/Eventhub" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_Delete", - "x-ms-examples": { - "EventHubDelete": { - "$ref": "./examples/EventHubs/EHEventHubDelete.json" - } - }, - "description": "Deletes an Event Hub from the specified Namespace and resource group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No content." - }, - "200": { - "description": "Event Hub successfully deleted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_Get", - "x-ms-examples": { - "EventHubGet": { - "$ref": "./examples/EventHubs/EHEventHubGet.json" - } - }, - "description": "Gets an Event Hubs description for the specified Event Hub.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the Event Hub description.", - "schema": { - "$ref": "#/definitions/Eventhub" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules": { - "get": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_ListAuthorizationRules", - "x-ms-examples": { - "EventHubAuthorizationRuleListAll": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleListAll.json" - } - }, - "description": "Gets the authorization rules for an Event Hub.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Event Hub AuthorizationRule returned successfully.", - "schema": { - "$ref": "#/definitions/AuthorizationRuleListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}": { - "put": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_CreateOrUpdateAuthorizationRule", - "x-ms-examples": { - "EventHubAuthorizationRuleCreate": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleCreate.json" - } - }, - "description": "Creates or updates an AuthorizationRule for the specified Event Hub. Creation/update of the AuthorizationRule will take a few seconds to take effect.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AuthorizationRule" - }, - "description": "The shared access AuthorizationRule." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Event Hub AuthorizationRule successfully created.", - "schema": { - "$ref": "#/definitions/AuthorizationRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_GetAuthorizationRule", - "x-ms-examples": { - "EventHubAuthorizationRuleGet": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleGet.json" - } - }, - "description": "Gets an AuthorizationRule for an Event Hub by rule name.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Event Hub AuthorizationRule successfully returned.", - "schema": { - "$ref": "#/definitions/AuthorizationRule" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_DeleteAuthorizationRule", - "x-ms-examples": { - "EventHubAuthorizationRuleDelete": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleDelete.json" - } - }, - "description": "Deletes an Event Hub AuthorizationRule.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No content." - }, - "200": { - "description": "Event Hub AuthorizationRule successfully deleted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}/ListKeys": { - "post": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_ListKeys", - "x-ms-examples": { - "EventHubAuthorizationRuleListKey": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleListKey.json" - } - }, - "description": "Gets the ACS and SAS connection strings for the Event Hub.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Connection strings successfully returned.", - "schema": { - "$ref": "#/definitions/AccessKeys" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{authorizationRuleName}/regenerateKeys": { - "post": { - "tags": [ - "EventHubs" - ], - "operationId": "EventHubs_RegenerateKeys", - "x-ms-examples": { - "EventHubAuthorizationRuleRegenerateKey": { - "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleRegenerateKey.json" - } - }, - "description": "Regenerates the ACS and SAS connection strings for the Event Hub.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/AuthorizationRuleNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RegenerateAccessKeyParameters" - }, - "description": "Parameters supplied to regenerate the AuthorizationRule Keys (PrimaryKey/SecondaryKey)." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Connection strings successfully regenerated.", - "schema": { - "$ref": "#/definitions/AccessKeys" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups/{consumerGroupName}": { - "put": { - "tags": [ - "ConsumerGroups" - ], - "operationId": "ConsumerGroups_CreateOrUpdate", - "x-ms-examples": { - "ConsumerGroupCreate": { - "$ref": "./examples/ConsumerGroup/EHConsumerGroupCreate.json" - } - }, - "description": "Creates or updates an Event Hubs consumer group as a nested resource within a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ConsumerGroupNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ConsumerGroup" - }, - "description": "Parameters supplied to create or update a consumer group resource." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Consumer group successfully created.", - "schema": { - "$ref": "#/definitions/ConsumerGroup" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "ConsumerGroups" - ], - "operationId": "ConsumerGroups_Delete", - "x-ms-examples": { - "ConsumerGroupDelete": { - "$ref": "./examples/ConsumerGroup/EHConsumerGroupDelete.json" - } - }, - "description": "Deletes a consumer group from the specified Event Hub and resource group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ConsumerGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No content." - }, - "200": { - "description": "Consumer group deleted." - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "ConsumerGroups" - ], - "operationId": "ConsumerGroups_Get", - "x-ms-examples": { - "ConsumerGroupGet": { - "$ref": "./examples/ConsumerGroup/EHConsumerGroupGet.json" - } - }, - "description": "Gets a description for the specified consumer group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ConsumerGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the consumer group description.", - "schema": { - "$ref": "#/definitions/ConsumerGroup" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups": { - "get": { - "tags": [ - "ConsumerGroups" - ], - "operationId": "ConsumerGroups_ListByEventHub", - "x-ms-examples": { - "ConsumerGroupsListAll": { - "$ref": "./examples/ConsumerGroup/EHConsumerGroupListByEventHub.json" - } - }, - "description": "Gets all the consumer groups in a Namespace. An empty feed is returned if no consumer group exists in the Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/EventHubNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/SkipParameter" - }, - { - "$ref": "#/parameters/TopParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the list of consumer groups.", - "schema": { - "$ref": "#/definitions/ConsumerGroupListResult" - } - }, - "default": { - "description": "Eventhub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventHub/sku/{sku}/regions": { - "get": { - "tags": [ - "Regions" - ], - "operationId": "Regions_ListBySku", - "x-ms-examples": { - "RegionsListBySkuBasic": { - "$ref": "./examples/EHRegionsListBySkuBasic.json" - }, - "RegionsListBySkuStandard": { - "$ref": "./examples/EHRegionsListBySkuStandard.json" - } - }, - "description": "Gets the available Regions for a given sku", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/SkuNameParameter" - } - ], - "responses": { - "200": { - "description": "Regions successfully returned.", - "schema": { - "$ref": "#/definitions/MessagingRegionsListResult" - } - }, - "default": { - "description": "EventHub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { - "put": { - "tags": [ - "Namespaces" - ], - "x-ms-examples": { - "NameSpaceNetworkRuleSetCreate": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetCreate.json" - } - }, - "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", - "description": "Create or update NetworkRuleSet for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - }, - "description": "The Namespace IpFilterRule." - } - ], - "responses": { - "200": { - "description": "Namespace NetworkRuleSet successfully returned.", - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - } - }, - "default": { - "description": "EventHub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "get": { - "tags": [ - "Namespaces" - ], - "x-ms-examples": { - "NameSpaceNetworkRuleSetGet": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetGet.json" - } - }, - "operationId": "Namespaces_GetNetworkRuleSet", - "description": "Gets NetworkRuleSet for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Namespace NetworkRuleSet successfully returned.", - "schema": { - "$ref": "#/definitions/NetworkRuleSet" - } - }, - "default": { - "description": "EventHub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets": { - "get": { - "tags": [ - "Namespaces" - ], - "x-ms-examples": { - "NameSpaceNetworkRuleSetList": { - "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json" - } - }, - "operationId": "Namespaces_ListNetworkRuleSets", - "description": "Gets list of NetworkRuleSet for a Namespace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NamespaceNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "List of NetworkRuleSets for Namespace successfully returned.", - "schema": { - "$ref": "#/definitions/NetworkRuleSetListResult" - } - }, - "default": { - "description": "EventHub error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - } - }, - "definitions": { - "TrackedResource": { - "properties": { - "location": { - "type": "string", - "x-ms-mutability": [ - "read", - "create" - ], - "description": "Resource location" - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-ms-mutability": [ - "read", - "create", - "update" - ], - "description": "Resource tags" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Definition of Resource" - }, - "Resource": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "Resource Id" - }, - "name": { - "type": "string", - "readOnly": true, - "description": "Resource name" - }, - "type": { - "type": "string", - "readOnly": true, - "description": "Resource type" - } - }, - "description": "The Resource definition", - "x-ms-azure-resource": true - }, - "EHNamespaceListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/EHNamespace" - }, - "description": "Result of the List Namespace operation" - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains incomplete list of namespaces." - } - }, - "description": "The response of the List Namespace operation" - }, - "EHNamespace": { - "properties": { - "sku": { - "$ref": "#/definitions/Sku", - "description": "Properties of sku resource" - }, - "properties": { - "x-ms-client-flatten": true, - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "Provisioning state of the Namespace." - }, - "createdAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The time the Namespace was created." - }, - "updatedAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The time the Namespace was updated." - }, - "serviceBusEndpoint": { - "readOnly": true, - "type": "string", - "description": "Endpoint you can use to perform Service Bus operations." - }, - "metricId": { - "readOnly": true, - "type": "string", - "description": "Identifier for Azure Insights metrics." - }, - "isAutoInflateEnabled": { - "type": "boolean", - "description": "Value that indicates whether AutoInflate is enabled for eventhub namespace." - }, - "maximumThroughputUnits": { - "format": "int32", - "type": "integer", - "maximum": 20, - "minimum": 0, - "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" - }, - "kafkaEnabled": { - "type": "boolean", - "description": "Value that indicates whether Kafka is enabled for eventhub namespace." - } - }, - "description": "Namespace properties supplied for create namespace operation." - } - }, - "allOf": [ - { - "$ref": "#/definitions/TrackedResource" - } - ], - "description": "Single Namespace item in List or Get Operation" - }, - "Sku": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of this SKU.", - "enum": [ - "Basic", - "Standard" - ], - "x-ms-enum": { - "name": "SkuName", - "modelAsString": true - } - }, - "tier": { - "type": "string", - "description": "The billing tier of this particular SKU.", - "enum": [ - "Basic", - "Standard" - ], - "x-ms-enum": { - "name": "SkuTier", - "modelAsString": true - } - }, - "capacity": { - "format": "int32", - "maximum": 20, - "minimum": 0, - "type": "integer", - "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." - } - }, - "required": [ - "name" - ], - "description": "SKU parameters supplied to the create namespace operation" - }, - "AuthorizationRuleListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/AuthorizationRule" - }, - "description": "Result of the List Authorization Rules operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains an incomplete list of Authorization Rules" - } - }, - "description": "The response from the List namespace operation." - }, - "AuthorizationRule": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "rights": { - "type": "array", - "items": { - "type": "string", - "enum": [ - "Manage", - "Send", - "Listen" - ], - "x-ms-enum": { - "name": "AccessRights", - "modelAsString": true - } - }, - "description": "The rights associated with the rule." - } - }, - "required": [ - "rights" - ], - "description": "Properties supplied to create or update AuthorizationRule" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in a List or Get AuthorizationRule operation" - }, - "AccessKeys": { - "properties": { - "primaryConnectionString": { - "readOnly": true, - "type": "string", - "description": "Primary connection string of the created namespace AuthorizationRule." - }, - "secondaryConnectionString": { - "readOnly": true, - "type": "string", - "description": "Secondary connection string of the created namespace AuthorizationRule." - }, - "aliasPrimaryConnectionString": { - "readOnly": true, - "type": "string", - "description": "Primary connection string of the alias if GEO DR is enabled" - }, - "aliasSecondaryConnectionString": { - "readOnly": true, - "type": "string", - "description": "Secondary connection string of the alias if GEO DR is enabled" - }, - "primaryKey": { - "readOnly": true, - "type": "string", - "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." - }, - "secondaryKey": { - "readOnly": true, - "type": "string", - "description": "A base64-encoded 256-bit primary key for signing and validating the SAS token." - }, - "keyName": { - "readOnly": true, - "type": "string", - "description": "A string that describes the AuthorizationRule." - } - }, - "description": "Namespace/EventHub Connection String" - }, - "RegenerateAccessKeyParameters": { - "properties": { - "keyType": { - "type": "string", - "description": "The access key to regenerate.", - "enum": [ - "PrimaryKey", - "SecondaryKey" - ], - "x-ms-enum": { - "name": "KeyType", - "modelAsString": false - } - }, - "key": { - "type": "string", - "description": "Optional, if the key value provided, is set for KeyType or autogenerated Key value set for keyType" - } - }, - "required": [ - "keyType" - ], - "description": "Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs to be reset." - }, - "Eventhub": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "partitionIds": { - "readOnly": true, - "type": "array", - "items": { - "type": "string" - }, - "description": "Current number of shards on the Event Hub." - }, - "createdAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "Exact time the Event Hub was created." - }, - "updatedAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The exact time the message was updated." - }, - "messageRetentionInDays": { - "format": "int64", - "type": "integer", - "minimum": 1, - "description": "Number of days to retain the events for this Event Hub, value should be 1 to 7 days" - }, - "partitionCount": { - "format": "int64", - "type": "integer", - "minimum": 1, - "description": "Number of partitions created for the Event Hub, allowed values are from 1 to 32 partitions." - }, - "status": { - "type": "string", - "description": "Enumerates the possible values for the status of the Event Hub.", - "enum": [ - "Active", - "Disabled", - "Restoring", - "SendDisabled", - "ReceiveDisabled", - "Creating", - "Deleting", - "Renaming", - "Unknown" - ], - "x-ms-enum": { - "name": "EntityStatus", - "modelAsString": false - } - }, - "captureDescription": { - "$ref": "#/definitions/CaptureDescription", - "description": "Properties of capture description" - } - }, - "description": "Properties supplied to the Create Or Update Event Hub operation." - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in List or Get Event Hub operation" - }, - "CaptureDescription": { - "properties": { - "enabled": { - "type": "boolean", - "description": "A value that indicates whether capture description is enabled. " - }, - "encoding": { - "type": "string", - "description": "Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version", - "enum": [ - "Avro", - "AvroDeflate" - ], - "x-ms-enum": { - "name": "EncodingCaptureDescription", - "modelAsString": false - } - }, - "intervalInSeconds": { - "format": "int32", - "type": "integer", - "maximum": 900, - "minimum": 60, - "description": "The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds" - }, - "sizeLimitInBytes": { - "format": "int32", - "type": "integer", - "maximum": 524288000, - "minimum": 10485760, - "description": "The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes" - }, - "destination": { - "$ref": "#/definitions/Destination", - "description": "Properties of Destination where capture will be stored. (Storage Account, Blob Names)" - }, - "skipEmptyArchives": { - "type": "boolean", - "description": "A value that indicates whether to Skip Empty Archives" - } - }, - "description": "Properties to configure capture description for eventhub" - }, - "Destination": { - "properties": { - "name": { - "type": "string", - "description": "Name for capture destination" - }, - "properties": { - "x-ms-client-flatten": true, - "properties": { - "storageAccountResourceId": { - "type": "string", - "description": "Resource id of the storage account to be used to create the blobs" - }, - "blobContainer": { - "type": "string", - "description": "Blob container Name" - }, - "archiveNameFormat": { - "type": "string", - "description": "Blob naming convention for archive, e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order" - } - }, - "description": "Properties describing the storage account, blob container and archive name format for capture destination" - } - }, - "description": "Capture storage details for capture description" - }, - "EventHubListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Eventhub" - }, - "description": "Result of the List EventHubs operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains incomplete list of EventHubs." - } - }, - "description": "The result of the List EventHubs operation." - }, - "ConsumerGroup": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "createdAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "Exact time the message was created." - }, - "updatedAt": { - "readOnly": true, - "format": "date-time", - "type": "string", - "description": "The exact time the message was updated." - }, - "userMetadata": { - "type": "string", - "description": "User Metadata is a placeholder to store user-defined string data with maximum length 1024. e.g. it can be used to store descriptive data, such as list of teams and their contact information also user-defined configuration settings can be stored." - } - }, - "description": "Single item in List or Get Consumer group operation" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in List or Get Consumer group operation" - }, - "ConsumerGroupListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ConsumerGroup" - }, - "description": "Result of the List Consumer Group operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains incomplete list of Consumer Group" - } - }, - "description": "The result to the List Consumer Group operation." - }, - "UnavailableReason": { - "type": "string", - "enum": [ - "None", - "InvalidName", - "SubscriptionIsDisabled", - "NameInUse", - "NameInLockdown", - "TooManyNamespaceInCurrentSubscription" - ], - "x-ms-enum": { - "name": "UnavailableReason", - "modelAsString": false - }, - "description": "Specifies the reason for the unavailability of the service." - }, - "CheckNameAvailabilityParameter": { - "properties": { - "name": { - "type": "string", - "description": "Name to check the namespace name availability" - } - }, - "required": [ - "name" - ], - "description": "Parameter supplied to check Namespace name availability operation " - }, - "CheckNameAvailabilityResult": { - "properties": { - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed info regarding the reason associated with the Namespace." - }, - "nameAvailable": { - "type": "boolean", - "description": "Value indicating Namespace is availability, true if the Namespace is available; otherwise, false." - }, - "reason": { - "$ref": "#/definitions/UnavailableReason", - "description": "The reason for unavailability of a Namespace." - } - }, - "description": "The Result of the CheckNameAvailability operation" - }, - "OperationListResult": { - "description": "Result of the request to list Event Hub operations. It contains a list of operations and a URL link to get the next set of results.", - "properties": { - "value": { - "description": "List of Event Hub operations supported by the Microsoft.EventHub resource provider.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Operation" - } - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "URL to get the next set of operation list results if there are any." - } - } - }, - "Operation": { - "description": "A Event Hub REST API operation", - "type": "object", - "properties": { - "name": { - "readOnly": true, - "type": "string", - "description": "Operation name: {provider}/{resource}/{operation}" - }, - "display": { - "description": "The object that represents the operation.", - "properties": { - "provider": { - "readOnly": true, - "type": "string", - "description": "Service provider: Microsoft.EventHub" - }, - "resource": { - "readOnly": true, - "type": "string", - "description": "Resource on which the operation is performed: Invoice, etc." - }, - "operation": { - "readOnly": true, - "type": "string", - "description": "Operation type: Read, write, delete, etc." - } - } - } - } - }, - "ErrorResponse": { - "description": "Error response indicates EventHub service is not able to process the incoming request. The reason is provided in the error message.", - "type": "object", - "properties": { - "code": { - "description": "Error code.", - "type": "string" - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string" - } - } - }, - "ArmDisasterRecovery": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' or 'Succeeded' or 'Failed'", - "enum": [ - "Accepted", - "Succeeded", - "Failed" - ], - "x-ms-enum": { - "name": "ProvisioningStateDR", - "modelAsString": false - } - }, - "partnerNamespace": { - "type": "string", - "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" - }, - "alternateName": { - "type": "string", - "description": "Alternate name specified when alias and namespace names are same." - }, - "role": { - "readOnly": true, - "type": "string", - "description": "role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or 'Secondary'", - "enum": [ - "Primary", - "PrimaryNotReplicating", - "Secondary" - ], - "x-ms-enum": { - "name": "RoleDisasterRecovery", - "modelAsString": false - } - }, - "pendingReplicationOperationsCount": { - "readOnly": true, - "format": "int64", - "type": "integer", - "description": "Number of entities pending to be replicated." - } - }, - "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Single item in List or Get Alias(Disaster Recovery configuration) operation" - }, - "ArmDisasterRecoveryListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ArmDisasterRecovery" - }, - "description": "List of Alias(Disaster Recovery configurations)" - }, - "nextLink": { - "type": "string", - "readOnly": true, - "description": "Link to the next set of results. Not empty if Value contains incomplete list of Alias(Disaster Recovery configuration)" - } - }, - "description": "The result of the List Alias(Disaster Recovery configuration) operation." - }, - "MessagingRegions": { - "properties": { - "properties": { - "properties": { - "code": { - "readOnly": true, - "type": "string", - "description": "Region code" - }, - "fullName": { - "readOnly": true, - "type": "string", - "description": "Full name of the region" - } - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/TrackedResource" - } - ], - "description": "Messaging Region" - }, - "MessagingRegionsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/MessagingRegions" - }, - "description": "Result of the List MessagingRegions type." - }, - "nextLink": { - "type": "string", - "readOnly": true, - "description": "Link to the next set of results. Not empty if Value contains incomplete list of MessagingRegions." - } - }, - "description": "The response of the List MessagingRegions operation." - }, - "MessagingPlan": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "properties": { - "sku": { - "format": "int32", - "readOnly": true, - "type": "integer", - "description": "Sku type" - }, - "selectedEventHubUnit": { - "format": "int32", - "readOnly": true, - "type": "integer", - "description": "Selected event hub unit" - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "readOnly": true, - "description": "The exact time the messaging plan was updated." - }, - "revision": { - "format": "int64", - "readOnly": true, - "type": "integer", - "description": "revision number" - } - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/TrackedResource" - } - ], - "description": "Messaging Plan for the namespace" - }, - "Subnet": { - "properties": { - "id": { - "type": "string", - "description": "Resource ID of Virtual Network Subnet" - } - }, - "required": [ - "id" - ], - "description": "Properties supplied for Subnet" - }, - "NWRuleSetIpRules": { - "x-ms-client-flatten": true, - "properties": { - "ipMask": { - "type": "string", - "description": "IP Mask" - }, - "action": { - "type": "string", - "description": "The IP Filter Action", - "enum": [ - "Allow" - ], - "x-ms-enum": { - "name": "NetworkRuleIPAction", - "modelAsString": true - }, - "default": "Allow" - } - }, - "description": "Description of NetWorkRuleSet - IpRules resource." - }, - "NWRuleSetVirtualNetworkRules": { - "x-ms-client-flatten": true, - "properties": { - "subnet": { - "$ref": "#/definitions/Subnet", - "description": "Subnet properties" - }, - "ignoreMissingVnetServiceEndpoint": { - "type": "boolean", - "description": "Value that indicates whether to ignore missing VNet Service Endpoint" - } - }, - "description": "Description of VirtualNetworkRules - NetworkRules resource." - }, - "NetworkRuleSet": { - "properties": { - "properties": { - "description": "NetworkRuleSet properties", - "x-ms-client-flatten": true, - "properties": { - "defaultAction": { - "type": "string", - "description": "Default Action for Network Rule Set", - "enum": [ - "Allow", - "Deny" - ], - "x-ms-enum": { - "name": "DefaultAction", - "modelAsString": true - } - }, - "virtualNetworkRules": { - "type": "array", - "items": { - "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" - }, - "description": "List VirtualNetwork Rules" - }, - "ipRules": { - "type": "array", - "items": { - "$ref": "#/definitions/NWRuleSetIpRules" - }, - "description": "List of IpRules" - } - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Description of NetworkRuleSet resource." - }, - "NetworkRuleSetListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/NetworkRuleSet" - }, - "description": "Result of the List NetworkRuleSet operation." - }, - "nextLink": { - "type": "string", - "description": "Link to the next set of results. Not empty if Value contains incomplete list of NetworkRuleSet." - } - }, - "description": "The response of the List NetworkRuleSet operation" - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client API Version." - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 90, - "x-ms-parameter-location": "method", - "description": "Name of the resource group within the azure subscription." - }, - "NamespaceNameParameter": { - "name": "namespaceName", - "in": "path", - "required": true, - "type": "string", - "minLength": 6, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The Namespace name" - }, - "AuthorizationRuleNameParameter": { - "name": "authorizationRuleName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "x-ms-parameter-location": "method", - "description": "The authorization rule name." - }, - "EventHubNameParameter": { - "name": "eventHubName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The Event Hub name" - }, - "AliasNameParameter": { - "name": "alias", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The Disaster Recovery configuration name" - }, - "ConsumerGroupNameParameter": { - "name": "consumerGroupName", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The consumer group name" - }, - "SkuNameParameter": { - "name": "sku", - "in": "path", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 50, - "x-ms-parameter-location": "method", - "description": "The sku type." - }, - "SkipParameter": { - "name": "$skip", - "description": "Skip is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skip parameter that specifies a starting point to use for subsequent calls.", - "in": "query", - "required": false, - "type": "integer", - "minimum": 0, - "maximum": 1000, - "x-ms-parameter-location": "method" - }, - "TopParameter": { - "name": "$top", - "description": "May be used to limit the number of results to the most recent N usageDetails.", - "in": "query", - "required": false, - "type": "integer", - "minimum": 1, - "maximum": 1000, - "x-ms-parameter-location": "method" - } - } -} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/consumergroups.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/consumergroups.json new file mode 100644 index 000000000000..3f9cf49a0dec --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/consumergroups.json @@ -0,0 +1,292 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups/{consumerGroupName}": { + "put": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_CreateOrUpdate", + "x-ms-examples": { + "ConsumerGroupCreate": { + "$ref": "./examples/ConsumerGroup/EHConsumerGroupCreate.json" + } + }, + "description": "Creates or updates an Event Hubs consumer group as a nested resource within a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ConsumerGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConsumerGroup" + }, + "description": "Parameters supplied to create or update a consumer group resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Consumer group successfully created.", + "schema": { + "$ref": "#/definitions/ConsumerGroup" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_Delete", + "x-ms-examples": { + "ConsumerGroupDelete": { + "$ref": "./examples/ConsumerGroup/EHConsumerGroupDelete.json" + } + }, + "description": "Deletes a consumer group from the specified Event Hub and resource group.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ConsumerGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Consumer group deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_Get", + "x-ms-examples": { + "ConsumerGroupGet": { + "$ref": "./examples/ConsumerGroup/EHConsumerGroupGet.json" + } + }, + "description": "Gets a description for the specified consumer group.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ConsumerGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the consumer group description.", + "schema": { + "$ref": "#/definitions/ConsumerGroup" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/consumergroups": { + "get": { + "tags": [ + "ConsumerGroups" + ], + "operationId": "ConsumerGroups_ListByEventHub", + "x-ms-examples": { + "ConsumerGroupsListAll": { + "$ref": "./examples/ConsumerGroup/EHConsumerGroupListByEventHub.json" + } + }, + "description": "Gets all the consumer groups in a Namespace. An empty feed is returned if no consumer group exists in the Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SkipParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of consumer groups.", + "schema": { + "$ref": "#/definitions/ConsumerGroupListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ConsumerGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "createdAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "Exact time the message was created." + }, + "updatedAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The exact time the message was updated." + }, + "userMetadata": { + "type": "string", + "description": "User Metadata is a placeholder to store user-defined string data with maximum length 1024. e.g. it can be used to store descriptive data, such as list of teams and their contact information also user-defined configuration settings can be stored." + } + }, + "description": "Single item in List or Get Consumer group operation" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in List or Get Consumer group operation" + }, + "ConsumerGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConsumerGroup" + }, + "description": "Result of the List Consumer Group operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of Consumer Group" + } + }, + "description": "The result to the List Consumer Group operation." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json new file mode 100644 index 000000000000..c9ab9ef1e42a --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json @@ -0,0 +1,482 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/checkNameAvailability": { + "post": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_CheckNameAvailability", + "x-ms-examples": { + "NamespacesCheckNameAvailability": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasCheckNameAvailability.json" + } + }, + "description": "Check the give Namespace name availability.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameter" + }, + "description": "Parameters to check availability of the given Alias name" + } + ], + "responses": { + "200": { + "description": "check availability returned successfully.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs": { + "get": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_List", + "x-ms-examples": { + "EHAliasList": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasList.json" + } + }, + "description": "Gets all Alias(Disaster Recovery configurations)", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Alias(Disaster Recovery configurations) for eventhub namespace", + "schema": { + "$ref": "#/definitions/ArmDisasterRecoveryListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}": { + "put": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_CreateOrUpdate", + "x-ms-examples": { + "EHAliasCreate": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasCreate.json" + } + }, + "description": "Creates or updates a new Alias(Disaster Recovery configuration)", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ArmDisasterRecovery" + }, + "description": "Parameters required to create an Alias(Disaster Recovery configuration)" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Alias(Disaster Recovery configuration) successfully created", + "schema": { + "$ref": "#/definitions/ArmDisasterRecovery" + } + }, + "201": { + "description": "Alias(Disaster Recovery configuration) creation request received" + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_Delete", + "x-ms-examples": { + "EHAliasDelete": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasDelete.json" + } + }, + "description": "Deletes an Alias(Disaster Recovery configuration)", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete Alias(Disaster Recovery configuration) request accepted" + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_Get", + "x-ms-examples": { + "EHAliasGet": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasGet.json" + } + }, + "description": "Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the Alias(Disaster Recovery configurations)", + "schema": { + "$ref": "#/definitions/ArmDisasterRecovery" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing": { + "post": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_BreakPairing", + "x-ms-examples": { + "EHAliasBreakPairing": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasBreakPairing.json" + } + }, + "description": "This operation disables the Disaster Recovery and stops replicating changes from primary to secondary namespaces", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Break-Pairing operation is successful." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover": { + "post": { + "tags": [ + "DisasterRecoveryConfigs" + ], + "operationId": "DisasterRecoveryConfigs_FailOver", + "x-ms-examples": { + "EHAliasFailOver": { + "$ref": "./examples/disasterRecoveryConfigs/EHAliasFailOver.json" + } + }, + "description": "Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AliasNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Failover operation is successful." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "UnavailableReason": { + "type": "string", + "enum": [ + "None", + "InvalidName", + "SubscriptionIsDisabled", + "NameInUse", + "NameInLockdown", + "TooManyNamespaceInCurrentSubscription" + ], + "x-ms-enum": { + "name": "UnavailableReason", + "modelAsString": false + }, + "description": "Specifies the reason for the unavailability of the service." + }, + "CheckNameAvailabilityParameter": { + "properties": { + "name": { + "type": "string", + "description": "Name to check the namespace name availability" + } + }, + "required": [ + "name" + ], + "description": "Parameter supplied to check Namespace name availability operation " + }, + "CheckNameAvailabilityResult": { + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the Namespace." + }, + "nameAvailable": { + "type": "boolean", + "description": "Value indicating Namespace is availability, true if the Namespace is available; otherwise, false." + }, + "reason": { + "$ref": "#/definitions/UnavailableReason", + "description": "The reason for unavailability of a Namespace." + } + }, + "description": "The Result of the CheckNameAvailability operation" + }, + "ArmDisasterRecovery": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' or 'Succeeded' or 'Failed'", + "enum": [ + "Accepted", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningStateDR", + "modelAsString": false + } + }, + "partnerNamespace": { + "type": "string", + "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" + }, + "alternateName": { + "type": "string", + "description": "Alternate name specified when alias and namespace names are same." + }, + "role": { + "readOnly": true, + "type": "string", + "description": "role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or 'Secondary'", + "enum": [ + "Primary", + "PrimaryNotReplicating", + "Secondary" + ], + "x-ms-enum": { + "name": "RoleDisasterRecovery", + "modelAsString": false + } + }, + "pendingReplicationOperationsCount": { + "readOnly": true, + "format": "int64", + "type": "integer", + "description": "Number of entities pending to be replicated." + } + }, + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in List or Get Alias(Disaster Recovery configuration) operation" + }, + "ArmDisasterRecoveryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ArmDisasterRecovery" + }, + "description": "List of Alias(Disaster Recovery configurations)" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if Value contains incomplete list of Alias(Disaster Recovery configuration)" + } + }, + "description": "The result of the List Alias(Disaster Recovery configuration) operation." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/eventhubs.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/eventhubs.json new file mode 100644 index 000000000000..7018d4b01cf6 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/eventhubs.json @@ -0,0 +1,389 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces/{namespaceName}/eventhubs": { + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_ListByNamespace", + "x-ms-examples": { + "EventHubsListAll": { + "$ref": "./examples/EventHubs/EHEventHubListByNameSpace.json" + } + }, + "description": "Gets all the Event Hubs in a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SkipParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Event Hubs.", + "schema": { + "$ref": "#/definitions/EventHubListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}": { + "put": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_CreateOrUpdate", + "x-ms-examples": { + "EventHubCreate": { + "$ref": "./examples/EventHubs/EHEventHubCreate.json" + } + }, + "description": "Creates or updates a new Event Hub as a nested resource within a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Eventhub" + }, + "description": "Parameters supplied to create an Event Hub resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub successfully created.", + "schema": { + "$ref": "#/definitions/Eventhub" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_Delete", + "x-ms-examples": { + "EventHubDelete": { + "$ref": "./examples/EventHubs/EHEventHubDelete.json" + } + }, + "description": "Deletes an Event Hub from the specified Namespace and resource group.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Event Hub successfully deleted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EventHubs" + ], + "operationId": "EventHubs_Get", + "x-ms-examples": { + "EventHubGet": { + "$ref": "./examples/EventHubs/EHEventHubGet.json" + } + }, + "description": "Gets an Event Hubs description for the specified Event Hub.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/EventHubNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the Event Hub description.", + "schema": { + "$ref": "#/definitions/Eventhub" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "CaptureDescription": { + "properties": { + "enabled": { + "type": "boolean", + "description": "A value that indicates whether capture description is enabled. " + }, + "encoding": { + "type": "string", + "description": "Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version", + "enum": [ + "Avro", + "AvroDeflate" + ], + "x-ms-enum": { + "name": "EncodingCaptureDescription", + "modelAsString": false + } + }, + "intervalInSeconds": { + "format": "int32", + "type": "integer", + "maximum": 900, + "minimum": 60, + "description": "The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds" + }, + "sizeLimitInBytes": { + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760, + "description": "The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes" + }, + "destination": { + "$ref": "#/definitions/Destination", + "description": "Properties of Destination where capture will be stored. (Storage Account, Blob Names)" + }, + "skipEmptyArchives": { + "type": "boolean", + "description": "A value that indicates whether to Skip Empty Archives" + } + }, + "description": "Properties to configure capture description for eventhub" + }, + "Eventhub": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "partitionIds": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Current number of shards on the Event Hub." + }, + "createdAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "Exact time the Event Hub was created." + }, + "updatedAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The exact time the message was updated." + }, + "messageRetentionInDays": { + "format": "int64", + "type": "integer", + "minimum": 1, + "description": "Number of days to retain the events for this Event Hub, value should be 1 to 7 days" + }, + "partitionCount": { + "format": "int64", + "type": "integer", + "minimum": 1, + "description": "Number of partitions created for the Event Hub, allowed values are from 1 to 32 partitions." + }, + "status": { + "type": "string", + "description": "Enumerates the possible values for the status of the Event Hub.", + "enum": [ + "Active", + "Disabled", + "Restoring", + "SendDisabled", + "ReceiveDisabled", + "Creating", + "Deleting", + "Renaming", + "Unknown" + ], + "x-ms-enum": { + "name": "EntityStatus", + "modelAsString": false + } + }, + "captureDescription": { + "$ref": "#/definitions/CaptureDescription", + "description": "Properties of capture description" + } + }, + "description": "Properties supplied to the Create Or Update Event Hub operation." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Single item in List or Get Event Hub operation" + }, + "EventHubListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Eventhub" + }, + "description": "Result of the List EventHubs operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of EventHubs." + } + }, + "description": "The result of the List EventHubs operation." + }, + "Destination": { + "properties": { + "name": { + "type": "string", + "description": "Name for capture destination" + }, + "properties": { + "x-ms-client-flatten": true, + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "Resource id of the storage account to be used to create the blobs" + }, + "blobContainer": { + "type": "string", + "description": "Blob container Name" + }, + "archiveNameFormat": { + "type": "string", + "description": "Blob naming convention for archive, e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order" + } + }, + "description": "Properties describing the storage account, blob container and archive name format for capture destination" + } + }, + "description": "Capture storage details for capture description" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/namespaces.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/namespaces.json new file mode 100644 index 000000000000..83abb842fa9f --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/namespaces.json @@ -0,0 +1,533 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_List", + "x-ms-examples": { + "NamespacesListBySubscription": { + "$ref": "./examples/NameSpaces/EHNameSpaceList.json" + } + }, + "description": "Lists all the available Namespaces within a subscription, irrespective of the resource groups.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespaceListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListByResourceGroup", + "x-ms-examples": { + "NamespaceListByResourceGroup": { + "$ref": "./examples/NameSpaces/EHNameSpaceListByResourceGroup.json" + } + }, + "description": "Lists the available Namespaces within a resource group.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespaceListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdate", + "x-ms-examples": { + "NamespaceCreate": { + "$ref": "./examples/NameSpaces/EHNameSpaceCreate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EHNamespace", + "required": [ + "location" + ] + }, + "description": "Parameters for creating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully created.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace create request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "202": { + "description": "Namespace create or update request accepted." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Delete", + "x-ms-examples": { + "NameSpaceDelete": { + "$ref": "./examples/NameSpaces/EHNameSpaceDelete.json" + } + }, + "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully deleted." + }, + "202": { + "description": "Namespace delete request accepted." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Get", + "x-ms-examples": { + "NameSpaceGet": { + "$ref": "./examples/NameSpaces/EHNameSpaceGet.json" + } + }, + "description": "Gets the description of the specified namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace returned successfully.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Update", + "x-ms-examples": { + "NamespacesUpdate": { + "$ref": "./examples/NameSpaces/EHNameSpaceUpdate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EHNamespace" + }, + "description": "Parameters for updating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully updated.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/EHNamespace" + } + }, + "202": { + "description": "Namespace create or update request accepted." + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/messagingplan": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_GetMessagingPlan", + "x-ms-examples": { + "GetNamespaceMessagingPlan": { + "$ref": "./examples/NameSpaces/EHNameSpaceGetMessagingPlan.json" + } + }, + "description": "Gets messaging plan for specified namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Messaging Plan successfully returned.", + "schema": { + "$ref": "#/definitions/MessagingPlan" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Sku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of this SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "The billing tier of this particular SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + }, + "capacity": { + "format": "int32", + "maximum": 20, + "minimum": 0, + "type": "integer", + "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." + } + }, + "required": [ + "name" + ], + "description": "SKU parameters supplied to the create namespace operation" + }, + "EHNamespaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EHNamespace" + }, + "description": "Result of the List Namespace operation" + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of namespaces." + } + }, + "description": "The response of the List Namespace operation" + }, + "EHNamespace": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "Properties of sku resource" + }, + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the Namespace." + }, + "createdAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the Namespace was created." + }, + "updatedAt": { + "readOnly": true, + "format": "date-time", + "type": "string", + "description": "The time the Namespace was updated." + }, + "serviceBusEndpoint": { + "readOnly": true, + "type": "string", + "description": "Endpoint you can use to perform Service Bus operations." + }, + "metricId": { + "readOnly": true, + "type": "string", + "description": "Identifier for Azure Insights metrics." + }, + "isAutoInflateEnabled": { + "type": "boolean", + "description": "Value that indicates whether AutoInflate is enabled for eventhub namespace." + }, + "maximumThroughputUnits": { + "format": "int32", + "type": "integer", + "maximum": 20, + "minimum": 0, + "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" + }, + "kafkaEnabled": { + "type": "boolean", + "description": "Value that indicates whether Kafka is enabled for eventhub namespace." + } + }, + "description": "Namespace properties supplied for create namespace operation." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Single Namespace item in List or Get Operation" + }, + "MessagingPlan": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "sku": { + "format": "int32", + "readOnly": true, + "type": "integer", + "description": "Sku type" + }, + "selectedEventHubUnit": { + "format": "int32", + "readOnly": true, + "type": "integer", + "description": "Selected event hub unit" + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The exact time the messaging plan was updated." + }, + "revision": { + "format": "int64", + "readOnly": true, + "type": "integer", + "description": "revision number" + } + } + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Messaging Plan for the namespace" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json new file mode 100644 index 000000000000..d32c36ffc602 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json @@ -0,0 +1,283 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { + "put": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetCreate.json" + } + }, + "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", + "description": "Create or update NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "The Namespace IpFilterRule." + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "EventHub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetGet": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetGet.json" + } + }, + "operationId": "Namespaces_GetNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "EventHub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets": { + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetList": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json" + } + }, + "operationId": "Namespaces_ListNetworkRuleSets", + "description": "Gets list of NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of NetworkRuleSets for Namespace successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSetListResult" + } + }, + "default": { + "description": "EventHub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Subnet": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID of Virtual Network Subnet" + } + }, + "required": [ + "id" + ], + "description": "Properties supplied for Subnet" + }, + "NWRuleSetIpRules": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + }, + "default": "Allow" + } + }, + "description": "Description of NetWorkRuleSet - IpRules resource." + }, + "NWRuleSetVirtualNetworkRules": { + "x-ms-client-flatten": true, + "properties": { + "subnet": { + "$ref": "#/definitions/Subnet", + "description": "Subnet properties" + }, + "ignoreMissingVnetServiceEndpoint": { + "type": "boolean", + "description": "Value that indicates whether to ignore missing VNet Service Endpoint" + } + }, + "description": "Description of VirtualNetworkRules - NetworkRules resource." + }, + "NetworkRuleSet": { + "properties": { + "properties": { + "description": "NetworkRuleSet properties", + "x-ms-client-flatten": true, + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "virtualNetworkRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" + }, + "description": "List VirtualNetwork Rules" + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + }, + "description": "List of IpRules" + } + } + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Description of NetworkRuleSet resource." + }, + "NetworkRuleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "Result of the List NetworkRuleSet operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of NetworkRuleSet." + } + }, + "description": "The response of the List NetworkRuleSet operation" + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/operations.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/operations.json new file mode 100644 index 000000000000..967a75365837 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/operations.json @@ -0,0 +1,126 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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": { + "/providers/Microsoft.EventHub/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "EHOperations_List": { + "$ref": "./examples/EHOperations_List.json" + } + }, + "description": "Lists all of the available Event Hub REST API operations.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Eventhub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Event Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of Event Hub operations supported by the Microsoft.EventHub resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "A Event Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{operation}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft.EventHub" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource on which the operation is performed: Invoice, etc." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Operation type: Read, write, delete, etc." + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/sku.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/sku.json new file mode 100644 index 000000000000..1d69a375178a --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/sku.json @@ -0,0 +1,128 @@ +{ + "swagger": "2.0", + "info": { + "title": "EventHubManagementClient", + "description": "Azure Event Hubs client", + "version": "2017-04-01" + }, + "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.EventHub/sku/{sku}/regions": { + "get": { + "tags": [ + "Regions" + ], + "operationId": "Regions_ListBySku", + "x-ms-examples": { + "RegionsListBySkuBasic": { + "$ref": "./examples/EHRegionsListBySkuBasic.json" + }, + "RegionsListBySkuStandard": { + "$ref": "./examples/EHRegionsListBySkuStandard.json" + } + }, + "description": "Gets the available Regions for a given sku", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SkuNameParameter" + } + ], + "responses": { + "200": { + "description": "Regions successfully returned.", + "schema": { + "$ref": "#/definitions/MessagingRegionsListResult" + } + }, + "default": { + "description": "EventHub error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "MessagingRegions": { + "properties": { + "properties": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "Region code" + }, + "fullName": { + "readOnly": true, + "type": "string", + "description": "Full name of the region" + } + }, + "description": "Properties of Messaging Region" + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Messaging Region" + }, + "MessagingRegionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MessagingRegions" + }, + "description": "Result of the List MessagingRegions type." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next set of results. Not empty if Value contains incomplete list of MessagingRegions." + } + }, + "description": "The response of the List MessagingRegions operation." + } + }, + "parameters": {} +} diff --git a/specification/eventhub/resource-manager/readme.md b/specification/eventhub/resource-manager/readme.md index 79f815441b8b..f1cda0ee1161 100644 --- a/specification/eventhub/resource-manager/readme.md +++ b/specification/eventhub/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the EventHub API. ``` yaml openapi-type: arm -tag: package-2017-04 +tag: package-2018-01-preview ``` @@ -36,7 +36,15 @@ These settings apply only when `--tag=package-2017-04` is specified on the comma ``` yaml $(tag) == 'package-2017-04' input-file: -- Microsoft.EventHub/stable/2017-04-01/EventHub.json +- Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json +- Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json +- Microsoft.EventHub/stable/2017-04-01/consumergroups.json +- Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json +- Microsoft.EventHub/stable/2017-04-01/eventhubs.json +- Microsoft.EventHub/stable/2017-04-01/namespaces.json +- Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json +- Microsoft.EventHub/stable/2017-04-01/operations.json +- Microsoft.EventHub/stable/2017-04-01/sku.json ``` @@ -66,7 +74,20 @@ These settings apply only when `--tag=package-2018-01-preview` is specified on t ``` yaml $(tag) == 'package-2018-01-preview' input-file: -- Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json +- Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json +- Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json +- Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json +- Microsoft.EventHub/stable/2017-04-01/consumergroups.json +- Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json +- Microsoft.EventHub/stable/2017-04-01/operations.json +- Microsoft.EventHub/stable/2017-04-01/eventhubs.json +- Microsoft.EventHub/stable/2017-04-01/sku.json ``` @@ -133,10 +154,24 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/EventHub.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/consumergroups.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/eventhubs.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/namespaces.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/operations.json + - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/sku.json - $(this-folder)/Microsoft.EventHub/stable/2015-08-01/EventHub.json - $(this-folder)/Microsoft.EventHub/stable/2014-09-01/EventHub.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json + - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json ``` diff --git a/specification/eventhub/resource-manager/readme.python.md b/specification/eventhub/resource-manager/readme.python.md index 592e52af5d37..f4828241cafb 100644 --- a/specification/eventhub/resource-manager/readme.python.md +++ b/specification/eventhub/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -12,23 +12,49 @@ python: no-namespace-folders: true ``` +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-eventhub +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: - tag: package-2018-01-preview - tag: package-2017-04 - tag: package-2015-08 ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2018-01-preview + - tag: package-2017-04 + - tag: package-2015-08 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/ +clear-output-folder: false +perform-load: false +``` + ### Tag: package-2018-01-preview and python These settings apply only when `--tag=package-2018-01-preview --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-01-preview' && $(python) +``` yaml $(tag) == 'package-2018-01-preview' +namespace: azure.mgmt.eventhub.v2018_01_01_preview +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2018_01_01_preview python: namespace: azure.mgmt.eventhub.v2018_01_01_preview output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2018_01_01_preview @@ -39,7 +65,9 @@ python: These settings apply only when `--tag=package-2017-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-04' && $(python) +``` yaml $(tag) == 'package-2017-04' +namespace: azure.mgmt.eventhub.v2017_04_01 +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2017_04_01 python: namespace: azure.mgmt.eventhub.v2017_04_01 output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2017_04_01 @@ -50,7 +78,9 @@ python: These settings apply only when `--tag=package-2015-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-08' && $(python) +``` yaml $(tag) == 'package-2015-08' +namespace: azure.mgmt.eventhub.v2015_08_01 +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2015_08_01 python: namespace: azure.mgmt.eventhub.v2015_08_01 output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2015_08_01 diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json index 1fac62bfeda9..5685f2ad81ed 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json @@ -1254,7 +1254,7 @@ ], "x-ms-enum": { "name": "PrivateEndpointStatus", - "modelAsString": false + "modelAsString": true } }, "privateLinkApprovalMessage": { diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/assets/frontdoor.svg b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/assets/frontdoor.svg new file mode 100644 index 000000000000..2806bba823df --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/assets/frontdoor.svg @@ -0,0 +1,668 @@ + + + + + + +G + + + +A0 + +Frontdoor + +-properties:FrontdoorProperties + + + +A2 + +FrontdoorProperties + +-resourceState:ResourceState +-provisioningState:string +-cname:string + + + +A0->A2 + + + + + +A1 + +FrontdoorUpdateParameters + +-friendlyName:string +-routingRules:Array<RoutingRule> +-loadBalancingSettings:Array<LoadBalancingSettingsModel> +-healthProbeSettings:Array<HealthProbeSettingsModel> +-backendPools:Array<BackendPool> +-frontendEndpoints:Array<FrontendEndpoint> +-enabledState:string + + + +A1->A2 + + +allOf + + + +A5 + +RoutingRule + +-properties:RoutingRuleProperties +-name:string +-type:string + + + +A1->A5 + + + + + +A10 + +LoadBalancingSettingsModel + +-properties:LoadBalancingSettingsProperties +-name:string +-type:string + + + +A1->A10 + + + + + +A14 + +HealthProbeSettingsModel + +-properties:HealthProbeSettingsProperties +-name:string +-type:string + + + +A1->A14 + + + + + +A18 + +BackendPool + +-properties:BackendPoolProperties +-name:string +-type:string + + + +A1->A18 + + + + + +A26 + +FrontendEndpoint + +-properties:FrontendEndpointProperties +-name:string +-type:string + + + +A1->A26 + + + + + +A30 + +ResourceState + + + +A2->A30 + + + + + +A3 + +FrontdoorListResult + +-value:Array<Frontdoor> +-nextLink:string + + + +A3->A0 + + + + + +A4 + +PurgeParameters + +-contentPaths:Array<string> + + + +A6 + +RoutingRuleProperties + +-resourceState:ResourceState + + + +A5->A6 + + + + + +A6->A30 + + + + + +A7 + +RoutingRuleListResult + +-value:Array<RoutingRule> +-nextLink:string + + + +A7->A5 + + + + + +A8 + +RoutingRuleUpdateParameters + +-frontendEndpoints:Array<SubResource> +-acceptedProtocols:Array<string> +-patternsToMatch:Array<string> +-customForwardingPath:string +-forwardingProtocol:string +-cacheConfiguration:CacheConfiguration +-backendPool:SubResource +-enabledState:string + + + +A8->A6 + + +allOf + + + +A22 + +CacheConfiguration + +-queryParameterStripDirective:string +-dynamicCompression:string + + + +A8->A22 + + + + + +A38 + +SubResource + +-id:string + + + +A8->A38 + + + + + +A8->A38 + + + + + +A9 + +Backend + +-address:string +-httpPort: +-httpsPort: +-enabledState:string +-priority: +-weight: +-backendHostHeader:string + + + +A11 + +LoadBalancingSettingsProperties + +-resourceState:ResourceState + + + +A10->A11 + + + + + +A11->A30 + + + + + +A12 + +LoadBalancingSettingsListResult + +-value:Array<LoadBalancingSettingsModel> +-nextLink:string + + + +A12->A10 + + + + + +A13 + +LoadBalancingSettingsUpdateParameters + +-sampleSize: +-successfulSamplesRequired: +-additionalLatencyMilliseconds: + + + +A13->A11 + + +allOf + + + +A15 + +HealthProbeSettingsProperties + +-resourceState:ResourceState + + + +A14->A15 + + + + + +A15->A30 + + + + + +A16 + +HealthProbeSettingsListResult + +-value:Array<HealthProbeSettingsModel> +-nextLink:string + + + +A16->A14 + + + + + +A17 + +HealthProbeSettingsUpdateParameters + +-path:string +-protocol:string +-intervalInSeconds: + + + +A17->A15 + + +allOf + + + +A20 + +BackendPoolProperties + +-resourceState:ResourceState + + + +A18->A20 + + + + + +A19 + +BackendPoolUpdateParameters + +-backends:Array<Backend> +-loadBalancingSettings:SubResource +-healthProbeSettings:SubResource + + + +A19->A9 + + + + + +A19->A20 + + +allOf + + + +A19->A38 + + + + + +A19->A38 + + + + + +A20->A30 + + + + + +A21 + +BackendPoolListResult + +-value:Array<BackendPool> +-nextLink:string + + + +A21->A18 + + + + + +A23 + +KeyVaultCertificateSourceParameters + +-vault:Object +-secretName:string +-secretVersion:string + + + +A24 + +FrontdoorCertificateSourceParameters + +-certificateType:string + + + +A25 + +CustomHttpsConfiguration + +-certificateSource:string +-protocolType:string +-keyVaultCertificateSourceParameters:KeyVaultCertificateSourceParameters +-frontdoorCertificateSourceParameters:FrontdoorCertificateSourceParameters + + + +A25->A23 + + + + + +A25->A24 + + + + + +A27 + +FrontendEndpointProperties + +-resourceState:ResourceState +-customHttpsProvisioningState:string +-customHttpsProvisioningSubstate:string +-customHttpsConfiguration:CustomHttpsConfiguration + + + +A26->A27 + + + + + +A27->A25 + + + + + +A27->A30 + + + + + +A28 + +FrontendEndpointUpdateParameters + +-hostName:string +-sessionAffinityEnabledState:string +-sessionAffinityTtlSeconds: +-webApplicationFirewallPolicyLink:Object + + + +A28->A27 + + +allOf + + + +A29 + +FrontendEndpointsListResult + +-value:Array<FrontendEndpoint> +-nextLink:string + + + +A29->A26 + + + + + +A31 + +ValidateCustomDomainInput + +-hostName:string + + + +A32 + +ValidateCustomDomainOutput + +-customDomainValidated:boolean +-reason:string +-message:string + + + +A33 + +ErrorResponse + +-code:string +-message:string + + + +A34 + +CheckNameAvailabilityInput + +-name:string +-type:ResourceType + + + +A36 + +ResourceType + + + +A34->A36 + + + + + +A35 + +CheckNameAvailabilityOutput + +-nameAvailability:string +-reason:string +-message:string + + + +A37 + +Resource + +-id:string +-name:string +-type:string +-location:string +-tags:Dictionary<string> + + + +A37->A0 + + +allOf + + + +A38->A5 + + +allOf + + + +A38->A10 + + +allOf + + + +A38->A14 + + +allOf + + + +A38->A18 + + +allOf + + + +A38->A26 + + +allOf + + + diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailability.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailability.json new file mode 100644 index 000000000000..92b426753a32 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "checkFrontDoorNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Network/frontDoors" + } + }, + "responses": { + "200": { + "body": { + "nameAvailability": "Unavailable", + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..6ddae076c2d2 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "checkFrontDoorNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Network/frontDoors/frontendEndpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailability": "Unavailable", + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorCreate.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorCreate.json new file mode 100644 index 000000000000..5957738fe115 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorCreate.json @@ -0,0 +1,571 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontDoorParameters": { + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateLinkApprovalMessage": "Please approve this request to connect to the Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Provisioning", + "cname": "frontDoor1.azurefd.net" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Provisioning", + "cname": "frontDoor1.azurefd.net" + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDelete.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDelete.json new file mode 100644 index 000000000000..cc564a2f408e --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDisableHttps.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDisableHttps.json new file mode 100644 index 000000000000..3fea12eda99c --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorDisableHttps.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorEnableHttps.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorEnableHttps.json new file mode 100644 index 000000000000..a965ad10d819 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorEnableHttps.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1", + "customHttpsConfiguration": { + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "minimumTlsVersion": "1.0", + "keyVaultCertificateSourceParameters": { + "vault": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.KeyVault/vaults/vault1" + }, + "secretName": "secret1", + "secretVersion": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointGet.json new file mode 100644 index 000000000000..bdc67b0f3404 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointList.json new file mode 100644 index 000000000000..dda4a2e5d4ab --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorFrontendEndpointList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorGet.json new file mode 100644 index 000000000000..64b071212fd3 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorGet.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorList.json new file mode 100644 index 000000000000..f52102336d9c --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorList.json @@ -0,0 +1,218 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorListAll.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorListAll.json new file mode 100644 index 000000000000..418a3edbe906 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorListAll.json @@ -0,0 +1,216 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled" + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorPurgeContent.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorPurgeContent.json new file mode 100644 index 000000000000..5c1826bc06d6 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorPurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "contentFilePaths": { + "contentPaths": [ + "/pictures.aspx", + "/pictures/*" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineCreate.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineCreate.json new file mode 100644 index 000000000000..b5aaea3d3d0b --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineCreate.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1", + "rulesEngineParameters": { + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineDelete.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineDelete.json new file mode 100644 index 000000000000..ada2d76a427e --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineGet.json new file mode 100644 index 000000000000..8bf5357d954c --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineGet.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineList.json new file mode 100644 index 000000000000..367abe9f1440 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorRulesEngineList.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorValidateCustomDomain.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorValidateCustomDomain.json new file mode 100644 index 000000000000..e1146b680bc3 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/examples/FrontdoorValidateCustomDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.json new file mode 100644 index 000000000000..433fd6e7fc6c --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.json @@ -0,0 +1,2348 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-05-01", + "title": "FrontDoorManagementClient", + "description": "Use these APIs to manage Azure Front Door resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "host": "management.azure.com", + "schemes": [ + "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": { + "/providers/Microsoft.Network/checkFrontDoorNameAvailability": { + "post": { + "tags": [ + "CheckFrontDoorNameAvailability" + ], + "description": "Check the availability of a Front Door resource name.", + "operationId": "FrontDoorNameAvailability_Check", + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckFrontdoorNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkFrontDoorNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/checkFrontDoorNameAvailability": { + "post": { + "tags": [ + "CheckFrontDoorNameAvailabilityWithSubscription" + ], + "description": "Check the availability of a Front Door subdomain.", + "operationId": "FrontDoorNameAvailabilityWithSubscription_Check", + "x-ms-examples": { + "CheckNameAvailabilityWithSubscription": { + "$ref": "./examples/CheckFrontdoorNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkFrontDoorNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoors": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Front Doors within an Azure subscription.", + "operationId": "FrontDoors_List", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontDoorListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Front Doors": { + "$ref": "./examples/FrontdoorListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Front Doors within a resource group under a subscription.", + "operationId": "FrontDoors_ListByResourceGroup", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontDoorListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Front Doors in a Resource Group": { + "$ref": "./examples/FrontdoorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Front Door with the specified Front Door name under the specified subscription and resource group.", + "operationId": "FrontDoors_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Front Door": { + "$ref": "./examples/FrontdoorGet.json" + } + } + }, + "put": { + "tags": [ + "FrontDoors" + ], + "description": "Creates a new Front Door with a Front Door name under the specified subscription and resource group.", + "operationId": "FrontDoors_CreateOrUpdate", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "description": "Front Door properties needed to create a new Front Door.", + "in": "body", + "name": "frontDoorParameters", + "required": true, + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update specific Front Door": { + "$ref": "./examples/FrontdoorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "FrontDoors" + ], + "description": "Deletes an existing Front Door with the specified parameters.", + "operationId": "FrontDoors_Delete", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Front Door": { + "$ref": "./examples/FrontdoorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the frontend endpoints within a Front Door.", + "operationId": "FrontendEndpoints_ListByFrontDoor", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontendEndpointsListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Frontend endpoints in a Front Door": { + "$ref": "./examples/FrontdoorFrontendEndpointList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Frontend endpoint with the specified name within the specified Front Door.", + "operationId": "FrontendEndpoints_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FrontendEndpoint" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Frontend Endpoint": { + "$ref": "./examples/FrontdoorFrontendEndpointGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/purge": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Removes a content from Front Door.", + "operationId": "Endpoints_PurgeContent", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "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": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Purge content from Front Door": { + "$ref": "./examples/FrontdoorPurgeContent.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/enableHttps": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Enables a frontendEndpoint for HTTPS traffic", + "operationId": "FrontendEndpoints_EnableHttps", + "x-ms-examples": { + "FrontendEndpoints_EnableHttps": { + "$ref": "./examples/FrontdoorEnableHttps.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "name": "customHttpsConfiguration", + "in": "body", + "description": "The configuration specifying how to enable HTTPS", + "required": true, + "schema": { + "$ref": "#/definitions/CustomHttpsConfiguration" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/disableHttps": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Disables a frontendEndpoint for HTTPS traffic", + "operationId": "FrontendEndpoints_DisableHttps", + "x-ms-examples": { + "FrontendEndpoints_DisableHttps": { + "$ref": "./examples/FrontdoorDisableHttps.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/validateCustomDomain": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct Front Door endpoint in DNS.", + "operationId": "FrontDoors_ValidateCustomDomain", + "x-ms-examples": { + "FrontDoor_ValidateCustomDomain": { + "$ref": "./examples/FrontdoorValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateCustomDomainInput" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Rules Engine Configurations within a Front Door.", + "operationId": "RulesEngines_ListByFrontDoor", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RulesEngineListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Rules Engine Configurations in a Front Door": { + "$ref": "./examples/FrontdoorRulesEngineList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Rules Engine Configuration with the specified name within the specified Front Door.", + "operationId": "RulesEngines_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineGet.json" + } + } + }, + "put": { + "tags": [ + "FrontDoors" + ], + "description": "Creates a new Rules Engine Configuration with the specified name within the specified Front Door.", + "operationId": "RulesEngines_CreateOrUpdate", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "description": "Rules Engine Configuration properties needed to create a new Rules Engine Configuration.", + "in": "body", + "name": "rulesEngineParameters", + "required": true, + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a specific Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "FrontDoors" + ], + "description": "Deletes an existing Rules Engine Configuration with the specified parameters.", + "operationId": "RulesEngines_Delete", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "FrontDoor": { + "properties": { + "properties": { + "description": "Properties of the Front Door Load Balancer", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontDoorProperties" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there." + }, + "FrontDoorUpdateParameters": { + "description": "The properties needed to update a Front Door", + "properties": { + "friendlyName": { + "description": "A friendly name for the frontDoor", + "type": "string" + }, + "routingRules": { + "description": "Routing rules associated with this Front Door.", + "type": "array", + "items": { + "description": "A routing rule", + "$ref": "#/definitions/RoutingRule" + } + }, + "loadBalancingSettings": { + "description": "Load balancing settings associated with this Front Door instance.", + "type": "array", + "items": { + "description": "A load balancing settings", + "$ref": "#/definitions/LoadBalancingSettingsModel" + } + }, + "healthProbeSettings": { + "description": "Health probe settings associated with this Front Door instance.", + "type": "array", + "items": { + "description": "A health probe settings", + "$ref": "#/definitions/HealthProbeSettingsModel" + } + }, + "backendPools": { + "description": "Backend pools available to routing rules.", + "type": "array", + "items": { + "description": "A backend pool", + "$ref": "#/definitions/BackendPool" + } + }, + "frontendEndpoints": { + "description": "Frontend endpoints available to routing rules.", + "type": "array", + "items": { + "description": "A frontend endpoint", + "$ref": "#/definitions/FrontendEndpoint" + } + }, + "backendPoolsSettings": { + "description": "Settings for all backendPools", + "$ref": "#/definitions/BackendPoolsSettings" + }, + "enabledState": { + "description": "Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorEnabledState", + "modelAsString": true + } + } + } + }, + "FrontDoorProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "allOf": [ + { + "$ref": "#/definitions/FrontDoorUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the Front Door.", + "$ref": "#/definitions/ResourceState" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the Front Door." + }, + "cname": { + "readOnly": true, + "type": "string", + "description": "The host that each frontendEndpoint must CNAME to." + }, + "frontdoorId": { + "readOnly": true, + "type": "string", + "description": "The Id of the frontdoor." + }, + "rulesEngines": { + "readOnly": true, + "description": "Rules Engine Configurations available to routing rules.", + "type": "array", + "items": { + "description": "A rules engine configuration.", + "$ref": "#/definitions/RulesEngine" + } + } + } + }, + "FrontDoorListResult": { + "description": "Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/FrontDoor" + }, + "description": "List of Front Doors within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of Front Door objects if there are any." + } + } + }, + "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" + } + } + } + }, + "RoutingRule": { + "properties": { + "properties": { + "description": "Properties of the Front Door Routing Rule", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutingRuleProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A routing rule represents a specification for traffic to treat and where to send it, along with health probe information." + }, + "RoutingRuleProperties": { + "description": "The JSON object that contains the properties required to create a routing rule.", + "allOf": [ + { + "$ref": "#/definitions/RoutingRuleUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "RoutingRuleListResult": { + "description": "Result of the request to list Routing Rules. It contains a list of Routing Rule objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RoutingRule" + }, + "description": "List of Routing Rules within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of RoutingRule objects if there are any." + } + } + }, + "RoutingRuleUpdateParameters": { + "description": "Routing rules to apply to an endpoint", + "type": "object", + "properties": { + "frontendEndpoints": { + "description": "Frontend endpoints associated with this rule", + "type": "array", + "items": { + "description": "A reference to a frontend endpoint", + "$ref": "./network.json#/definitions/SubResource" + } + }, + "acceptedProtocols": { + "description": "Protocol schemes to match for this rule", + "type": "array", + "items": { + "type": "string", + "description": "Accepted protocol schemes.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FrontDoorProtocol", + "modelAsString": true + } + } + }, + "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." + } + }, + "enabledState": { + "description": "Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "routingRuleEnabledState", + "modelAsString": true + } + }, + "routeConfiguration": { + "description": "A reference to the routing configuration.", + "$ref": "#/definitions/RouteConfiguration" + }, + "rulesEngine": { + "description": "A reference to a specific Rules Engine Configuration to apply to this route.", + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "RouteConfiguration": { + "discriminator": "@odata.type", + "description": "Base class for all types of Route.", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ] + }, + "ForwardingConfiguration": { + "description": "Describes Forwarding Route.", + "x-ms-discriminator-value": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "properties": { + "customForwardingPath": { + "description": "A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path.", + "type": "string" + }, + "forwardingProtocol": { + "description": "Protocol this rule will use when forwarding traffic to backends.", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "FrontDoorForwardingProtocol", + "modelAsString": true + } + }, + "cacheConfiguration": { + "description": "The caching configuration associated with this rule.", + "$ref": "#/definitions/CacheConfiguration" + }, + "backendPool": { + "description": "A reference to the BackendPool which this rule routes to.", + "$ref": "./network.json#/definitions/SubResource" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RouteConfiguration" + } + ] + }, + "RedirectConfiguration": { + "description": "Describes Redirect Route.", + "x-ms-discriminator-value": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "properties": { + "redirectType": { + "description": "The redirect type the rule will use when redirecting traffic.", + "type": "string", + "enum": [ + "Moved", + "Found", + "TemporaryRedirect", + "PermanentRedirect" + ], + "x-ms-enum": { + "name": "FrontDoorRedirectType", + "modelAsString": true + } + }, + "redirectProtocol": { + "description": "The protocol of the destination to where the traffic is redirected", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "FrontDoorRedirectProtocol", + "modelAsString": true + } + }, + "customHost": { + "type": "string", + "description": "Host to redirect. Leave empty to use the incoming host as the destination host." + }, + "customPath": { + "type": "string", + "description": "The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path." + }, + "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 #." + }, + "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. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &.", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RouteConfiguration" + } + ] + }, + "Backend": { + "description": "Backend address of a frontDoor load balancer.", + "type": "object", + "properties": { + "address": { + "description": "Location of the backend (IP address or FQDN)", + "type": "string" + }, + "privateLinkAlias": { + "description": "The Alias of the Private Link resource. Populating this optional field indicates that this backend 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" + }, + "privateEndpointStatus": { + "description": "The Approval status for the connection to the Private Link", + "type": "string", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointStatus", + "modelAsString": true + } + }, + "privateLinkApprovalMessage": { + "description": "A custom message to be included in the approval request to connect to the Private Link", + "type": "string" + }, + "httpPort": { + "description": "The HTTP TCP port number. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The HTTPS TCP port number. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "enabledState": { + "description": "Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "backendEnabledState", + "modelAsString": true + } + }, + "priority": { + "description": "Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy.", + "type": "integer", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of this endpoint for load balancing purposes.", + "type": "integer", + "maximum": 1000, + "minimum": 1 + }, + "backendHostHeader": { + "description": "The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host.", + "type": "string" + } + } + }, + "LoadBalancingSettingsModel": { + "properties": { + "properties": { + "description": "Properties of the load balancing settings", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingSettingsProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Load balancing settings for a backend pool" + }, + "LoadBalancingSettingsProperties": { + "description": "The JSON object that contains the properties required to create load balancing settings", + "allOf": [ + { + "$ref": "#/definitions/LoadBalancingSettingsUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "LoadBalancingSettingsListResult": { + "description": "Result of the request to list load balancing settings. It contains a list of load balancing settings objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/LoadBalancingSettingsModel" + }, + "description": "List of Backend Pools within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of LoadBalancingSettings objects if there are any." + } + } + }, + "LoadBalancingSettingsUpdateParameters": { + "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" + }, + "successfulSamplesRequired": { + "description": "The number of samples within the sample period that must succeed", + "type": "integer" + }, + "additionalLatencyMilliseconds": { + "description": "The additional latency in milliseconds for probes to fall into the lowest latency bucket", + "type": "integer" + } + } + }, + "HealthProbeSettingsModel": { + "properties": { + "properties": { + "description": "Properties of the health probe settings", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HealthProbeSettingsProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Load balancing settings for a backend pool" + }, + "HealthProbeSettingsProperties": { + "description": "The JSON object that contains the properties required to create a health probe settings.", + "allOf": [ + { + "$ref": "#/definitions/HealthProbeSettingsUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "HealthProbeSettingsListResult": { + "description": "Result of the request to list HealthProbeSettings. It contains a list of HealthProbeSettings objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/HealthProbeSettingsModel" + }, + "description": "List of HealthProbeSettings within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of HealthProbeSettings objects if there are any." + } + } + }, + "HealthProbeSettingsUpdateParameters": { + "description": "L7 health probe settings for a backend pool", + "type": "object", + "properties": { + "path": { + "description": "The path to use for the health probe. Default is /", + "type": "string" + }, + "protocol": { + "description": "Protocol scheme to use for this probe", + "type": "string", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FrontDoorProtocol", + "modelAsString": true + } + }, + "intervalInSeconds": { + "description": "The number of seconds between health probes.", + "type": "integer" + }, + "healthProbeMethod": { + "description": "Configures which HTTP method to use to probe the backends defined under backendPools.", + "type": "string", + "enum": [ + "GET", + "HEAD" + ], + "x-ms-enum": { + "name": "FrontDoorHealthProbeMethod", + "modelAsString": true + }, + "default": "HEAD" + }, + "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": "HealthProbeEnabled", + "modelAsString": true + } + } + } + }, + "BackendPool": { + "properties": { + "properties": { + "description": "Properties of the Front Door Backend Pool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendPoolProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A backend pool is a collection of backends that can be routed to." + }, + "BackendPoolUpdateParameters": { + "description": "A collection of backends that can be routed to.", + "type": "object", + "properties": { + "backends": { + "description": "The set of backends for this pool", + "type": "array", + "items": { + "$ref": "#/definitions/Backend" + } + }, + "loadBalancingSettings": { + "description": "Load balancing settings for a backend pool", + "$ref": "./network.json#/definitions/SubResource" + }, + "healthProbeSettings": { + "description": "L7 health probe settings for a backend pool", + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "BackendPoolProperties": { + "description": "The JSON object that contains the properties required to create a Backend Pool.", + "allOf": [ + { + "$ref": "#/definitions/BackendPoolUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "BackendPoolListResult": { + "description": "Result of the request to list Backend Pools. It contains a list of Backend Pools objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/BackendPool" + }, + "description": "List of Backend Pools within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of BackendPool objects if there are any." + } + } + }, + "CacheConfiguration": { + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "properties": { + "queryParameterStripDirective": { + "description": "Treatment of URL query terms when forming the cache key.", + "enum": [ + "StripNone", + "StripAll", + "StripOnly", + "StripAllExcept" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorQuery", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string" + }, + "dynamicCompression": { + "description": "Whether to use dynamic compression for cached content", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DynamicCompressionEnabled", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requires the value to be no more than a year", + "type": "string", + "format": "duration" + } + } + }, + "KeyVaultCertificateSourceParameters": { + "description": "Parameters required for bring-your-own-certification via Key Vault", + "type": "object", + "properties": { + "vault": { + "description": "The Key Vault containing the SSL certificate", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + }, + "secretName": { + "type": "string", + "description": "The name of the Key Vault secret representing the full certificate PFX" + }, + "secretVersion": { + "type": "string", + "description": "The version of the Key Vault secret representing the full certificate PFX" + } + } + }, + "FrontDoorCertificateSourceParameters": { + "description": "Parameters required for enabling SSL with Front Door-managed certificates", + "type": "object", + "properties": { + "certificateType": { + "description": "Defines the type of the certificate used for secure connections to a frontendEndpoint", + "enum": [ + "Dedicated" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorCertificateType", + "modelAsString": true + } + } + } + }, + "CustomHttpsConfiguration": { + "description": "Https settings for a domain", + "type": "object", + "required": [ + "minimumTlsVersion", + "certificateSource", + "protocolType" + ], + "properties": { + "certificateSource": { + "description": "Defines the source of the SSL certificate", + "enum": [ + "AzureKeyVault", + "FrontDoor" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorCertificateSource", + "modelAsString": true + } + }, + "protocolType": { + "description": "Defines the TLS extension protocol that is used for secure delivery", + "enum": [ + "ServerNameIndication" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorTlsProtocolType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "The minimum TLS version required from the clients to establish an SSL handshake with Front Door.", + "enum": [ + "1.0", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "MinimumTLSVersion", + "modelAsString": true + } + }, + "keyVaultCertificateSourceParameters": { + "description": "KeyVault certificate source parameters (if certificateSource=AzureKeyVault)", + "x-ms-client-flatten": true, + "$ref": "#/definitions/KeyVaultCertificateSourceParameters" + }, + "frontDoorCertificateSourceParameters": { + "description": "Parameters required for enabling SSL with Front Door-managed certificates (if certificateSource=FrontDoor)", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontDoorCertificateSourceParameters" + } + } + }, + "FrontendEndpoint": { + "properties": { + "properties": { + "description": "Properties of the Frontend endpoint", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendEndpointProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A frontend endpoint used for routing." + }, + "FrontendEndpointProperties": { + "description": "The JSON object that contains the properties required to create a frontend endpoint.", + "allOf": [ + { + "$ref": "#/definitions/FrontendEndpointUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + }, + "customHttpsProvisioningState": { + "description": "Provisioning status of Custom Https of the frontendEndpoint.", + "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 + } + }, + "customHttpsConfiguration": { + "description": "The configuration specifying how to enable HTTPS", + "readOnly": true, + "$ref": "#/definitions/CustomHttpsConfiguration" + } + } + }, + "FrontendEndpointUpdateParameters": { + "description": "Frontend endpoint used in routing rule", + "type": "object", + "properties": { + "hostName": { + "description": "The host name of the frontendEndpoint. Must be a domain name.", + "type": "string" + }, + "sessionAffinityEnabledState": { + "description": "Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SessionAffinityEnabledState", + "modelAsString": true + } + }, + "sessionAffinityTtlSeconds": { + "description": "UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable.", + "type": "integer" + }, + "webApplicationFirewallPolicyLink": { + "description": "Defines the Web Application Firewall policy for each host (if applicable)", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + } + } + }, + "FrontendEndpointsListResult": { + "description": "Result of the request to list frontend endpoints. It contains a list of Frontend endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/FrontendEndpoint" + }, + "description": "List of Frontend endpoints within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of frontend endpoints if there are any." + } + } + }, + "BackendPoolsSettings": { + "description": "Settings that apply to all backend pools.", + "type": "object", + "properties": { + "enforceCertificateNameCheck": { + "description": "Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "enforceCertificateNameCheckEnabledState", + "modelAsString": true + }, + "default": "Enabled" + }, + "sendRecvTimeoutSeconds": { + "description": "Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns.", + "type": "integer", + "minimum": 16, + "exclusiveMinimum": false + } + } + }, + "HeaderAction": { + "description": "An action that can manipulate an http header.", + "required": [ + "headerActionType", + "headerName" + ], + "properties": { + "headerActionType": { + "description": "Which type of manipulation to apply to the header.", + "type": "string", + "enum": [ + "Append", + "Delete", + "Overwrite" + ], + "x-ms-enum": { + "name": "headerActionType", + "modelAsString": true + } + }, + "headerName": { + "description": "The name of the header this action will apply to.", + "type": "string" + }, + "value": { + "description": "The value to update the given header name with. This value is not used if the actionType is Delete.", + "type": "string" + } + } + }, + "RulesEngineMatchCondition": { + "description": "Define a match condition", + "required": [ + "rulesEngineMatchVariable", + "rulesEngineOperator", + "rulesEngineMatchValue" + ], + "properties": { + "rulesEngineMatchVariable": { + "description": "Match Variable", + "type": "string", + "enum": [ + "IsMobile", + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestPath", + "RequestFilename", + "RequestFilenameExtension", + "RequestHeader", + "RequestBody", + "RequestScheme" + ], + "x-ms-enum": { + "name": "RulesEngineMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Name of selector in RequestHeader or RequestBody to be matched", + "type": "string" + }, + "rulesEngineOperator": { + "description": "Describes operator to apply to the match condition.", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith" + ], + "x-ms-enum": { + "name": "RulesEngineOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "rulesEngineMatchValue": { + "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" + } + } + } + }, + "ResourceState": { + "title": "Resource status of the Front Door or Front Door SubResource.", + "readOnly": true, + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorResourceState", + "modelAsString": true + } + }, + "RulesEngineAction": { + "description": "One or more actions that will execute, modifying the request and/or response.", + "properties": { + "requestHeaderActions": { + "description": "A list of header actions to apply from the request from AFD to the origin.", + "type": "array", + "items": { + "$ref": "#/definitions/HeaderAction" + } + }, + "responseHeaderActions": { + "description": "A list of header actions to apply from the response from AFD to the client.", + "type": "array", + "items": { + "$ref": "#/definitions/HeaderAction" + } + }, + "routeConfigurationOverride": { + "description": "Override the route configuration.", + "$ref": "#/definitions/RouteConfiguration" + } + } + }, + "RulesEngine": { + "description": "A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response.", + "properties": { + "properties": { + "description": "Properties of the Rules Engine Configuration.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RulesEngineProperties" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + } + }, + "x-ms-azure-resource": true + }, + "RulesEngineListResult": { + "description": "Result of the request to list Rules Engine Configurations. It contains a list of RulesEngine objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RulesEngine" + }, + "description": "List of rulesEngines within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of RulesEngine objects if there are any." + } + } + }, + "RulesEngineProperties": { + "description": "The JSON object that contains the properties required to create a Rules Engine Configuration.", + "allOf": [ + { + "$ref": "#/definitions/RulesEngineUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "RulesEngineRule": { + "description": "Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation.", + "required": [ + "action", + "name", + "priority" + ], + "properties": { + "name": { + "description": "A name to refer to this specific rule.", + "type": "string" + }, + "priority": { + "description": "A priority assigned to this rule. ", + "type": "integer" + }, + "action": { + "description": "Actions to perform on the request and response if all of the match conditions are met.", + "$ref": "#/definitions/RulesEngineAction" + }, + "matchConditions": { + "description": "A list of match conditions that must meet in order for the actions of this rule to run. Having no match conditions means the actions will always run.", + "type": "array", + "items": { + "$ref": "#/definitions/RulesEngineMatchCondition" + } + }, + "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 + } + } + } + }, + "RulesEngineUpdateParameters": { + "description": "Rules Engine Configuration to apply to a Routing Rule.", + "type": "object", + "properties": { + "rules": { + "description": "A list of rules that define a particular Rules Engine Configuration.", + "type": "array", + "items": { + "$ref": "#/definitions/RulesEngineRule" + } + } + } + }, + "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 + } + }, + "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" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "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": { + "nameAvailability": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "enum": [ + "Available", + "Unavailable" + ], + "type": "string", + "x-ms-enum": { + "name": "Availability", + "modelAsString": true + } + }, + "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" + } + } + }, + "ResourceType": { + "description": "Type of Front Door resource used in CheckNameAvailability.", + "enum": [ + "Microsoft.Network/frontDoors", + "Microsoft.Network/frontDoors/frontendEndpoints" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + } + }, + "parameters": { + "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." + }, + "frontDoorNameParameter": { + "name": "frontDoorName", + "in": "path", + "required": true, + "type": "string", + "x-new-pattern": "^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$", + "pattern": "^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$", + "minLength": 5, + "maxLength": 64, + "x-ms-parameter-location": "method", + "description": "Name of the Front Door which is globally unique." + }, + "routingRuleNameParameter": { + "name": "routingRuleName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Routing Rule which is unique within the Front Door." + }, + "healthProbeSettingsNameParameter": { + "name": "healthProbeSettingsName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the health probe settings which is unique within the Front Door." + }, + "loadBalancingSettingsNameParameter": { + "name": "loadBalancingSettingsName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the load balancing settings which is unique within the Front Door." + }, + "backendPoolNameParameter": { + "name": "backendPoolName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Backend Pool which is unique within the Front Door." + }, + "frontendEndpointNameParameter": { + "name": "frontendEndpointName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 255, + "x-ms-parameter-location": "method", + "description": "Name of the Frontend endpoint which is unique within the Front Door." + }, + "rulesEngineNameParameter": { + "name": "rulesEngineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Rules Engine which is unique within the Front Door." + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.specs.md b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.specs.md new file mode 100644 index 000000000000..cdb350ea928f --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/frontdoor.specs.md @@ -0,0 +1,21 @@ +# General Availability API specification for FrontDoor Azure Resource +> see https://aka.ms/autorest + +This directory contains the schema specifications for the Front Door Azure Resource. The API will be added to support Front Door on Azure Resource Manager. + +The base swagger document for new features for Frontdoor: [frontdoor.json](./frontdoor.json) + +## Overview +The Front Door ARM API supports CRUD functionality on four objects in the resource schema: +`FrontDoor`, a collection of child objects `BackendPool`, a collection of child objects `FrontendEndpoints` and the primary child object `RoutingRule`, which each reference one `BackendPool` and `FrontendEndpoints` . Each routing rule encapsulates +all of the settings needed to configure the AzureFD backend infrastructure to set up a +reverse-proxy route to accelerate traffic, detect backend availability, +and balance between healthy members of the pool. + +## Generated object-model UML diagram +This diagram is generated from the swagger spec by "[`oav`](https://github.com/Azure/oav) `generate-uml`" +![Generated UML snapshot](./assets/frontdoor.svg) + +## Swagger and JSON specification reference and tools +- [OpenAPI specification v2.0 (aka Swagger 2.0)](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md) +- [Swagger.io online editor](https://editor.swagger.io/) diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/network.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/network.json new file mode 100644 index 000000000000..ab5d7f5a663a --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-05-01/network.json @@ -0,0 +1,167 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-05-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string" + }, + "target": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "Error": { + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "innerError": { + "type": "string" + } + } + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation. Possible values are: 'InProgress', 'Succeeded', and 'Failed'.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/frontdoor/resource-manager/readme.go.md b/specification/frontdoor/resource-manager/readme.go.md index 3c365d88b43e..7922be870998 100644 --- a/specification/frontdoor/resource-manager/readme.go.md +++ b/specification/frontdoor/resource-manager/readme.go.md @@ -19,8 +19,18 @@ batch: - tag: package-2019-04 - tag: package-2019-05 - tag: package-2020-01 + - tag: package-2020-05 ``` +### Tag: package-2020-05 and go + +These settings apply only when `--tag=package-2020-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-05' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-05-01/$(namespace) +``` + ### Tag: package-2020-01 and go These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. diff --git a/specification/frontdoor/resource-manager/readme.md b/specification/frontdoor/resource-manager/readme.md index fe51a0221451..2728dffd936e 100644 --- a/specification/frontdoor/resource-manager/readme.md +++ b/specification/frontdoor/resource-manager/readme.md @@ -28,9 +28,27 @@ These are the global settings for the FrontDoor API. title: FrontDoorManagementClient description: FrontDoor Client openapi-type: arm -tag: package-2020-01 +tag: package-2020-05 ``` +### Tag: package-2020-05 + +These settings apply only when `--tag=package-2020-05` is specified on the command line. + +``` yaml $(tag) == 'package-2020-05' +input-file: +- Microsoft.Network/stable/2020-05-01/network.json +- Microsoft.Network/stable/2019-11-01/networkexperiment.json +- Microsoft.Network/stable/2020-05-01/frontdoor.json +- Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json +directive: + - where: + - $.paths + suppress: + - OperationsAPIImplementation +``` + + ### Tag: package-2020-01 These settings apply only when `--tag=package-2020-01` is specified on the command line. @@ -233,10 +251,12 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Network/stable/2020-01-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/network.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkexperiment.json - - $(this-folder)/Microsoft.Network/stable/2020-01-01/frontdoor.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/frontdoor.json - $(this-folder)/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json + - $(this-folder)/Microsoft.Network/stable/2020-01-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-01-01/frontdoor.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/network.json - $(this-folder)/Microsoft.Network/stable/2019-05-01/frontdoor.json - $(this-folder)/Microsoft.Network/stable/2019-05-01/network.json diff --git a/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json b/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json index 1446c44d6531..fb3c107c9f79 100644 --- a/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json +++ b/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json @@ -1696,6 +1696,13 @@ "type": "string", "description": "The filter to apply to the operation." }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand value for the operation result." + }, { "$ref": "#/parameters/ApiVersionParameter" }, diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/HanaOperations_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/HanaOperations_List.json new file mode 100644 index 000000000000..9b59fcbe3c96 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/HanaOperations_List.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "HanaOp1", + "display": { + "provider": "HanaOp1ProviderName", + "resource": "HanaOp1ResourceName", + "operation": "HanaOp1OperationName", + "description": "HanaOp1Description", + "origin": "HanaOp1Origin" + } + }, + { + "name": "HanaOp2", + "display": { + "provider": "HanaOp2ProviderName", + "resource": "HanaOp2ResourceName", + "operation": "HanaOp2OperationName", + "description": "HanaOp2Description", + "origin": "HanaOp2Origin" + } + } + ] + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json new file mode 100644 index 000000000000..3fcdd421d459 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance", + "providerInstanceParameter": { + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\",\"dbPassword\":\"PASSWORD\"}", + "metadata": "{\"key\":\"value\"}" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}", + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json new file mode 100644 index 000000000000..1e0a487fc052 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json new file mode 100644 index 000000000000..5193d6e9aaa8 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json new file mode 100644 index 000000000000..4a01efc99c4d --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance1", + "name": "myProviderInstance1", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance2", + "name": "myProviderInstance2", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.11\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + ] + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json new file mode 100644 index 000000000000..4d22ed6eca0c --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "sapMonitorParameter": { + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance", + "name": "myHanaInstance", + "type": "Microsoft.HanaOnAzure/hanaInstances", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance", + "name": "myHanaInstance", + "type": "Microsoft.HanaOnAzure/hanaInstances", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json new file mode 100644 index 000000000000..94841d22526a --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json new file mode 100644 index 000000000000..2635740401b3 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json new file mode 100644 index 000000000000..10735125135e --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor1", + "name": "mySapMonitor1", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor2", + "name": "mySapMonitor2", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json new file mode 100644 index 000000000000..14f23ba45375 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "tagsParameter": { + "tags": { + "testkey": "testvalue" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "testkey": "testvalue" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json new file mode 100644 index 000000000000..dfbb3fe1a0c2 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "tagsParameter": { + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": {}, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json new file mode 100644 index 000000000000..a1567dab1709 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json @@ -0,0 +1,866 @@ +{ + "swagger": "2.0", + "info": { + "title": "HanaManagementClient", + "description": "The SAP HANA on Azure Management Client.", + "version": "2020-02-07-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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": { + "/providers/Microsoft.HanaOnAzure/operations": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "Operations_List", + "description": "Gets a list of SAP HANA management operations.", + "x-ms-examples": { + "List all HANA management operations supported by HANA RP": { + "$ref": "./examples/HanaOperations_List.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HanaOnAzure/sapMonitors": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_List", + "summary": "Gets a list of SAP monitors in the specified subscription.", + "description": "Gets a list of SAP monitors in the specified subscription. The operations returns various properties of each SAP monitor.", + "x-ms-examples": { + "List all SAP Monitors in a subscription": { + "$ref": "./examples/SapMonitors_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Get", + "summary": "Gets properties of a SAP monitor.", + "description": "Gets properties of a SAP monitor for the specified subscription, resource group, and resource name.", + "x-ms-examples": { + "Get properties of a SAP monitor": { + "$ref": "./examples/SapMonitors_Get.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Create", + "x-ms-long-running-operation": true, + "summary": "Creates a SAP monitor.", + "description": "Creates a SAP monitor for the specified subscription, resource group, and resource name.", + "x-ms-examples": { + "Create a SAP Monitor": { + "$ref": "./examples/SapMonitors_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorParameter" + } + ], + "responses": { + "200": { + "description": "Created SapMonitor", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "201": { + "description": "Creating SapMonitor", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Delete", + "x-ms-long-running-operation": true, + "summary": "Deletes a SAP monitor.", + "description": "Deletes a SAP monitor with the specified subscription, resource group, and monitor name.", + "x-ms-examples": { + "Deletes a SAP monitor": { + "$ref": "./examples/SapMonitors_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "Deleted SapMonitor" + }, + "202": { + "description": "Deleting SapMonitor" + }, + "204": { + "description": "No SapMonitor to delete" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Update", + "summary": "Patches the Tags field of a SAP monitor.", + "description": "Patches the Tags field of a SAP monitor for the specified subscription, resource group, and monitor name.", + "x-ms-examples": { + "Update Tags field of a SAP monitor": { + "$ref": "./examples/SapMonitors_PatchTags.json" + }, + "Delete Tags field of a SAP monitor": { + "$ref": "./examples/SapMonitors_PatchTags_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}/providerInstances": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_List", + "summary": "Gets a list of provider instances in the specified SAP monitor.", + "description": "Gets a list of provider instances in the specified SAP monitor. The operations returns various properties of each provider instances.", + "x-ms-examples": { + "List all SAP Monitors in a subscription": { + "$ref": "./examples/ProviderInstances_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProviderInstanceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}/providerInstances/{providerInstanceName}": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Get", + "summary": "Gets properties of a provider instance.", + "description": "Gets properties of a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Get properties of a SAP monitor": { + "$ref": "./examples/ProviderInstances_Get.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Create", + "x-ms-long-running-operation": true, + "summary": "Creates a provider instance.", + "description": "Creates a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Create a SAP Monitor": { + "$ref": "./examples/ProviderInstances_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceParameter" + } + ], + "responses": { + "200": { + "description": "Created provider instance", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "201": { + "description": "Creating provider instance", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Delete", + "x-ms-long-running-operation": true, + "summary": "Deletes a provider instance.", + "description": "Deletes a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Deletes a SAP monitor": { + "$ref": "./examples/ProviderInstances_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + } + ], + "responses": { + "200": { + "description": "Deleted provider instance" + }, + "202": { + "description": "Deleting provider instance" + }, + "204": { + "description": "No provider instance to delete" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{resourceName}" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource. Ex- Microsoft.Network/trafficManagerProfiles." + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The Azure Region where the resource lives" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "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" + } + ] + }, + "OperationList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of HANA operations" + } + }, + "description": "List of HANA operations" + }, + "Operation": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the operation being performed on this particular object. This name should match the action name that appears in RBAC / the event service." + }, + "display": { + "$ref": "#/definitions/Display", + "description": "Displayed HANA operation information" + } + }, + "description": "HANA operation information" + }, + "Display": { + "type": "object", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "The localized friendly form of the resource provider name. This form is also expected to include the publisher/company responsible. Use Title Casing. Begin with \"Microsoft\" for 1st party services." + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "The localized friendly form of the resource type related to this action/operation. This form should match the public documentation for the resource provider. Use Title Casing. For examples, refer to the “name” section." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "The localized friendly name for the operation as shown to the user. This name should be concise (to fit in drop downs), but clear (self-documenting). Use Title Casing and include the entity/resource to which it applies." + }, + "description": { + "readOnly": true, + "type": "string", + "description": "The localized friendly description for the operation as shown to the user. This description should be thorough, yet concise. It will be used in tool-tips and detailed views." + }, + "origin": { + "readOnly": true, + "type": "string", + "description": "The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX. Default value is 'user,system'" + } + }, + "description": "Detailed HANA operation information" + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "Tags": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags field of the resource." + } + }, + "description": "Tags field of the resource." + }, + "SapMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SapMonitor" + }, + "description": "The list of SAP monitors." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of SAP monitors." + } + }, + "description": "The response from the List SAP monitors operation." + }, + "SapMonitor": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapMonitorProperties", + "description": "SAP monitor properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "SAP monitor info on Azure (ARM properties and SAP monitor properties)" + }, + "SapMonitorProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ], + "x-ms-enum": { + "name": "HanaProvisioningStatesEnum", + "modelAsString": true + }, + "description": "State of provisioning of the HanaInstance" + }, + "managedResourceGroupName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource group the SAP Monitor resources get deployed into." + }, + "logAnalyticsWorkspaceArmId": { + "type": "string", + "description": "The ARM ID of the Log Analytics Workspace that is used for monitoring" + }, + "enableCustomerAnalytics": { + "type": "boolean", + "description": "The value indicating whether to send analytics to Microsoft" + }, + "logAnalyticsWorkspaceId": { + "type": "string", + "description": "The workspace ID of the log analytics workspace to be used for monitoring" + }, + "logAnalyticsWorkspaceSharedKey": { + "type": "string", + "description": "The shared key of the log analytics workspace that is used for monitoring" + }, + "sapMonitorCollectorVersion": { + "readOnly": true, + "type": "string", + "description": "The version of the payload running in the Collector VM" + }, + "monitorSubnet": { + "type": "string", + "description": "The subnet which the SAP monitor will be deployed in" + } + }, + "description": "Describes the properties of a SAP monitor." + }, + "ProviderInstanceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderInstance" + }, + "description": "The list of provider instances." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of provider instances." + } + }, + "description": "The response from the List provider instances operation." + }, + "ProviderInstance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProviderInstanceProperties", + "description": "Provider Instance properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "A provider instance associated with a SAP monitor." + }, + "ProviderInstanceProperties": { + "properties": { + "type": { + "type": "string", + "description": "The type of provider instance." + }, + "properties": { + "type": "string", + "description": "A JSON string containing the properties of the provider instance." + }, + "metadata": { + "type": "string", + "description": "A JSON string containing metadata of the provider instance." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ], + "x-ms-enum": { + "name": "HanaProvisioningStatesEnum", + "modelAsString": true + }, + "description": "State of provisioning of the provider instance" + } + }, + "description": "Describes the properties of a provider instance." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription ID which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group.", + "x-ms-parameter-location": "method" + }, + "SapMonitorNameParameter": { + "name": "sapMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the SAP monitor resource.", + "x-ms-parameter-location": "method" + }, + "ProviderInstanceNameParameter": { + "name": "providerInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provider instance.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "TagsParameter": { + "name": "tagsParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Tags" + }, + "description": "Request body that only contains the new Tags field", + "x-ms-parameter-location": "method" + }, + "SapMonitorParameter": { + "name": "sapMonitorParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SapMonitor" + }, + "description": "Request body representing a SAP Monitor", + "x-ms-parameter-location": "method" + }, + "ProviderInstanceParameter": { + "name": "providerInstanceParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProviderInstance" + }, + "description": "Request body representing a provider instance", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hanaonazure/resource-manager/readme.md b/specification/hanaonazure/resource-manager/readme.md index 2faae789bcf4..301fed2c8de8 100644 --- a/specification/hanaonazure/resource-manager/readme.md +++ b/specification/hanaonazure/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the HANA on Azure API. title: HanaManagementClient description: HANA on Azure Client openapi-type: arm -tag: package-2017-11 +tag: package-2020-02-07-preview azure-arm: true ``` @@ -42,6 +42,16 @@ input-file: - Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json ``` +### Tag: package-2020-02-07-preview + +These settings apply only when `--tag=package-2020-02-07-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-07-preview' +input-file: +- Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json +``` + + # Code Generation @@ -112,6 +122,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json + - $(this-folder)/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json ``` diff --git a/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json index fe26f51c7c4b..5d8a4831e40e 100644 --- a/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json +++ b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json @@ -9,6 +9,12 @@ "schemes": [ "https" ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], "security": [ { "azure_auth": [ @@ -28,6 +34,42 @@ } }, "paths": { + "/providers/Microsoft.HardwareSecurityModules/operations": { + "get": { + "tags": [ + "DedicatedHsmOperations" + ], + "operationId": "Operations_List", + "description": "Get a list of Dedicated HSM operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHsmOperationListResult" + } + }, + "default": { + "description": "The error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DedicatedHsmError" + } + } + }, + "x-ms-examples": { + "Get a list of Dedicated HSM operations": { + "$ref": "./examples//DedicatedHsm_OperationsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/{name}": { "put": { "tags": [ @@ -92,13 +134,7 @@ "Create a new or update an existing dedicated HSM": { "$ref": "./examples//DedicatedHsm_CreateOrUpdate.json" } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } }, "patch": { "tags": [ @@ -158,13 +194,7 @@ "Update an existing dedicated HSM": { "$ref": "./examples//DedicatedHsm_Update.json" } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } }, "delete": { "tags": [ @@ -216,13 +246,7 @@ "Delete a dedicated HSM": { "$ref": "./examples//DedicatedHsm_Delete.json" } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } }, "get": { "tags": [ @@ -270,13 +294,7 @@ "Get a dedicated HSM": { "$ref": "./examples//DedicatedHsm_Get.json" } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs": { @@ -329,13 +347,7 @@ "List dedicated HSM devices in a resource group": { "$ref": "./examples//DedicatedHsm_ListByResourceGroup.json" } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs": { @@ -381,17 +393,58 @@ }, "x-ms-pageable": { "nextLinkName": "nextLink" - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } } } }, "definitions": { + "DedicatedHsmOperation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "The name of the Dedicated HSM Resource Provider Operation.", + "type": "string" + }, + "isDataAction": { + "description": "Gets or sets a value indicating whether it is a data plane action", + "type": "string", + "readOnly": true + }, + "display": { + "properties": { + "provider": { + "description": "The Resource Provider of the operation", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "The object that represents the operation.", + "type": "string" + } + } + } + } + }, + "DedicatedHsmOperationListResult": { + "description": "Result of the request to list Dedicated HSM Provider operations. It contains a list of operations.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHsmOperation" + }, + "description": "List of Dedicated HSM Resource Provider operations." + } + } + }, "ApiEntityReference": { "properties": { "id": { diff --git a/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_CreateOrUpdate.json b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_CreateOrUpdate.json index a2d30ce4c42f..37cbb4664d7b 100644 --- a/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_CreateOrUpdate.json +++ b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_CreateOrUpdate.json @@ -12,7 +12,6 @@ }, "networkInterfaces": [ { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.Network/networkInterfaces/hsm_vnic", "privateIpAddress": "1.0.0.1" } ] diff --git a/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_OperationsList.json b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_OperationsList.json new file mode 100644 index 000000000000..e754e52810d3 --- /dev/null +++ b/specification/hardwaresecuritymodules/resource-manager/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/examples/DedicatedHsm_OperationsList.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2018-10-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hsm1", + "isDataAction": "false", + "display": { + "provider": "Microsoft HardwareSecurityModules", + "resource": "Dedicated HSM", + "operation": "DedicatedHsm_Update", + "description": "Update a dedicated HSM in the specified subscription" + } + } + ] + } + } + } +} diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.az.md b/specification/hardwaresecuritymodules/resource-manager/readme.az.md new file mode 100644 index 000000000000..52ecdaec695c --- /dev/null +++ b/specification/hardwaresecuritymodules/resource-manager/readme.az.md @@ -0,0 +1,12 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: hardware-security-modules + namespace: azure.mgmt.hardwaresecuritymodules + package-name: azure-mgmt-hardwaresecuritymodules +az-output-folder: $(azure-cli-extension-folder)/src/hardware-security-modules +python-sdk-output-folder: "$(az-output-folder)/azext_hardware_security_modules/vendored_sdks/hardwaresecuritymodules" +``` diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.cli.md b/specification/hardwaresecuritymodules/resource-manager/readme.cli.md new file mode 100644 index 000000000000..75ef2e409895 --- /dev/null +++ b/specification/hardwaresecuritymodules/resource-manager/readme.cli.md @@ -0,0 +1,8 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: hardwaresecuritymodules +``` diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.python.md b/specification/hardwaresecuritymodules/resource-manager/readme.python.md new file mode 100644 index 000000000000..3c0fe4da6616 --- /dev/null +++ b/specification/hardwaresecuritymodules/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: azure.mgmt.hardwaresecuritymodules + package-name: azure-mgmt-hardwaresecuritymodules + package-version: 2019-05-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/hardwaresecuritymodules/azure-mgmt-hardwaresecuritymodules/azure/mgmt/hardwaresecuritymodules +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/hardwaresecuritymodules/azure-mgmt-hardwaresecuritymodules +``` \ No newline at end of file diff --git a/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json b/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json index d09da2b64632..b36831cb27a7 100644 --- a/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json +++ b/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json @@ -478,6 +478,17 @@ "format": "int64", "description": "Offset for consumer record", "readOnly": true + }, + "timestamp": { + "type": "integer", + "format": "int64", + "description": "Timestamp for consumer record", + "readOnly": true + }, + "timestampType": { + "type": "string", + "description": "Timestamp type for consumer record such as log append time or create time", + "readOnly": true } }, "description": "List of consumer records" diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetClusterVirtualMachines.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetClusterVirtualMachines.json new file mode 100644 index 000000000000..ef9bdd0d2d1e --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/GetClusterVirtualMachines.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "clusterName": "cluster1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1" + }, + { + "name": "gateway3" + }, + { + "name": "headnode0" + }, + { + "name": "headnode3" + }, + { + "name": "workernode0" + }, + { + "name": "workernode1" + }, + { + "name": "zookeepernode0" + }, + { + "name": "zookeepernode2" + }, + { + "name": "zookeepernode3" + } + ] + } + } + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/RestartVirtualMachinesOperation.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/RestartVirtualMachinesOperation.json new file mode 100644 index 000000000000..81c9f347ac70 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/examples/RestartVirtualMachinesOperation.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "clusterName": "cluster1", + "hosts": [ + "gateway1", + "gateway3" + ] + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.HDInsight/pathToOperationResult" + } + }, + "200": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.HDInsight/pathToOperationResult" + } + } + } +} diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json new file mode 100644 index 000000000000..61878b4e0af6 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json @@ -0,0 +1,210 @@ +{ + "swagger": "2.0", + "info": { + "title": "HDInsightManagementClient", + "description": "The HDInsight Management Client.", + "version": "2018-06-01-preview" + }, + "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.HDInsight/clusters/{clusterName}/listHosts": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListHosts", + "description": "Lists the HDInsight clusters hosts", + "x-ms-examples": { + "Get All hosts in the cluster": { + "$ref": "./examples/GetClusterVirtualMachines.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/HostInfoListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/restartHosts": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RestartHosts", + "description": "Restarts the specified HDInsight cluster hosts.", + "x-ms-examples": { + "Restarts the specified HDInsight cluster hosts.": { + "$ref": "./examples/RestartVirtualMachinesOperation.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "hosts", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RestartHostsParameters" + }, + "description": "The list of hosts to restart" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK response definition." + }, + "202": { + "description": "Accepted response definition." + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "HostInfo": { + "description": "The cluster host information.", + "properties": { + "name": { + "description": "The host name", + "type": "string" + } + }, + "readOnly": true + }, + "HostInfoListResult": { + "description": "Result of the request to list cluster hosts", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HostInfo" + }, + "description": "The list of cluster hosts." + } + }, + "readOnly": true + }, + "RestartHostsParameters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of hosts which need to be restarted." + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cluster.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The HDInsight client API Version." + } + } +} diff --git a/specification/hdinsight/resource-manager/readme.md b/specification/hdinsight/resource-manager/readme.md index 209bfd410585..97f592973d92 100644 --- a/specification/hdinsight/resource-manager/readme.md +++ b/specification/hdinsight/resource-manager/readme.md @@ -95,6 +95,7 @@ input-file: - Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json - Microsoft.HDInsight/stable/2018-06-01-preview/scriptActions.json - Microsoft.HDInsight/stable/2018-06-01-preview/operations.json +- Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json ``` @@ -226,6 +227,7 @@ input-file: - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/scriptActions.json - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/operations.json + - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/locations.json diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json index 7d276651d131..2406d481db5a 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json @@ -483,15 +483,11 @@ "$ref": "#/definitions/ServiceCorsConfigurationInfo", "description": "The settings for the CORS configuration of the service instance." } - }, - "required": [ - "accessPolicies" - ] + } }, "ServiceAccessPoliciesInfo": { "description": "The access policies of the service instance.", "type": "array", - "minItems": 1, "items": { "$ref": "#/definitions/ServiceAccessPolicyEntry" } diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json index 6db9627e3570..a707b157f174 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json @@ -42,7 +42,13 @@ ], "maxAge": 1440, "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" } + }, + "identity": { + "type": "SystemAssigned" } } }, @@ -91,7 +97,15 @@ ], "maxAge": 1440, "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" } + }, + "identity": { + "principalId": "03fe6ae0-952c-4e4b-954b-cc0364dd252e", + "tenantId": "72f988bf-86f1-41af-91ab-2d8cd011db47", + "type": "SystemAssigned" } } }, @@ -139,7 +153,15 @@ ], "maxAge": 1440, "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" } + }, + "identity": { + "principalId": "03fe6ae0-952c-4e4b-954b-cc0364dd252e", + "tenantId": "72f988bf-86f1-41af-91ab-2d8cd011db47", + "type": "SystemAssigned" } } } diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json index 9ed9c916676a..1a83f1c8eedc 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json @@ -485,16 +485,16 @@ "corsConfiguration": { "$ref": "#/definitions/ServiceCorsConfigurationInfo", "description": "The settings for the CORS configuration of the service instance." + }, + "exportConfiguration": { + "$ref": "#/definitions/ServiceExportConfigurationInfo", + "description": "The settings for the export operation of the service instance." } - }, - "required": [ - "accessPolicies" - ] + } }, "ServiceAccessPoliciesInfo": { "description": "The access policies of the service instance.", "type": "array", - "minItems": 1, "items": { "$ref": "#/definitions/ServiceAccessPolicyEntry" } @@ -588,6 +588,17 @@ } } }, + "ServiceExportConfigurationInfo": { + "description": "Export operation configuration information", + "type": "object", + "properties": { + "storageAccountName": { + "type": "string", + "description": "The name of the default export storage account.", + "readOnly": false + } + } + }, "ServiceCorsConfigurationOriginEntry": { "description": "An origin for CORS.", "type": "string", @@ -683,22 +694,32 @@ "type": "string" }, "identity": { - "type": "object", - "description": "Setting indicating whether the service has a managed identity associated with it.", - "properties": { - "type":{ - "description" : "Type of identity being specified, currently SystemAssigned and None are allowed.", - "type": "string", - "enum": [ - "SystemAssigned", - "None" - ], - "x-ms-enum": { - "name": "ManagedServiceIdentityType", - "modelAsString": true - } - } + "type": "object", + "description": "Setting indicating whether the service has a managed identity associated with it.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the resource." + }, + "type": { + "description": "Type of identity being specified, currently SystemAssigned and None are allowed.", + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } } + } } }, "x-ms-azure-resource": true, diff --git a/specification/hybridcompute/resource-manager/readme.cli.md b/specification/hybridcompute/resource-manager/readme.cli.md index 871e0281a24e..98ef22df6da5 100644 --- a/specification/hybridcompute/resource-manager/readme.cli.md +++ b/specification/hybridcompute/resource-manager/readme.cli.md @@ -17,11 +17,11 @@ cli: - select: 'operation' where: operationGroup: 'machines' - operation: '(reconnect|create_or_update|update)' + operation: '(reconnect|createOrUpdate|update)' removed: true - select: 'operation' where: - operationGroup: 'machine_extensions' - operation: '(create_or_update|update|delete|get|list)' + operationGroup: 'machineExtensions' + operation: '(createOrUpdate|update|delete|get|list)' removed: true ``` \ No newline at end of file diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json new file mode 100644 index 000000000000..1085bb6edafb --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "3f518b96-c63c-4e1e-b627-aa5650877eb6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "28" + ], + "dataManager": { + "location": "westus" + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T08%3A45%3A27.420781Z'\"_W/\"datetime'2020-02-05T08%3A45%3A27.4264561Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json new file mode 100644 index 000000000000..85f5946d67a8 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "4d2994de-4214-499b-a7eb-e3b5fb8b45af" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json new file mode 100644 index 000000000000..9a3d5c9bf0fd --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "5b81ff26-1135-4fb5-ba2a-d197fc7a1d9f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T04%3A22%3A40.6354864Z'\"_W/\"datetime'2020-02-05T04%3A22%3A40.7912864Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json new file mode 100644 index 000000000000..ee99cc8e0c92 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json @@ -0,0 +1,902 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6004f9f8-2f56-4b46-98f5-0ff58b24cdd8" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "W/\"datetime'2018-07-23T09%3A58%3A15.3299896Z'\"_W/\"datetime'2018-07-23T09%3A58%3A15.3500041Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertneafterdep1", + "name": "batchcertneafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A46%3A06.3239385Z'\"_W/\"datetime'2018-07-16T09%3A46%3A06.3289422Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertneold", + "name": "batchcertneold", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-15T10%3A53%3A10.0933461Z'\"_W/\"datetime'2018-03-15T10%3A53%3A10.1213654Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dmsnesmoketest", + "name": "dmsnesmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-10T06%3A36%3A18.0878861Z'\"_W/\"datetime'2018-07-10T06%3A36%3A18.1139046Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ne-07-10", + "name": "ne-07-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-10T06%3A09%3A32.3093315Z'\"_W/\"datetime'2018-04-10T06%3A09%3A32.3243425Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dms-04-10", + "name": "dms-04-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-07T19%3A05%3A00.7594128Z'\"_W/\"datetime'2018-07-07T19%3A05%3A00.7664174Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/eus-07-08", + "name": "eus-07-08", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-10T06%3A36%3A46.642745Z'\"_W/\"datetime'2018-07-10T06%3A36%3A46.7658314Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/eus-07-10", + "name": "eus-07-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-23T07%3A44%3A12.1141909Z'\"_W/\"datetime'2018-07-23T07%3A44%3A12.1432118Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwus2afterdep1", + "name": "batchcertwus2afterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A44%3A49.261222Z'\"_W/\"datetime'2018-07-16T09%3A44%3A49.2702259Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwus2old", + "name": "batchcertwus2old", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-20T08%3A08%3A52.7007451Z'\"_W/\"datetime'2018-03-20T08%3A08%3A52.7207592Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smoketestwus2", + "name": "smoketestwus2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-02-17T14%3A50%3A37.866739Z'\"_W/\"datetime'2019-02-17T14%3A50%3A38.038859Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzureSDKOperations", + "name": "AzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2018-07-18T04%3A48%3A50.1962283Z'\"_W/\"datetime'2018-07-18T04%3A48%3A50.3433306Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwcusafterdep1", + "name": "batchcertwcusafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A43%3A43.569014Z'\"_W/\"datetime'2018-07-16T09%3A43%3A43.5740171Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwcusold", + "name": "batchcertwcusold", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-20T08%3A08%3A11.5901685Z'\"_W/\"datetime'2018-03-20T08%3A08%3A11.6161871Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smoketestwcus", + "name": "smoketestwcus", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-13T09%3A17%3A33.9031753Z'\"_W/\"datetime'2018-04-13T09%3A17%3A33.9301949Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcus04-13", + "name": "wcus04-13", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-05T14%3A40%3A04.7506699Z'\"_W/\"datetime'2018-07-05T14%3A40%3A04.7776888Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcus07-05", + "name": "wcus07-05", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T11%3A17%3A08.7276428Z'\"_W/\"datetime'2018-06-05T11%3A17%3A08.7336469Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcussmoketest", + "name": "wcussmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-17T09%3A53%3A29.1283879Z'\"_W/\"datetime'2019-05-17T09%3A53%3A29.1844278Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/smoketest", + "name": "smoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-07-06T16%3A47%3A17.0360354Z'\"_W/\"datetime'2019-07-06T16%3A47%3A17.2111588Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/seasmoketestresource", + "name": "seasmoketestresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-23T08%3A24%3A48.4779951Z'\"_W/\"datetime'2018-07-23T08%3A24%3A48.5120189Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertseaafterdep1", + "name": "batchcertseaafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T10%3A00%3A28.3513242Z'\"_W/\"datetime'2018-07-16T10%3A00%3A28.3583291Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertseaold", + "name": "batchcertseaold", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-13T18%3A04%3A02.4340032Z'\"_W/\"datetime'2018-06-13T18%3A04%3A02.4430097Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/testresourceon613", + "name": "testresourceon613", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-24T10%3A28%3A41.92206Z'\"_W/\"datetime'2019-05-24T10%3A28%3A42.0641646Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyexp-wus-int", + "name": "copyexp-wus-int", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-22T11%3A13%3A22.4906285Z'\"_W/\"datetime'2018-02-22T11%3A13%3A22.6667555Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG3/providers/Microsoft.HybridData/dataManagers/testServiceIncident", + "name": "testServiceIncident", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-29T04%3A12%3A49.3583436Z'\"_W/\"datetime'2019-11-29T04%3A12%3A49.5344699Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankWusTestRes", + "name": "prtankWusTestRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-19T08%3A06%3A46.7263604Z'\"_W/\"datetime'2019-11-19T08%3A06%3A46.7824012Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/storagemanagerresource", + "name": "storagemanagerresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "doNotDelete": "Yes" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-27T05%3A27%3A35.150482Z'\"_W/\"datetime'2019-05-27T05%3A27%3A35.3105951Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsdatasource/providers/Microsoft.HybridData/dataManagers/sdf", + "name": "sdf", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-29T07%3A55%3A30.6749871Z'\"_W/\"datetime'2018-11-29T07%3A55%3A30.6809932Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/int-wus-11-29", + "name": "int-wus-11-29", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-17T15%3A03%3A36.5993632Z'\"_W/\"datetime'2018-03-17T15%3A03%3A36.7594788Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intnewresource", + "name": "intnewresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-13T08%3A11%3A39.9025375Z'\"_W/\"datetime'2018-03-13T08%3A11%3A40.1036797Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intresource", + "name": "intresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-10-30T09%3A56%3A32.9053638Z'\"_W/\"datetime'2018-10-30T09%3A56%3A33.0704765Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intresource-10-30", + "name": "intresource-10-30", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-13T08%3A11%3A40.1389003Z'\"_W/\"datetime'2018-03-13T08%3A11%3A40.2479789Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/testresourceint", + "name": "testresourceint", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-12T09%3A46%3A50.1774789Z'\"_W/\"datetime'2018-07-12T09%3A46%3A50.3215821Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertoldresource", + "name": "batchcertoldresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-01T11%3A52%3A02.7715263Z'\"_W/\"datetime'2018-03-01T11%3A52%3A02.7765292Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dmswusresource", + "name": "dmswusresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-07T13%3A08%3A29.4575101Z'\"_W/\"datetime'2018-06-07T13%3A08%3A29.629632Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsnodebinarytest", + "name": "dsmsnodebinarytest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-05-23T08%3A45%3A40.8795252Z'\"_W/\"datetime'2018-05-23T08%3A45%3A41.0666584Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource", + "name": "dsmsresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T05%3A02%3A54.5475181Z'\"_W/\"datetime'2018-06-05T05%3A02%3A54.73265Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource1", + "name": "dsmsresource1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T05%3A34%3A59.227556Z'\"_W/\"datetime'2018-06-05T05%3A34%3A59.4357029Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource2", + "name": "dsmsresource2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T11%3A02%3A52.3744002Z'\"_W/\"datetime'2018-06-05T11%3A02%3A52.5365141Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource3", + "name": "dsmsresource3", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-08T15%3A58%3A07.1761866Z'\"_W/\"datetime'2018-06-08T15%3A58%3A07.3703309Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource4", + "name": "dsmsresource4", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-10-03T08%3A03%3A21.5040402Z'\"_W/\"datetime'2018-10-03T08%3A03%3A21.6421388Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/govtcloudtest", + "name": "govtcloudtest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-01T10%3A38%3A07.9487894Z'\"_W/\"datetime'2018-02-01T10%3A38%3A08.1499556Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intresource2", + "name": "intresource2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-03T15%3A33%3A45.7585904Z'\"_W/\"datetime'2018-07-03T15%3A33%3A45.932713Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intresource3rdjuly", + "name": "intresource3rdjuly", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-24T12%3A01%3A29.4312765Z'\"_W/\"datetime'2018-09-24T12%3A01%3A29.489317Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intsmallfiles", + "name": "intsmallfiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-05-31T09%3A41%3A28.6739766Z'\"_W/\"datetime'2018-05-31T09%3A41%3A28.8551054Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/longrunningjob", + "name": "longrunningjob", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-21T10%3A06%3A55.2175183Z'\"_W/\"datetime'2018-02-21T10%3A06%3A55.2235223Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/sampleclientdatamanager", + "name": "sampleclientdatamanager", + "type": "Microsoft.HybridData/dataManagers", + "location": "WestUS", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2018-04-23T10%3A16%3A00.5751127Z'\"_W/\"datetime'2018-04-23T10%3A16%3A00.5841193Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ssdmbcdrresource", + "name": "ssdmbcdrresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-12-06T05%3A48%3A21.5818324Z'\"_W/\"datetime'2018-12-06T05%3A48%3A21.7748343Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyexp-we-int1", + "name": "copyexp-we-int1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-19T08%3A08%3A48.3033932Z'\"_W/\"datetime'2019-11-19T08%3A08%3A48.319407Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankbvttest", + "name": "prtankbvttest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": { + "test": "true", + "doNotDelete": "yes" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2020-01-30T10%3A18%3A35.3300821Z'\"_W/\"datetime'2020-01-30T10%3A18%3A35.3460951Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankBvtWeTest", + "name": "prtankBvtWeTest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-28T10%3A55%3A58.530785Z'\"_W/\"datetime'2018-11-28T10%3A55%3A58.8107858Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/we-int-1", + "name": "we-int-1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-06T11%3A48%3A28.3406561Z'\"_W/\"datetime'2019-08-06T11%3A48%3A28.5107985Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/mrinsaha-dms-we", + "name": "mrinsaha-dms-we", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-14T09%3A07%3A12.3469862Z'\"_W/\"datetime'2019-05-14T09%3A07%3A12.3589889Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/testdurga2", + "name": "testdurga2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-14T02%3A42%3A38.6041538Z'\"_W/\"datetime'2018-11-14T02%3A42%3A38.6081571Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ecy-aftermigration", + "name": "ecy-aftermigration", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-11T03%3A11%3A40.5411975Z'\"_W/\"datetime'2018-11-11T03%3A11%3A40.6752923Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ecy-ame", + "name": "ecy-ame", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-04-15T09%3A05%3A36.2264018Z'\"_W/\"datetime'2019-04-15T09%3A05%3A36.2854433Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/cleanupservice/providers/Microsoft.HybridData/dataManagers/ecysmoketest", + "name": "ecysmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-09T09%3A51%3A11.720705Z'\"_W/\"datetime'2019-05-09T09%3A51%3A11.8728117Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyspeed-ecy", + "name": "copyspeed-ecy", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-10T09%3A41%3A03.749493Z'\"_W/\"datetime'2018-04-10T09%3A41%3A03.8805855Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ecyresource-04-10", + "name": "ecyresource-04-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-20T10%3A01%3A55.2712681Z'\"_W/\"datetime'2018-02-20T10%3A01%3A55.441388Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/feb20ecyresource", + "name": "feb20ecyresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-06T08%3A37%3A23.6486177Z'\"_W/\"datetime'2018-02-06T08%3A37%3A23.7857152Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/hari-dms-analysis-ecy", + "name": "hari-dms-analysis-ecy", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-01-14T05%3A16%3A38.9573714Z'\"_W/\"datetime'2019-01-14T05%3A16%3A39.0774564Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/EcySmoke", + "name": "EcySmoke", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-12T10%3A20%3A40.4679832Z'\"_W/\"datetime'2019-08-12T10%3A20%3A40.6030796Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/EcyTestDMSRes", + "name": "EcyTestDMSRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-11T03%3A13%3A19.0340832Z'\"_W/\"datetime'2018-11-11T03%3A13%3A19.038086Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ccy-ame", + "name": "ccy-ame", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-03-26T04%3A54%3A23.06065Z'\"_W/\"datetime'2019-03-26T04%3A54%3A23.1216929Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ccytest-26-march", + "name": "ccytest-26-march", + "type": "Microsoft.HybridData/dataManagers", + "location": "Central US EUAP", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-12T09%3A47%3A44.2155827Z'\"_W/\"datetime'2018-07-12T09%3A47%3A44.2235883Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertoldccy", + "name": "batchcertoldccy", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-04T06%3A47%3A31.8676921Z'\"_W/\"datetime'2018-09-04T06%3A47%3A32.0268062Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ccylargenumberoffiles", + "name": "ccylargenumberoffiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-20T10%3A02%3A19.8430119Z'\"_W/\"datetime'2018-02-20T10%3A02%3A20.0291444Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/feb20ccyresoirce", + "name": "feb20ccyresoirce", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-24T05%3A24%3A44.2753634Z'\"_W/\"datetime'2018-09-24T05%3A24%3A44.4114594Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smallfilesccyjob", + "name": "smallfilesccyjob", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-04-22T07%3A45%3A22.6635575Z'\"_W/\"datetime'2019-04-22T07%3A45%3A22.8346781Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/MSCCY", + "name": "MSCCY", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-02-07T09%3A38%3A22.6976591Z'\"_W/\"datetime'2019-02-07T09%3A38%3A22.8767865Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/res4ccyBCDR", + "name": "res4ccyBCDR", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-25T07%3A11%3A55.7616108Z'\"_W/\"datetime'2018-09-25T07%3A11%3A55.8957061Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/prpare/providers/Microsoft.HybridData/dataManagers/prpare50lakhsmallfiles", + "name": "prpare50lakhsmallfiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-13T04%3A47%3A07.5063631Z'\"_W/\"datetime'2019-08-13T04%3A47%3A07.5113667Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/CcyTestDMSRes2", + "name": "CcyTestDMSRes2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-15T07%3A04%3A34.2882012Z'\"_W/\"datetime'2018-06-15T07%3A04%3A34.3472441Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/test-varavi/providers/Microsoft.HybridData/dataManagers/ccytestingpav2", + "name": "ccytestingpav2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/providers/Microsoft.HybridData/dataManagers?api-version=2019-06-01&%24skiptoken=fVLbbqMwFPyXaLtvaQyFNlSqVmm4JCjQxCE28GbHbgIY4gIhl6r%2fvm6ibbXSaiXLss9l5njG772KH9tZVhVN7%2fG9h51ltFr2HnvbtpXN42BQkopseMmr9pac9zW%2fXe%2fKQbOnzbrOZJvtqmZwz4GuWa9m%2f05%2fIH3j7t7sW8B47QOTc2boKsgeBrLedRnjdTMIsnW9a3av7e3kROuM2aQlA6a24EJVN7%2bIzPqdKlXoTzrQrD647wPt54%2bmyGS0K3j1NLctg%2bLDhpXotNZFR3OQBUvjMM2eBS3DLvXEPj2DjMWwnEWOPs2HNzq1F7vhQrf2TGUZdgHB1h55Vp1i45rdTO2jTXVTZUwtiaFU5xXVW0FzIxxno810PBqiL07jNMtHw5mWinUVqtovlPFoM3ehufZWChd5bka9lar7E1FzfCJt5o4p%2bAQuktgH5Mo2S%2bNC9QRL5xjYo21UaogB7Q1GiBCBQBRLP9BEFNjPIRfFMXJhzYA5wTEMoZs2WDAYONrbMgpTpDlnPJHjtPRj6smcRuI%2byX0SOMeW2CilhTzggi2JByewTEOYixqjrbr7MaxQinTYJLoZzqJDF5XIYO7zdl1BqdTraNEKHn1rcs37HQOX%2bHEabcAUhy2qZBZoqYkjHzNXJIuKbdEZ7a9zhW3qXXkTsX3hSCZRlRbYkW%2fqHQXH0zOqWMILv0zO4QvRfdWf5oHmS4W35H%2fjo%2b85v%2bb49sxzT6mu9POs%2fOrrp1eriS8pdk9cvVC59I%2bKi1P2ofvvrxnOQNhRpQyt0PaijoAd0dF%2bvrm5Y2r1Pj5%2bAw%3d%3d" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json new file mode 100644 index 000000000000..c0b852b18d76 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "bc4254ce-7ff0-4dbb-9ef3-af4b4295ca5f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "W/\"datetime'2019-02-17T14%3A50%3A37.866739Z'\"_W/\"datetime'2019-02-17T14%3A50%3A38.038859Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzureSDKOperations", + "name": "AzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2019-03-30T06%3A35%3A01.1816182Z'\"_W/\"datetime'2019-03-30T06%3A35%3A01.2846913Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzSDKOps", + "name": "AzSDKOps", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "new": "true", + "hello": "World", + "helL00000": "dlrow" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2020-02-05T04%3A22%3A40.6354864Z'\"_W/\"datetime'2020-02-05T04%3A22%3A40.7912864Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-12T10%3A20%3A40.4679832Z'\"_W/\"datetime'2019-08-12T10%3A20%3A40.6030796Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/EcyTestDMSRes", + "name": "EcyTestDMSRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-13T04%3A47%3A07.5063631Z'\"_W/\"datetime'2019-08-13T04%3A47%3A07.5113667Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/CcyTestDMSRes2", + "name": "CcyTestDMSRes2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json new file mode 100644 index 000000000000..e568d973a4a5 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "741a70f2-32a6-408f-b3ba-88609a9a931e" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "130" + ], + "dataManagerUpdateParameter": { + "sku": { + "name": "DS0", + "tier": "Standard" + }, + "tags": { + "UpdateDateTime": "05-Feb-20 2:17:22 PM" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T08%3A47%3A23.8171822Z'\"_W/\"datetime'2020-02-05T08%3A47%3A23.8361957Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "updateDateTime": "05-Feb-20 2:17:22 PM" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json new file mode 100644 index 000000000000..8b7f50d96134 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "cf35b680-dc80-4815-ab83-9364acc3bce6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + ] + }, + "name": "DataTransformation", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "type": "Microsoft.HybridData/dataManagers/dataServices" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json new file mode 100644 index 000000000000..c714fa2956e4 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "23af7f48-27fe-4aa3-b6e2-7045b784b6f9" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + ] + }, + "name": "DataTransformation", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "KeyRollover", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/KeyRollover", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataSecurity", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataSecurity", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataInsights", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataInsights", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataHealth", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataHealth", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "RunnerService", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/RunnerService", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/SqlServer" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + ] + }, + "name": "IndexingAndSearch", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch", + "type": "Microsoft.HybridData/dataManagers/dataServices" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json new file mode 100644 index 000000000000..d8f9d213c0da --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreTypeName": "StorSimple8000Series", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "0e9a7d14-9e60-4523-b30b-2ade6a80c3cb" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryType": "Microsoft.StorSimple/managers", + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "StorSimple8000Series", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json new file mode 100644 index 000000000000..9fd57ee6dd64 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreTypeName": "AzureStorageAccount", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "76840018-321d-4eee-9bde-089e9c0c20e6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryType": "Microsoft.Storage/storageAccounts", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "AzureStorageAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json new file mode 100644 index 000000000000..42c20dcfac58 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6267bb46-ab0a-446a-af65-34d208290382" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "repositoryType": "Microsoft.StorSimple/managers", + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "StorSimple8000Series", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Storage/storageAccounts", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "AzureStorageAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Media/mediaservices", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [] + }, + "name": "AzureMediaServicesAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [] + }, + "name": "RunnerDataSource", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/RunnerDataSource", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [] + }, + "name": "RunnerDataSink", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/RunnerDataSink", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Sql/servers", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ], + "supportedDataServicesAsSource": [] + }, + "name": "SqlServer", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/SqlServer", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json new file mode 100644 index 000000000000..711ac3c593d4 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "83706695-2c05-4e9a-89ed-39fcd304e510" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "2546" + ], + "dataStore": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "storageAccountNameForQueue": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "extendedSaName": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "customerSecrets": [ + { + "keyIdentifier": "StorageAccountAccessKey", + "keyValue": "Of4H9eF03G8QuxvkZQEbFWv3YdN3U//WugzuqReQekbXXQyg+QSicVKrwSOOKVi1zWMYGbKg7d5/ES2gdz+O5ZEw89bvE4mJD/wQmkIsqhPnbN0gyVK6nZePXVUU1A+UzjLfvhSA6KyUQfzNAZ5/TLt6fo1JyQrKTtkvnkLFyfv1AqBZ+dw8JK3RZi/rEN8HD3R3qsBwUYfyEuGLGiujy2CGrr/1uPiUVMR6QuFWRsjm39eMSHa4maLg4tQ0IY/jIy8rMlx3KjF3CcCbPzAqEq5vXy37wkjZbus771te1gLSrzcpVKIMg4DrmgaoJ02jAu+izBjNgLXAFPSUneQ8yw==:ezMkh4PMhCnjJtYkpTaP0SdblP5VAeRe4glW2PgIzICHw3T8ZyGDoaTrCv4/m5wtcEhWdtxhta+j1MQWlK5MIA+hvf8QjIDIjQv696ov5y+pcFe/upd2ekGOei7FCwB2u7I8WnkAtIKTUkf6eDQBZXm26DjfG1Dlc+Mjjq+AerukEa6WpOyqrD7Qub26Pgmj4AsuBx19X1EAmTZacubkoiNagXM8V+IDanHOhLMvfgQ7rw8oZhWfofxi4m+eJqjOXXaqSyorNK8UEcqP6P9pDP8AN8ulXEx6rZy2B5Oi0vSV+wlRLbUuQslga4ItOGxctW/ZX8uWozt+5A3k4URt6A==", + "algorithm": "RSA1_5" + }, + { + "keyIdentifier": "StorageAccountAccessKeyForQueue", + "keyValue": "Of4H9eF03G8QuxvkZQEbFWv3YdN3U//WugzuqReQekbXXQyg+QSicVKrwSOOKVi1zWMYGbKg7d5/ES2gdz+O5ZEw89bvE4mJD/wQmkIsqhPnbN0gyVK6nZePXVUU1A+UzjLfvhSA6KyUQfzNAZ5/TLt6fo1JyQrKTtkvnkLFyfv1AqBZ+dw8JK3RZi/rEN8HD3R3qsBwUYfyEuGLGiujy2CGrr/1uPiUVMR6QuFWRsjm39eMSHa4maLg4tQ0IY/jIy8rMlx3KjF3CcCbPzAqEq5vXy37wkjZbus771te1gLSrzcpVKIMg4DrmgaoJ02jAu+izBjNgLXAFPSUneQ8yw==:ezMkh4PMhCnjJtYkpTaP0SdblP5VAeRe4glW2PgIzICHw3T8ZyGDoaTrCv4/m5wtcEhWdtxhta+j1MQWlK5MIA+hvf8QjIDIjQv696ov5y+pcFe/upd2ekGOei7FCwB2u7I8WnkAtIKTUkf6eDQBZXm26DjfG1Dlc+Mjjq+AerukEa6WpOyqrD7Qub26Pgmj4AsuBx19X1EAmTZacubkoiNagXM8V+IDanHOhLMvfgQ7rw8oZhWfofxi4m+eJqjOXXaqSyorNK8UEcqP6P9pDP8AN8ulXEx6rZy2B5Oi0vSV+wlRLbUuQslga4ItOGxctW/ZX8uWozt+5A3k4URt6A==", + "algorithm": "RSA1_5" + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json new file mode 100644 index 000000000000..fb4abf60137f --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "5e723454-6124-491f-b7bb-364ab9a0167c" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1478" + ], + "dataStore": { + "properties": { + "repositoryId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "customerSecrets": [ + { + "keyIdentifier": "ServiceEncryptionKey", + "keyValue": "EVuEBV40qv23xDRL4NZBuMms4e3So6ikHjrQYRvG9NloqxdgPOg+ZYzpho5lytI4fmv0ANmRIvDiDboRXcUVSjbB9T2gm19fMIuwZa4FK2+LYEgMqKK1GaLkk7xC8f5IeFUXLo6KyBBpaAiayTnWDcHuYEpMiGrV7trDDcbhMRefO3CHecmH3Z7ye8L0RQ/e7WW8GlCKZj3m0BaG7OrJgjai8gyDfMfGAG5rTqEhDVh2hLQ+TjvUjcOFwHvJusqKTENtbJTNQYmL9wZXsnwBvUwxqrGieILNB7V3GD1Ow9OiV0UCDW1e9LnMueukg+l7YJCU9FUhIPh/nSif6p32zw==:jCfio+pDtY3BSPZDpDJ0L6QdXLYMeOmxaFWtYTOZkNqNTgT8Loc/KSQRjtWS5K4N4btbznuSJ/dzg0aZEzlXgKDSuZgMfd4Ch92ZwAC/BkeCmVrTjiKJsoQXO1IICCUf7GHGBbYnnpsNJcEn4vyc9NXyKwOBjeU+I9AyK7PtYiC03RLpTS6xttFCICteBV0uoBHAiV0chZ5VIIUUMjO9u8EhHqRY7NNcGbWdVJeAb6J3vH4E/DHkQj+DXlpjcLvmK/uqBwxfNju30RJhR04Nmz6zcv/zTcvS0uN5hEPQoHLyv84hjnc4omg/gmNjo2cDW64QxA3RTJ5Sl///4xTBkg==", + "algorithm": "RSA1_5" + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json new file mode 100644 index 000000000000..2407fc177b90 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "24fe155b-4142-435d-80fc-0549d33d278c" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json new file mode 100644 index 000000000000..e18d27a7117e --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "df4369fc-8343-43ba-8100-3010537e2f19" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json new file mode 100644 index 000000000000..18a67a71ae5c --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e3c128ff-0678-4dc2-aacd-622eb2833e01" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json new file mode 100644 index 000000000000..0deeb8857478 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "b753ced5-1fa8-497c-a3ff-6bdd003fd7ab" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json new file mode 100644 index 000000000000..330e851042aa --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "c8bc3615-68e3-4d43-a64d-a6c2f5b7ae6b" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + }, + { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json new file mode 100644 index 000000000000..032e7dc9c3cf --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "b2b20143-84aa-4b49-b8e3-08df8bc50860" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "921" + ], + "jobDefinition": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "state": "Enabled", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json new file mode 100644 index 000000000000..31d4748ad412 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "09a4dbea-78fc-4639-8489-edaa73da5709" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json new file mode 100644 index 000000000000..d8ee72a4845a --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e91b8b61-1086-4b5d-b50a-a86b94c05a22" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json new file mode 100644 index 000000000000..b3f3fbd0378a --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e748acd1-8bb5-4ccc-8b29-8b0c99dd79c5" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json new file mode 100644 index 000000000000..a8685ab9695f --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "de083d46-ec64-44a3-8594-947fcd04c018" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json new file mode 100644 index 000000000000..e4e9506cb12b --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "24f384ac-62d6-4288-811f-f991ca18300a" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "417" + ], + "runParameters": { + "userConfirmation": "NotRequired", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + }, + "customerSecrets": [] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json new file mode 100644 index 000000000000..b7dff4786eea --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "6eca9b3d-5ffe-4b44-9607-1ba838371ff7", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "8a116a8b-ce2c-4bbd-a3d9-d0bc72adc2f4" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json new file mode 100644 index 000000000000..7e146a454a6e --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "99ef93fe-36be-43e4-bebf-de6746730601", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "8f58956d-2caa-4702-bc32-4c96cb805aeb" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json new file mode 100644 index 000000000000..da16147e1748 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6e284b77-f52e-4c3f-85be-8ac240b61e8f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json new file mode 100644 index 000000000000..a2eb1437987b --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "a4fec9c0-69a3-4bf1-89d6-83dfe1dcb9dd" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json new file mode 100644 index 000000000000..fc4454125cda --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "91a0109e-dc91-4b98-9971-4262e293e728" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json new file mode 100644 index 000000000000..8c968202ae82 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "99ef93fe-36be-43e4-bebf-de6746730601", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "d40aa23c-0a31-45cf-a8ae-6e4ab2818961" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json new file mode 100644 index 000000000000..03287674b77d --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json @@ -0,0 +1,300 @@ +{ + "parameters": { + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "d5161882-ff1d-499a-b9ea-706aa59e1687" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Creates or updates Job definitions", + "description": "Create or update Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Delete Job definitions", + "description": "Delete Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get Job definitions", + "description": "Read Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/jobDefinitions/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get Job definitions", + "description": "Read Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/listResults/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get job definitions", + "description": "Get job defintions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/run/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Run job definitions", + "description": "Run job defintions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/publicKeys/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Public keys", + "operation": "Get Public keys", + "description": "Read Public keys" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data services", + "operation": "Get Data services", + "description": "Read Data services" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Creates or updates Datastores", + "description": "Create or update Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Delete Datastores", + "description": "Delete Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Get Datastores", + "description": "Read Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStoreTypes/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastore types", + "operation": "Get Datastore types", + "description": "Read Datastore types" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Delete Data managers", + "description": "Delete Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Get Data managers", + "description": "Read Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Creates or updates Data managers", + "description": "Create or update Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/cancel/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Cancel jobs", + "description": "Cancel jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/resume/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Resumes jobs", + "description": "Resume jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "ArmApiRes_Microsoft.HybridData", + "operation": "Get ArmApiRes_Microsoft.HybridData", + "description": "Read ArmApiRes_Microsoft.HybridData" + }, + "origin": "user", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json new file mode 100644 index 000000000000..6c50cf95b239 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "publicKeyName": "default", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "7f00c10d-7c0c-4004-8157-e1a0e61d620e" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "dataServiceLevel1Key": { + "keyModulus": "mjDxqxGmawhC15TUM/oKCe2rRg6nM+IEqujgn17vc1litm3TPmv7rtDr4Y/L/t+tYCug7aXxJtwGA9ETOUF9iUoGPE3zBKMGPJhO5nRF3IW27OzYUNTdHgUjlV0ba5QlZQ/f5ideEboJvdlw05ofPVQKZ9Hh95/9sOFYuNBKP0LPwKz1VrrhvM7tVgdIhZdekuIOt4S+7WjRV5J+XT0jlhwUBEIxx8knRPagmxygSZM3h/FbX+mEbduIwVy+y1HwtfwVq3PyR9YIDjVDuc3+6VNZd69TEIHqRQlbwb2jkitgEHx/Vs32KtDyfRZgkhA6ZGZRlnEiX3R0YRzjCt5xCw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + }, + "dataServiceLevel2Key": { + "keyModulus": "rtCsQNdCaDwLHIvgkhkKldvUNjili+rsj8CVaKGTwAyQGvAIwKOe3zfwW3TFaeycTFAQ1payBjY2tW9uWSWDTJRpHZVYTTX/1mjnXHTqcZYsgSkblt0PhLWbbYATGMmyBie0XM3Xfy1ilwAMYNHu+YaW56NyFpepyNcheZbmkD4/Vveh+5JStwObqEp1vsagraQ/IqUDCAETRxFc3iIWJZnqW2yfIWZshky20fkmyBnRrpe5fexpj6Xz4VHT76Lj+7bTEbsFSq7fNUjRcCIf2gat8bBN4HD2w//GZVCKarQG6G0kilA0bDZHFAzVeTs2+UYB+1GA+r+Uy3SOEIdLPw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + } + }, + "name": "default", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/publicKeys/default", + "type": "Microsoft.HybridData/dataManagers/publicKeys" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json new file mode 100644 index 000000000000..ee7d7fb81831 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "c808bbd4-459a-409d-8930-6149e5419cd1" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataServiceLevel1Key": { + "keyModulus": "mjDxqxGmawhC15TUM/oKCe2rRg6nM+IEqujgn17vc1litm3TPmv7rtDr4Y/L/t+tYCug7aXxJtwGA9ETOUF9iUoGPE3zBKMGPJhO5nRF3IW27OzYUNTdHgUjlV0ba5QlZQ/f5ideEboJvdlw05ofPVQKZ9Hh95/9sOFYuNBKP0LPwKz1VrrhvM7tVgdIhZdekuIOt4S+7WjRV5J+XT0jlhwUBEIxx8knRPagmxygSZM3h/FbX+mEbduIwVy+y1HwtfwVq3PyR9YIDjVDuc3+6VNZd69TEIHqRQlbwb2jkitgEHx/Vs32KtDyfRZgkhA6ZGZRlnEiX3R0YRzjCt5xCw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + }, + "dataServiceLevel2Key": { + "keyModulus": "rtCsQNdCaDwLHIvgkhkKldvUNjili+rsj8CVaKGTwAyQGvAIwKOe3zfwW3TFaeycTFAQ1payBjY2tW9uWSWDTJRpHZVYTTX/1mjnXHTqcZYsgSkblt0PhLWbbYATGMmyBie0XM3Xfy1ilwAMYNHu+YaW56NyFpepyNcheZbmkD4/Vveh+5JStwObqEp1vsagraQ/IqUDCAETRxFc3iIWJZnqW2yfIWZshky20fkmyBnRrpe5fexpj6Xz4VHT76Lj+7bTEbsFSq7fNUjRcCIf2gat8bBN4HD2w//GZVCKarQG6G0kilA0bDZHFAzVeTs2+UYB+1GA+r+Uy3SOEIdLPw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + } + }, + "name": "default", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/publicKeys/default", + "type": "Microsoft.HybridData/dataManagers/publicKeys" + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json new file mode 100644 index 000000000000..35ffbf12ad47 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json @@ -0,0 +1,2654 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "HybridDataManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.HybridData/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "The list of operations for Microsoft.HybridData provider.", + "operationId": "Operations_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of operations for Microsoft.HybridData provider.", + "schema": { + "$ref": "#/definitions/AvailableProviderOperations" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_ListGET11": { + "$ref": "./examples/Operations_List-GET-example-11.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridData/dataManagers": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Lists all the data manager resources available under the subscription.", + "operationId": "DataManagers_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of data manager resources available under the subscription.", + "schema": { + "$ref": "#/definitions/DataManagerList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "DataManagers_ListGET21": { + "$ref": "./examples/DataManagers_List-GET-example-21.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Lists all the data manager resources available under the given resource group.", + "operationId": "DataManagers_ListByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of data manager resources by resource group.", + "schema": { + "$ref": "#/definitions/DataManagerList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "DataManagers_ListByResourceGroupGET31": { + "$ref": "./examples/DataManagers_ListByResourceGroup-GET-example-31.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Gets information about the specified data manager resource.", + "operationId": "DataManagers_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + } + }, + "x-ms-examples": { + "DataManagers_GetGET41": { + "$ref": "./examples/DataManagers_Get-GET-example-41.json" + } + } + }, + "put": { + "tags": [ + "DataManagers" + ], + "description": "Creates a new data manager resource with the specified parameters. Existing resources cannot be updated with this API\r\nand should instead be updated with the Update data manager resource API.", + "operationId": "DataManagers_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "dataManager", + "in": "body", + "description": "Data manager resource details from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/DataManager" + } + } + ], + "responses": { + "200": { + "description": "Completed request for Create. Returns the Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + }, + "202": { + "description": "Accepted request for Create." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_CreatePUT41": { + "$ref": "./examples/DataManagers_Create-PUT-example-41.json" + } + } + }, + "delete": { + "tags": [ + "DataManagers" + ], + "description": "Deletes a data manager resource in Microsoft Azure.", + "operationId": "DataManagers_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Data Manager Resource deleted." + }, + "204": { + "description": "Data Manager Resource deleted." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_DeleteDELETE41": { + "$ref": "./examples/DataManagers_Delete-DELETE-example-41.json" + } + } + }, + "patch": { + "tags": [ + "DataManagers" + ], + "description": "Updates the properties of an existing data manager resource.", + "operationId": "DataManagers_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The patch will be performed only if the ETag of the data manager resource on the server matches this value.", + "type": "string" + }, + { + "name": "dataManagerUpdateParameter", + "in": "body", + "description": "Data manager resource details from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/DataManagerUpdateParameter" + } + } + ], + "responses": { + "200": { + "description": "Completed request for Updated. Returns the Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + }, + "202": { + "description": "Accepted request for Data Manager Update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_UpdatePATCH43": { + "$ref": "./examples/DataManagers_Update-PATCH-example-43.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices": { + "get": { + "tags": [ + "DataServices" + ], + "description": "This method gets all the data services.", + "operationId": "DataServices_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of data services.", + "schema": { + "$ref": "#/definitions/DataServiceList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataServices_ListByDataManagerGET51": { + "$ref": "./examples/DataServices_ListByDataManager-GET-example-51.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}": { + "get": { + "tags": [ + "DataServices" + ], + "description": "Gets the data service that matches the data service name given.", + "operationId": "DataServices_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service that is being queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data service that matches the name.", + "schema": { + "$ref": "#/definitions/DataService" + } + } + }, + "x-ms-examples": { + "DataServices_GetGET62": { + "$ref": "./examples/DataServices_Get-GET-example-62.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets all the job definitions of the given data service name.", + "operationId": "JobDefinitions_ListByDataService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of interest.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of job definitions of the given data service type.", + "schema": { + "$ref": "#/definitions/JobDefinitionList" + } + } + }, + "x-ms-odata": "#/definitions/JobDefinitionFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobDefinitions_ListByDataServiceGET71": { + "$ref": "./examples/JobDefinitions_ListByDataService-GET-example-71.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets job definition object by name.", + "operationId": "JobDefinitions_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service name of the job definition", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name that is being queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The job definition that matches the criteria.", + "schema": { + "$ref": "#/definitions/JobDefinition" + } + } + }, + "x-ms-examples": { + "JobDefinitions_GetGET81": { + "$ref": "./examples/JobDefinitions_Get-GET-example-81.json" + } + } + }, + "put": { + "tags": [ + "JobDefinitions" + ], + "description": "Creates or updates a job definition.", + "operationId": "JobDefinitions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinition", + "in": "body", + "description": "Job Definition object to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/JobDefinition" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Completed request for Create or Update. Returns the JobDefinition object.", + "schema": { + "$ref": "#/definitions/JobDefinition" + } + }, + "202": { + "description": "Accepted request for create/update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_CreateOrUpdatePUT83": { + "$ref": "./examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json" + } + } + }, + "delete": { + "tags": [ + "JobDefinitions" + ], + "description": "This method deletes the given job definition.", + "operationId": "JobDefinitions_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for JobDefinition deletion." + }, + "204": { + "description": "Completed request for Delete JobDefinition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_DeleteDELETE81": { + "$ref": "./examples/JobDefinitions_Delete-DELETE-example-81.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs of a given job definition.", + "operationId": "Jobs_ListByJobDefinition", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition for which jobs are needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByJobDefinitionGET91": { + "$ref": "./examples/Jobs_ListByJobDefinition-GET-example-91.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets a data manager job given the jobId.", + "operationId": "Jobs_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "$expand is supported on details parameter for job, which provides details on the job stages.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The job that matches the given criteria.", + "schema": { + "$ref": "#/definitions/Job" + } + } + }, + "x-ms-examples": { + "Jobs_GetGET101": { + "$ref": "./examples/Jobs_Get-GET-example-101.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}/cancel": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Cancels the given job.", + "operationId": "Jobs_Cancel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted job cancellation request." + }, + "204": { + "description": "Completed request for job Cancel." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Jobs_CancelPOST111": { + "$ref": "./examples/Jobs_Cancel-POST-example-111.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}/resume": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Resumes the given job.", + "operationId": "Jobs_Resume", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted job resume request." + }, + "204": { + "description": "Complete request for Job resume." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Jobs_ResumePOST121": { + "$ref": "./examples/Jobs_Resume-POST-example-121.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/run": { + "post": { + "tags": [ + "JobDefinitions" + ], + "description": "This method runs a job instance of the given job definition.", + "operationId": "JobDefinitions_Run", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "Name of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "runParameters", + "in": "body", + "description": "Run time parameters for the job definition.", + "required": true, + "schema": { + "$ref": "#/definitions/RunParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Job run accepted." + }, + "204": { + "description": "Completed request for Job run. Run has started." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_RunPOST132": { + "$ref": "./examples/JobDefinitions_Run-POST-example-132.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs of a data service type in a given resource.", + "operationId": "Jobs_ListByDataService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of interest.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs that match the service and resource.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByDataServiceGET141": { + "$ref": "./examples/Jobs_ListByDataService-GET-example-141.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStores": { + "get": { + "tags": [ + "DataStores" + ], + "description": "Gets all the data stores/repositories in the given resource.", + "operationId": "DataStores_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of data stores/repositories in the given resource.", + "schema": { + "$ref": "#/definitions/DataStoreList" + } + } + }, + "x-ms-odata": "#/definitions/DataStoreFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataStores_ListByDataManagerGET151": { + "$ref": "./examples/DataStores_ListByDataManager-GET-example-151.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStores/{dataStoreName}": { + "get": { + "tags": [ + "DataStores" + ], + "description": "This method gets the data store/repository by name.", + "operationId": "DataStores_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data store/repository which matches the name given.", + "schema": { + "$ref": "#/definitions/DataStore" + } + } + }, + "x-ms-examples": { + "DataStores_GetGET161": { + "$ref": "./examples/DataStores_Get-GET-example-161.json" + }, + "DataStores_GetGET162": { + "$ref": "./examples/DataStores_Get-GET-example-162.json" + } + } + }, + "put": { + "tags": [ + "DataStores" + ], + "description": "Creates or updates the data store/repository in the data manager.", + "operationId": "DataStores_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "dataStore", + "in": "body", + "description": "The data store/repository object to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/DataStore" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Completed request for Create/Update. Returns the Data Store/Repository object.", + "schema": { + "$ref": "#/definitions/DataStore" + } + }, + "202": { + "description": "Accepted request for create/update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataStores_CreateOrUpdate_DataSinkPUT162": { + "$ref": "./examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json" + }, + "DataStores_CreateOrUpdate_DataSourcePUT162": { + "$ref": "./examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json" + } + } + }, + "delete": { + "tags": [ + "DataStores" + ], + "description": "This method deletes the given data store/repository.", + "operationId": "DataStores_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for DataStore deletion." + }, + "204": { + "description": "Completed request for Delete Data Store." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataStores_Delete_DataSinkDELETE161": { + "$ref": "./examples/DataStores_Delete_DataSink-DELETE-example-161.json" + }, + "DataStores_Delete_DataSourceDELETE161": { + "$ref": "./examples/DataStores_Delete_DataSource-DELETE-example-161.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStoreTypes": { + "get": { + "tags": [ + "DataStoreTypes" + ], + "description": "Gets all the data store/repository types that the resource supports.", + "operationId": "DataStoreTypes_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of data store types that are supported.", + "schema": { + "$ref": "#/definitions/DataStoreTypeList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataStoreTypes_ListByDataManagerGET171": { + "$ref": "./examples/DataStoreTypes_ListByDataManager-GET-example-171.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStoreTypes/{dataStoreTypeName}": { + "get": { + "tags": [ + "DataStoreTypes" + ], + "description": "Gets the data store/repository type given its name.", + "operationId": "DataStoreTypes_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreTypeName", + "in": "path", + "description": "The data store/repository type name for which details are needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data store/repository type.", + "schema": { + "$ref": "#/definitions/DataStoreType" + } + } + }, + "x-ms-examples": { + "DataStoreTypes_GetGET182": { + "$ref": "./examples/DataStoreTypes_Get-GET-example-182.json" + }, + "DataStoreTypes_GetGET183": { + "$ref": "./examples/DataStoreTypes_Get-GET-example-183.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/jobDefinitions": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets all the job definitions of the given data manager resource.", + "operationId": "JobDefinitions_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of job definitions in that resource.", + "schema": { + "$ref": "#/definitions/JobDefinitionList" + } + } + }, + "x-ms-odata": "#/definitions/JobDefinitionFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobDefinitions_ListByDataManagerGET191": { + "$ref": "./examples/JobDefinitions_ListByDataManager-GET-example-191.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs at the data manager resource level.", + "operationId": "Jobs_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs in the resource specified.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByDataManagerGET201": { + "$ref": "./examples/Jobs_ListByDataManager-GET-example-201.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/publicKeys": { + "get": { + "tags": [ + "PublicKeys" + ], + "description": "This method gets the list view of public keys, however it will only have one element.", + "operationId": "PublicKeys_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of public keys.", + "schema": { + "$ref": "#/definitions/PublicKeyList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "PublicKeys_ListByDataManagerGET211": { + "$ref": "./examples/PublicKeys_ListByDataManager-GET-example-211.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/publicKeys/{publicKeyName}": { + "get": { + "tags": [ + "PublicKeys" + ], + "description": "This method gets the public keys.", + "operationId": "PublicKeys_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "publicKeyName", + "in": "path", + "description": "Name of the public key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public keys.", + "schema": { + "$ref": "#/definitions/PublicKey" + } + } + }, + "x-ms-examples": { + "PublicKeys_GetGET222": { + "$ref": "./examples/PublicKeys_Get-GET-example-222.json" + } + } + } + } + }, + "definitions": { + "AvailableProviderOperation": { + "description": "Class represents provider operation", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Gets or Sets Name of the operations", + "type": "string" + }, + "display": { + "$ref": "#/definitions/AvailableProviderOperationDisplay", + "description": "Gets or sets Display information\r\nContains the localized display information for this particular operation/action" + }, + "origin": { + "description": "Gets or sets Origin\r\nThe intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX.\r\nDefault value is “user,system”", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/AvailableProviderOperationProperties", + "description": "Gets or sets Properties\r\nReserved for future use", + "x-ms-client-flatten": true + } + } + }, + "AvailableProviderOperationDisplay": { + "description": "Contains the localized display information for this particular operation / action. \r\nThese value will be used by several clients for \r\n(1) custom role definitions for RBAC; \r\n(2) complex query filters for the event service; and (3) audit history / records for management operations.", + "type": "object", + "properties": { + "provider": { + "description": "Gets or sets Provider\r\nThe localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. \r\nIt should use Title Casing and begin with “Microsoft” for 1st party services.", + "type": "string" + }, + "resource": { + "description": "Gets or sets Resource\r\nThe localized friendly form of the resource type related to this action/operation – it should match the public documentation for the resource provider. \r\nIt should use Title Casing – for examples, please refer to the “name” section.", + "type": "string" + }, + "operation": { + "description": "Gets or sets Operation\r\nThe localized friendly name for the operation, as it should be shown to the user. \r\nIt should be concise (to fit in drop downs) but clear (i.e. self-documenting). It should use Title Casing and include the entity/resource to which it applies.", + "type": "string" + }, + "description": { + "description": "Gets or sets Description\r\nThe localized friendly description for the operation, as it should be shown to the user. \r\nIt should be thorough, yet concise – it will be used in tool tips and detailed views.", + "type": "string" + } + } + }, + "AvailableProviderOperationProperties": { + "description": "Class represents Properties in AvailableProviderOperations", + "type": "object", + "properties": {} + }, + "AvailableProviderOperations": { + "description": "Class for set of operations used for discovery of available provider operations.", + "type": "object", + "properties": { + "value": { + "description": "List of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/AvailableProviderOperation" + } + }, + "nextLink": { + "description": "Link for the next set of operations.", + "type": "string" + } + } + }, + "CustomerSecret": { + "description": "The pair of customer secret.", + "required": [ + "keyIdentifier", + "keyValue", + "algorithm" + ], + "type": "object", + "properties": { + "keyIdentifier": { + "description": "The identifier to the data service input object which this secret corresponds to.", + "type": "string" + }, + "keyValue": { + "description": "It contains the encrypted customer secret.", + "type": "string" + }, + "algorithm": { + "description": "The encryption algorithm used to encrypt data.", + "enum": [ + "None", + "RSA1_5", + "RSA_OAEP", + "PlainText" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedAlgorithm", + "modelAsString": false + } + } + } + }, + "DataManager": { + "description": "The DataManager resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "etag": { + "description": "Etag of the Resource.", + "type": "string" + } + } + }, + "DataManagerList": { + "description": "DataManager resources Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data manager resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DataManager" + } + }, + "nextLink": { + "description": "Link for the next set of data stores.", + "type": "string" + } + } + }, + "DataManagerUpdateParameter": { + "description": "The DataManagerUpdateParameter.", + "type": "object", + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku type." + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource\r\n(across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DataService": { + "description": "Data Service.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataServiceProperties", + "description": "DataService properties.", + "x-ms-client-flatten": true + } + } + }, + "DataServiceList": { + "description": "Data Service Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data services.", + "type": "array", + "items": { + "$ref": "#/definitions/DataService" + } + }, + "nextLink": { + "description": "Link for the next set of data services.", + "type": "string" + } + } + }, + "DataServiceProperties": { + "description": "Data Service properties.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "State of the data service.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "supportedDataSinkTypes": { + "description": "Supported data store types which can be used as a sink.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedDataSourceTypes": { + "description": "Supported data store types which can be used as a source.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DataStore": { + "description": "Data store.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataStoreProperties", + "description": "DataStore properties.", + "x-ms-client-flatten": true + } + } + }, + "DataStoreFilter": { + "description": "Contains the information about the filters for the DataStore.", + "type": "object", + "properties": { + "dataStoreTypeId": { + "description": "The data store type id.", + "type": "string" + } + } + }, + "DataStoreList": { + "description": "Data Store Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data stores.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStore" + } + }, + "nextLink": { + "description": "Link for the next set of data stores.", + "type": "string" + } + } + }, + "DataStoreProperties": { + "description": "Data Store for sources and sinks", + "required": [ + "state", + "dataStoreTypeId" + ], + "type": "object", + "properties": { + "repositoryId": { + "description": "Arm Id for the manager resource to which the data source is associated. This is optional.", + "type": "string" + }, + "state": { + "description": "State of the data source.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "extendedProperties": { + "description": "A generic json used differently by each data source type.", + "type": "object" + }, + "dataStoreTypeId": { + "description": "The arm id of the data store type.", + "type": "string" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "DataStoreType": { + "description": "Data Store Type.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataStoreTypeProperties", + "description": "DataStoreType properties.", + "x-ms-client-flatten": true + } + } + }, + "DataStoreTypeList": { + "description": "Data Store Type Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of DataStoreType.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStoreType" + } + }, + "nextLink": { + "description": "Link for the next set of data store types.", + "type": "string" + } + } + }, + "DataStoreTypeProperties": { + "description": "Data Store Type properties.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "repositoryType": { + "description": "Arm type for the manager resource to which the data source type is associated. This is optional.", + "type": "string" + }, + "state": { + "description": "State of the data store type.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "supportedDataServicesAsSink": { + "description": "Supported data services where it can be used as a sink.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedDataServicesAsSource": { + "description": "Supported data services where it can be used as a source.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DmsBaseObject": { + "description": "Base class for all objects under DataManager Service", + "type": "object", + "properties": { + "name": { + "description": "Name of the object.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the object.", + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "description": "Top level error for the job.", + "required": [ + "code" + ], + "type": "object", + "properties": { + "code": { + "description": "Error code that can be used to programmatically identify the error.", + "type": "string" + }, + "message": { + "description": "Describes the error in detail and provides debugging information.", + "type": "string" + } + } + }, + "ErrorDetails": { + "description": "Error Details", + "type": "object", + "properties": { + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "recommendedAction": { + "description": "Recommended action for the error.", + "type": "string" + }, + "exceptionMessage": { + "description": "Contains the non localized exception message", + "type": "string" + } + } + }, + "Job": { + "description": "Data service job.", + "required": [ + "status", + "startTime", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "status": { + "description": "Status of the job.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "Time at which the job was started in UTC ISO 8601 format.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Time at which the job ended in UTC ISO 8601 format.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "Job properties.", + "x-ms-client-flatten": true + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Top level error for the job." + } + } + }, + "JobDefinition": { + "description": "Job Definition.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobDefinitionProperties", + "description": "JobDefinition properties.", + "x-ms-client-flatten": true + } + } + }, + "JobDefinitionFilter": { + "description": "Contains the supported job definition filters.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "The state of the job definition.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "dataSource": { + "description": "The data source associated with the job definition", + "type": "string" + }, + "lastModified": { + "format": "date-time", + "description": "The last modified date time of the data source.", + "type": "string" + } + } + }, + "JobDefinitionList": { + "description": "Job Definition Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of job definitions.", + "type": "array", + "items": { + "$ref": "#/definitions/JobDefinition" + } + }, + "nextLink": { + "description": "Link for the next set of job definitions.", + "type": "string" + } + } + }, + "JobDefinitionProperties": { + "description": "Job Definition", + "required": [ + "dataSourceId", + "dataSinkId", + "state" + ], + "type": "object", + "properties": { + "dataSourceId": { + "description": "Data Source Id associated to the job definition.", + "type": "string" + }, + "dataSinkId": { + "description": "Data Sink Id associated to the job definition.", + "type": "string" + }, + "schedules": { + "description": "Schedule for running the job definition", + "type": "array", + "items": { + "$ref": "#/definitions/Schedule" + } + }, + "state": { + "description": "State of the job definition.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "lastModifiedTime": { + "format": "date-time", + "description": "Last modified time of the job definition.", + "type": "string" + }, + "runLocation": { + "description": "This is the preferred geo location for the job to run.", + "enum": [ + "none", + "australiaeast", + "australiasoutheast", + "brazilsouth", + "canadacentral", + "canadaeast", + "centralindia", + "centralus", + "eastasia", + "eastus", + "eastus2", + "japaneast", + "japanwest", + "koreacentral", + "koreasouth", + "southeastasia", + "southcentralus", + "southindia", + "northcentralus", + "northeurope", + "uksouth", + "ukwest", + "westcentralus", + "westeurope", + "westindia", + "westus", + "westus2" + ], + "type": "string", + "x-ms-enum": { + "name": "RunLocation", + "modelAsString": false + } + }, + "userConfirmation": { + "description": "Enum to detect if user confirmation is required. If not passed will default to NotRequired.", + "default": "NotRequired", + "enum": [ + "NotRequired", + "Required" + ], + "type": "string", + "x-ms-enum": { + "name": "UserConfirmation", + "modelAsString": false + } + }, + "dataServiceInput": { + "description": "A generic json used differently by each data service type.", + "type": "object" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "JobDetails": { + "description": "Job details.", + "type": "object", + "properties": { + "jobStages": { + "description": "List of stages that ran in the job", + "type": "array", + "items": { + "$ref": "#/definitions/JobStages" + } + }, + "jobDefinition": { + "$ref": "#/definitions/JobDefinition", + "description": "JobDefinition at the time of the run" + }, + "errorDetails": { + "description": "Error details for failure. This is optional.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "itemDetailsLink": { + "description": "Item Details Link to download files or see details", + "type": "string" + } + } + }, + "JobFilter": { + "description": "Contains the information about the filters for the job.", + "required": [ + "status" + ], + "type": "object", + "properties": { + "status": { + "description": "The status of the job.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "The start time of the job.", + "type": "string" + } + } + }, + "JobList": { + "description": "Job Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + } + }, + "nextLink": { + "description": "Link for the next set of jobs.", + "type": "string" + } + } + }, + "JobProperties": { + "description": "Job Properties", + "required": [ + "isCancellable" + ], + "type": "object", + "properties": { + "isCancellable": { + "description": "Describes whether the job is cancellable.", + "enum": [ + "NotCancellable", + "Cancellable" + ], + "type": "string", + "x-ms-enum": { + "name": "IsJobCancellable", + "modelAsString": false + } + }, + "bytesProcessed": { + "format": "int64", + "description": "Number of bytes processed by the job as of now.", + "type": "integer" + }, + "itemsProcessed": { + "format": "int64", + "description": "Number of items processed by the job as of now", + "type": "integer" + }, + "totalBytesToProcess": { + "format": "int64", + "description": "Number of bytes to be processed by the job in total.", + "type": "integer" + }, + "totalItemsToProcess": { + "format": "int64", + "description": "Number of items to be processed by the job in total", + "type": "integer" + }, + "details": { + "$ref": "#/definitions/JobDetails", + "description": "Details of a job run. This field will only be sent for expand details filter." + }, + "dataSourceName": { + "description": "Name of the data source on which the job was triggered.", + "type": "string" + }, + "dataSinkName": { + "description": "Name of the data sink on which the job was triggered.", + "type": "string" + } + } + }, + "JobStages": { + "description": "Job stages.", + "required": [ + "stageStatus" + ], + "type": "object", + "properties": { + "stageName": { + "description": "Name of the job stage.", + "type": "string" + }, + "stageStatus": { + "description": "Status of the job stage.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "jobStageDetails": { + "description": "Job Stage Details", + "type": "object" + }, + "errorDetails": { + "description": "Error details for the stage. This is optional", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "Key": { + "description": "Encryption Key.", + "required": [ + "keyModulus", + "keyExponent", + "encryptionChunkSizeInBytes" + ], + "type": "object", + "properties": { + "keyModulus": { + "description": "Modulus of the encryption key.", + "type": "string" + }, + "keyExponent": { + "description": "Exponent of the encryption key.", + "type": "string" + }, + "encryptionChunkSizeInBytes": { + "format": "int32", + "description": "The maximum byte size that can be encrypted by the key. For a key size larger than the size, break into chunks and encrypt each chunk, append each encrypted chunk with : to mark the end of the chunk.", + "type": "integer" + } + } + }, + "PublicKey": { + "description": "Public key", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PublicKeyProperties", + "description": "Public key property.", + "x-ms-client-flatten": true + } + } + }, + "PublicKeyList": { + "description": "PublicKey Collection", + "type": "object", + "properties": { + "value": { + "description": "List of public keys.", + "type": "array", + "items": { + "$ref": "#/definitions/PublicKey" + } + }, + "nextLink": { + "description": "Link for the next set of public keys.", + "type": "string" + } + } + }, + "PublicKeyProperties": { + "description": "PublicKey Properties", + "required": [ + "dataServiceLevel1Key", + "dataServiceLevel2Key" + ], + "type": "object", + "properties": { + "dataServiceLevel1Key": { + "$ref": "#/definitions/Key", + "description": "Level one public key for encryption" + }, + "dataServiceLevel2Key": { + "$ref": "#/definitions/Key", + "description": "Level two public key for encryption" + } + } + }, + "Resource": { + "description": "Model of the Resource.", + "required": [ + "location" + ], + "type": "object", + "properties": { + "id": { + "description": "The Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Resource Name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The Resource type.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East\r\nUS, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo\r\nregion is specified on update the request will succeed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource\r\n(across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku type." + } + }, + "x-ms-azure-resource": true + }, + "RunParameters": { + "description": "Run parameters for a job.", + "type": "object", + "properties": { + "userConfirmation": { + "description": "Enum to detect if user confirmation is required. If not passed will default to NotRequired.", + "default": "NotRequired", + "enum": [ + "NotRequired", + "Required" + ], + "type": "string", + "x-ms-enum": { + "name": "UserConfirmation", + "modelAsString": false + } + }, + "dataServiceInput": { + "description": "A generic json used differently by each data service type.", + "type": "object" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "Schedule": { + "description": "Schedule for the job run.", + "type": "object", + "properties": { + "name": { + "description": "Name of the schedule.", + "type": "string" + }, + "policyList": { + "description": "A list of repetition intervals in ISO 8601 format.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Sku": { + "description": "The sku type.", + "type": "object", + "properties": { + "name": { + "description": "The sku name. Required for data manager creation, optional for update.", + "type": "string" + }, + "tier": { + "description": "The sku tier. This is based on the SKU name.", + "type": "string" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API Version", + "required": true, + "type": "string" + }, + "dataManagerNameParameter": { + "name": "dataManagerName", + "in": "path", + "description": "The name of the DataManager Resource within the specified resource group. DataManager names must be between 3 and 24 characters in length and use any alphanumeric and underscore only", + "required": true, + "type": "string", + "maxLength": 24, + "minLength": 3, + "pattern": "^[-\\w\\.]+$", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The Resource Group Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Subscription Id", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/hybriddatamanager/resource-manager/readme.go.md b/specification/hybriddatamanager/resource-manager/readme.go.md index e4bc8ccadfce..02bb59efe6d8 100644 --- a/specification/hybriddatamanager/resource-manager/readme.go.md +++ b/specification/hybriddatamanager/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2019-06 - tag: package-2016-06 ``` +### Tag: package-2019-06 and go + +These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2019-06' && $(go) +output-folder: $(go-sdk-folder)/services/hybriddatamanager/mgmt/2019-06-01/$(namespace) +``` + ### Tag: package-2016-06 and go These settings apply only when `--tag=package-2016-06 --go` is specified on the command line. diff --git a/specification/hybriddatamanager/resource-manager/readme.md b/specification/hybriddatamanager/resource-manager/readme.md index ed026f8c21b5..d05458e528e2 100644 --- a/specification/hybriddatamanager/resource-manager/readme.md +++ b/specification/hybriddatamanager/resource-manager/readme.md @@ -24,6 +24,25 @@ To see additional help and options, run: ### Basic Information These are the global settings for the HybridDataManager API. +``` yaml +openapi-type: arm +tag: package-2019-06 +``` + + +### Tag: package-2019-06 + +These settings apply only when `--tag=package-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06' +input-file: +- Microsoft.HybridData/stable/2019-06-01/hybriddata.json +directive: + - suppress: + - R1001 #to suppress (OperationIdNounVerb/R1001/SDKViolation) + - R2062 #to suppress (XmsResourceInPutResponse/R2062/ARMViolation) +``` + ``` yaml openapi-type: arm tag: package-2016-06 @@ -143,6 +162,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.HybridData/stable/2019-06-01/hybriddata.json - $(this-folder)/Microsoft.HybridData/stable/2016-06-01/hybriddata.json ``` diff --git a/specification/hybriddatamanager/resource-manager/readme.ruby.md b/specification/hybriddatamanager/resource-manager/readme.ruby.md index 02e45f681f87..491295393d0b 100644 --- a/specification/hybriddatamanager/resource-manager/readme.ruby.md +++ b/specification/hybriddatamanager/resource-manager/readme.ruby.md @@ -13,9 +13,20 @@ ruby: ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2019-06 - tag: package-2016-06 ``` +### Tag: package-2019-06 and ruby + +These settings apply only when `--tag=package-2019-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-06' && $(ruby) +namespace: "Azure::HybridDataManager::Mgmt::V2019-06-01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybriddatamanager/lib +``` + ### Tag: package-2016-06 and ruby These settings apply only when `--tag=package-2016-06 --ruby` is specified on the command line. diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json new file mode 100644 index 000000000000..831f3567dbf4 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json @@ -0,0 +1,690 @@ +{ + "swagger": "2.0", + "info": { + "title": "KubernetesConnectRPClient", + "version": "2020-01-01-preview", + "description": "Azure Connected Cluster Resource Provider API for adopting any Kubernetes Cluster" + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "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.Kubernetes/connectedClusters/{clusterName}": { + "put": { + "summary": "Register a new Kubernetes cluster with Azure Resource Manager.", + "operationId": "ConnectedCluster_Create", + "description": "API to register a new Kubernetes cluster and create a tracked resource in Azure Resource Manager (ARM).", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "CreateClusterExample": { + "$ref": "./examples/CreateClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedCluster", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedCluster" + }, + "description": "Parameters supplied to Create a Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "201": { + "description": "Resource creation request accepted", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "summary": "Updates a connected cluster.", + "operationId": "ConnectedCluster_Update", + "description": "API to update certain properties of the connected cluster resource", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "UpdateClusterExample": { + "$ref": "./examples/UpdateClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedClusterPatch", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedClusterPatch" + }, + "description": "Parameters supplied to update Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "summary": "Get the properties of the specified connected cluster.", + "operationId": "ConnectedCluster_Get", + "description": "Returns the properties of the specified connected cluster, including name, identity, properties, and additional cluster details.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClusterExample": { + "$ref": "./examples/GetClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "Resource retrieved successfully.", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "summary": "Delete a connected cluster.", + "operationId": "ConnectedCluster_Delete", + "description": "Delete a connected cluster, removing the tracked resource in Azure Resource Manager (ARM).", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "DeleteClusterExample": { + "$ref": "./examples/DeleteClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Resource deletion is in progress" + }, + "204": { + "description": "The resource was not found but the request is well formed" + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters/{clusterName}/listClusterUserCredentials": { + "post": { + "summary": "Gets cluster user credentials of a connected cluster", + "operationId": "ConnectedCluster_ListClusterUserCredentials", + "description": "Gets cluster user credentials of the connected cluster with a specified resource group and name.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "ListClusterUserCredentialsExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialsResult.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters", + "operationId": "ConnectedCluster_ListByResourceGroup", + "description": "API to enumerate registered connected K8s clusters under a Resource Group", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersExample": { + "$ref": "./examples/GetClustersByResourceGroupExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters", + "operationId": "ConnectedCluster_ListBySubscription", + "description": "API to enumerate registered connected K8s clusters under a Subscription", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersExample": { + "$ref": "./examples/GetClustersBySubscriptionExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Kubernetes/operations": { + "get": { + "description": "Lists all of the available API operations for Connected Cluster resource.", + "operationId": "Operations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListConnectedClusterOperationsExample": { + "$ref": "./examples/ListConnectedClusterOperationsExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationList": { + "description": "The paginated list of connected cluster API operations.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "The list of connected cluster API operations." + }, + "nextLink": { + "type": "string", + "description": "The link to fetch the next page of connected cluster API operations." + } + } + }, + "Operation": { + "type": "object", + "description": "The Connected cluster API operation", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {Microsoft.Kubernetes}/{resource}/{operation}" + }, + "display": { + "readOnly": true, + "description": "The object that represents the operation.", + "properties": { + "provider": { + "type": "string", + "description": "Service provider: Microsoft.connectedClusters" + }, + "resource": { + "type": "string", + "description": "Connected Cluster Resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "Operation type: Read, write, delete, etc." + }, + "description": { + "type": "string", + "description": "Description of the operation." + } + } + } + } + }, + "ConnectedClusterList": { + "description": "The paginated list of connected Clusters", + "type": "object", + "properties": { + "value": { + "description": "The list of connected clusters", + "type": "array", + "items": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "nextLink": { + "description": "The link to fetch the next page of connected cluster", + "type": "string" + } + } + }, + "ConnectedCluster": { + "type": "object", + "required": [ + "properties", + "identity" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ConnectedClusterIdentity", + "description": "The identity of the connected cluster." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterProperties", + "description": "Describes the connected cluster resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Represents a connected cluster." + }, + "ConnectedClusterIdentity": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of connected cluster identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the connected cluster. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the connected cluster. The type 'SystemAssigned, includes a system created identity. The type 'None' means no identity is assigned to the connected cluster.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the connected cluster." + }, + "ConnectedClusterProperties": { + "type": "object", + "required": [ + "agentPublicKeyCertificate", + "aadProfile" + ], + "properties": { + "agentPublicKeyCertificate": { + "type": "string", + "description": "Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure." + }, + "aadProfile": { + "$ref": "#/definitions/ConnectedClusterAADProfile" + }, + "kubernetesVersion": { + "readOnly": true, + "type": "string", + "description": "The Kubernetes version of the connected cluster resource" + }, + "totalNodeCount": { + "readOnly": true, + "type": "integer", + "description": "Number of nodes present in the connected cluster resource" + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "Version of the agent running on the connected cluster resource" + }, + "provisioningState": { + "$ref": "#/definitions/ConnectedClusterProvisioningState" + } + } + }, + "CredentialResults": { + "properties": { + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "ConnectedClusterAADProfile": { + "type": "object", + "required": [ + "tenantId", + "clientAppId", + "serverAppId" + ], + "properties": { + "tenantId": { + "type": "string", + "description": "The aad tenant id which is configured on target K8s cluster" + }, + "clientAppId": { + "type": "string", + "description": "The client app id configured on target K8 cluster " + }, + "serverAppId": { + "type": "string", + "description": "The server app id to access AD server" + } + } + }, + "ConnectedClusterProvisioningState": { + "type": "string", + "description": "The current deployment state of connectedClusters.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Provisioning", + "Updating", + "Deleting", + "Accepted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ConnectedClusterPatch": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterPatchProperties", + "description": "Describes the connected cluster resource properties that can be updated during PATCH operation." + } + }, + "description": "Object containing updates for patch operations." + }, + "ConnectedClusterPatchProperties": { + "type": "object", + "properties": { + "agentPublicKeyCertificate": { + "type": "string", + "description": "Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure." + } + } + }, + "ErrorResponse": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The error response details containing error code and error message", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ClusterNamePathParam": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Kubernetes cluster on which get is called.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json new file mode 100644 index 000000000000..86e32e51ea00 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "YXBpVmVyc2lvbjogdjENCmNsdXN0ZXJzOg0KLSBjbHVzdGVyOg0KICAgIGNlcnRpZmljYXRlLWF1dGhvcml0eS1kYXRhOiBMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1VWNGVrTkRRWEVyWjBGM1NVSkJaMGxSVTJ0dVdsWnZaekp1VmpKVmNYZEtjblZYTTFCSGVrRk9RbWRyY1docmFVYzVkekJDUVZGelJrRkVRVTRLVFZGemQwTlJXVVJXVVZGRVJYZEthbGVsSlEwbHFRVTVDWjJ0eGFHdHBSemwzTUVKQlVVVkdRVUZQUTBGbk9FRk5TVWxEUTJkTFEwRm5SVUUwV1hCNUNsUmtUMVJSU1dNdmVsaERlR3hTZWtVMF" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json new file mode 100644 index 000000000000..033ddcd945d1 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + }, + "201": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json new file mode 100644 index 000000000000..5cef979b6395 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json new file mode 100644 index 000000000000..cde2327f4aee --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json new file mode 100644 index 000000000000..4bfe14f142fa --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db48", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + }, + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "0ea9fc98-15d7-498e-833c-8f7207740190", + "clientAppId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.1", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json new file mode 100644 index 000000000000..a0128f14cc55 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + }, + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster2", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "0ea9fc98-15d7-498e-833c-8f7207740190", + "clientAppId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.16.3", + "totalNodeCount": 4, + "agentVersion": "0.1.0" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json new file mode 100644 index 000000000000..2cfea76ffbfa --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Kubernetes/connectedClusters/write", + "display": { + "provider": "Microsoft.connectedClusters", + "resource": "connectedClusters", + "operation": "Create ConnectedCluster", + "description": "Create any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/read", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Get ConnectedCluster", + "description": "Get any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/delete", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Delete ConnectedCluster", + "description": "Delete any ConnectedCluster" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json new file mode 100644 index 000000000000..0dc7871fdba6 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "ConnectedClusterPatch": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO" + } + } + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/readme.csharp.md b/specification/hybridkubernetes/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..e09e4c73fa28 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.csharp.md @@ -0,0 +1,16 @@ + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Kubernetes + output-folder: $(csharp-sdks-folder)/Kubernetes/Management.Kubernetes/Generated +``` diff --git a/specification/hybridkubernetes/resource-manager/readme.go.md b/specification/hybridkubernetes/resource-manager/readme.go.md new file mode 100644 index 000000000000..b5fd96488df7 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview and go + +These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(go) +namespace: hybridkubernetes +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-01-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.java.md b/specification/hybridkubernetes/resource-manager/readme.java.md new file mode 100644 index 000000000000..be92fcf47bdc --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.java.md @@ -0,0 +1,34 @@ + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.hybridkubernetes +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-hybridkubernetes +title: HybridKubernetesManagementClient +description: "Hybrid Kubernetes Client" +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview and java + +These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-01-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.hybridkubernetes.v2020_01_01_preview + output-folder: $(azure-libraries-for-java-folder)/hybridkubernetes/resource-manager/v2020_01_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.md b/specification/hybridkubernetes/resource-manager/readme.md new file mode 100644 index 000000000000..e60faf4e7f2d --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.md @@ -0,0 +1,104 @@ + +# KubernetesConnect + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for hybrid kubernetes. + +## Getting Started + +To build the SDKs for Connected Cluster API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Kubernetes Connect RP. + +```yaml +openapi-type: arm +tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview + +These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-01-01-preview' +input-file: +- Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-ruby + - repo: azure-sdk-for-net + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybridkubernetes'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/privatepreview/2019-09-01-privatepreview/somefile.json +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.nodejs.md b/specification/hybridkubernetes/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..66bc22e0161c --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-hybridkubernetes + output-folder: $(node-sdks-folder)/lib/services/hybridkubernetesManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.python.md b/specification/hybridkubernetes/resource-manager/readme.python.md new file mode 100644 index 000000000000..c9a7c10980ad --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +```yaml $(python) +python: + python-mode: create + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.hybridkubernetes + package-name: azure-mgmt-hybridkubernetes + package-version: 0.1.1 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes/azure/mgmt/hybridkubernetes +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.ruby.md b/specification/hybridkubernetes/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..6bd035dbde51 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.ruby.md @@ -0,0 +1,27 @@ + +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_hybridkubernetes +package-version: 2020-01-01-preview +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview and ruby + +These settings apply only when `--tag=package-2020-01-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(ruby) +namespace: "Azure::Kubernetes::Mgmt::V2020_01_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib +``` diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json index 3a893044eadb..c20bbb54691b 100644 --- a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json @@ -72,7 +72,10 @@ { "type": "SharedImage", "galleryImageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/gallery/baseimages/images/baseimage", - "replicationRegions":[ "eastus", "westus"], + "replicationRegions": [ + "eastus", + "westus" + ], "runOutputName": "gallery" } ], diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json new file mode 100644 index 000000000000..045174f3c081 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "200": {}, + "204": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json new file mode 100644 index 000000000000..4d620a29b194 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate", + "parameters": { + "location": "westus", + "tags": { + "imagetemplate_tag1": "IT_T1", + "imagetemplate_tag2": "IT_T2" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": {} + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json new file mode 100644 index 000000000000..d3ca6b409151 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate", + "parameters": { + "location": "westus", + "tags": { + "imagetemplate_tag1": "IT_T1", + "imagetemplate_tag2": "IT_T2" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": {} + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "PowerShell", + "name": "PowerShell (inline) Customizer Example", + "inline": [ + "Powershell command-1", + "Powershell command-2", + "Powershell command-3" + ] + }, + { + "type": "PowerShell", + "name": "PowerShell (script) Customizer Example", + "scriptUri": "https://example.com/path/to/script.ps1", + "validExitCodes": [ + 0, + 1 + ] + }, + { + "type": "WindowsRestart", + "name": "Restart Customizer Example", + "restartCommand": "shutdown /f /r /t 0 /c \"packer restart\"", + "restartCheckCommand": "powershell -command \"& {Write-Output 'restarted.'}\"", + "restartTimeout": "10m" + }, + { + "type": "WindowsUpdate", + "name": "Windows Update Customizer Example", + "searchCriteria": "BrowseOnly=0 and IsInstalled=0", + "filters": [ + "$_.BrowseOnly" + ], + "updateLimit": 100 + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json new file mode 100644 index 000000000000..0ae9833a53b9 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + }, + "200": {}, + "204": {} + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json new file mode 100644 index 000000000000..c10a56d9f55e --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json new file mode 100644 index 000000000000..af93537a6335 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "runOutputName": "myManagedImageOutput", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/myManagedImageOutput", + "name": "myManagedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/output_managed_image", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json new file mode 100644 index 000000000000..ae408f0332f8 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myOtherResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/mySecondImageTemplate", + "name": "mySecondImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "PlatformImage", + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "18.04.201902121", + "planInfo": { + "planName": "example_plan_name", + "planProduct": "example_plan_product", + "planPublisher": "example_plan_publisher" + } + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "eastus", + "runOutputName": "eus", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/mySecondImage-eus", + "artifactTags": { + "stage": "development" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D8s_v3", + "osDiskSizeGB": 32 + } + } + } + ], + "nextLink": "/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/imageTemplates?api-version=2018-02-01-preview&skip-token=2" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json new file mode 100644 index 000000000000..679e132cf3c8 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myOtherImageTemplate", + "name": "myOtherImageTemplate", + "location": "eastus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "PlatformImage", + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "18.04.201902121", + "planInfo": { + "planName": "example_plan_name", + "planProduct": "example_plan_product", + "planPublisher": "example_plan_publisher" + } + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "centralus", + "runOutputName": "singleImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/baseimage-cus" + }, + { + "type": "SharedImage", + "galleryImageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/gallery/baseimages/images/baseimage", + "replicationRegions": [ + "eastus", + "westus" + ], + "runOutputName": "gallery", + "excludeFromLatest": true, + "storageAccountType": "Standard_LRS" + } + ], + "vmProfile": { + "vmSize": "Standard_D8s_v3", + "osDiskSizeGB": 64 + } + } + } + ], + "nextLink": "/subscriptions/{subscription-id}/resourceGroup/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates?api-version=2020-02-14&skip-token=2" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json new file mode 100644 index 000000000000..9800dfd27088 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/myManagedImageOutput", + "name": "myManagedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/output_managed_image", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + }, + { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/mySharedImageOutput", + "name": "mySharedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/galleries/Gallery1/images/SharedImageOutput/imageversions/1.2.3", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + } + ], + "nextLink": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs?api-version=2018-02-01-preview&$skipToken=3" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json new file mode 100644 index 000000000000..538fe699cf99 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json new file mode 100644 index 000000000000..e799050e338c --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14", + "parameters": { + "tags": { + "new-tag": "new-value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "tags": { + "new-tag": "new-value" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json new file mode 100644 index 000000000000..af55358db823 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14", + "parameters": { + "identity": { + "type": "None" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "None" + }, + "tags": { + "new-tag": "new-value" + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json new file mode 100644 index 000000000000..bf5741fa8dd5 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json @@ -0,0 +1,1451 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualMachineImageTemplate", + "description": "Virtual Machine Image Template", + "version": "2020-02-14" + }, + "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.VirtualMachineImages/imageTemplates": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_List", + "description": "Gets information about the VM image templates associated with the subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplateListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List images by subscription.": { + "$ref": "./examples/ListImageTemplates.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_ListByResourceGroup", + "description": "Gets information about the VM image templates associated with the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplateListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List images by resource group": { + "$ref": "./examples/ListImageTemplatesByRg.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}": { + "put": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_CreateOrUpdate", + "description": "Create or update a virtual machine image template", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageTemplate" + }, + "description": "Parameters supplied to the CreateImageTemplate operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create an Image Template for Linux.": { + "$ref": "./examples/CreateImageTemplateLinux.json" + }, + "Create an Image Template for Windows.": { + "$ref": "./examples/CreateImageTemplateWindows.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Update", + "description": "Update the tags for this Virtual Machine Image Template", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageTemplateUpdateParameters" + }, + "description": "Additional parameters for Image Template update." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update the tags for an Image Template.": { + "$ref": "./examples/UpdateImageTemplateTags.json" + }, + "Remove identities for an Image Template.": { + "$ref": "./examples/UpdateImageTemplateToRemoveIdentities.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Get", + "description": "Get information about a virtual machine image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Retrieve an Image Template.": { + "$ref": "./examples/GetImageTemplate.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Delete", + "description": "Delete a virtual machine image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "204": { + "description": "NoContent -- VM image template does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Delete an Image Template.": { + "$ref": "./examples/DeleteImageTemplate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/run": { + "post": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Run", + "description": "Create artifacts from a existing image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create image(s) from existing imageTemplate.": { + "$ref": "./examples/RunImageTemplate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/cancel": { + "post": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Cancel", + "description": "Cancel the long running image build based on the image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The long running image build has been canceled." + }, + "202": { + "description": "The request is accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Cancel the image build based on the imageTemplate.": { + "$ref": "./examples/CancelImageBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/runOutputs": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_ListRunOutputs", + "description": "List all run outputs for the specified Image Template resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunOutputCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Retrieve a list of all outputs created by the last run of an Image Template": { + "$ref": "./examples/ListRunOutputs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/runOutputs/{runOutputName}": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_GetRunOutput", + "description": "Get the specified run output for the specified image template resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + }, + { + "$ref": "#/parameters/RunOutputNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunOutput" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Retrieve single runOutput": { + "$ref": "./examples/GetRunOutput.json" + } + } + } + }, + "/providers/Microsoft.VirtualMachineImages/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists available operations for the Microsoft.VirtualMachineImages provider", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ImageTemplateListResult": { + "description": "The result of List image templates operation", + "properties": { + "value": { + "description": "An array of image templates", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + } + }, + "ImageTemplateSource": { + "description": "Describes a virtual machine image source for building, customizing and distributing", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Specifies the type of source image you want to start with." + } + }, + "required": [ + "type" + ] + }, + "ImageTemplatePlatformImageSource": { + "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", + "x-ms-discriminator-value": "PlatformImage", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "publisher": { + "type": "string", + "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "offer": { + "type": "string", + "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "sku": { + "type": "string", + "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "version": { + "type": "string", + "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "planInfo": { + "$ref": "#/definitions/PlatformImagePurchasePlan", + "description": "Optional configuration of purchase plan for platform image." + } + } + }, + "ImageTemplateManagedImageSource": { + "description": "Describes an image source that is a managed image in customer subscription.", + "x-ms-discriminator-value": "ManagedImage", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "imageId": { + "type": "string", + "description": "ARM resource id of the managed image in customer subscription" + } + }, + "required": [ + "imageId" + ] + }, + "ImageTemplateSharedImageVersionSource": { + "description": "Describes an image source that is an image version in a shared image gallery.", + "x-ms-discriminator-value": "SharedImageVersion", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "imageVersionId": { + "type": "string", + "description": "ARM resource id of the image version in the shared image gallery" + } + }, + "required": [ + "imageVersionId" + ] + }, + "ImageTemplateCustomizer": { + "description": "Describes a unit of image customization", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "The type of customization tool you want to use on the Image. For example, \"Shell\" can be shell customizer" + }, + "name": { + "type": "string", + "description": "Friendly Name to provide context on what this customization step does" + } + }, + "required": [ + "type" + ] + }, + "ImageTemplateShellCustomizer": { + "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", + "x-ms-discriminator-value": "Shell", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "scriptUri": { + "type": "string", + "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the shell script provided in the scriptUri field" + }, + "inline": { + "type": "array", + "description": "Array of shell commands to execute", + "items": { + "type": "string" + } + } + } + }, + "ImageTemplateRestartCustomizer": { + "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", + "x-ms-discriminator-value": "WindowsRestart", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "restartCommand": { + "type": "string", + "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']" + }, + "restartCheckCommand": { + "type": "string", + "description": "Command to check if restart succeeded [Default: '']" + }, + "restartTimeout": { + "type": "string", + "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']" + } + } + }, + "ImageTemplateWindowsUpdateCustomizer": { + "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", + "x-ms-discriminator-value": "WindowsUpdate", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "searchCriteria": { + "type": "string", + "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field." + }, + "filters": { + "type": "array", + "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", + "items": { + "type": "string" + } + }, + "updateLimit": { + "type": "integer", + "minimum": 0, + "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)" + } + } + }, + "ImageTemplatePowerShellCustomizer": { + "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", + "x-ms-discriminator-value": "PowerShell", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "scriptUri": { + "type": "string", + "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the power shell script provided in the scriptUri field above" + }, + "inline": { + "type": "array", + "description": "Array of PowerShell commands to execute", + "items": { + "type": "string" + } + }, + "runElevated": { + "type": "boolean", + "description": "If specified, the PowerShell script will be run with elevated privileges" + }, + "validExitCodes": { + "type": "array", + "description": "Valid exit codes for the PowerShell script. [Default: 0]", + "items": { + "type": "integer" + } + } + } + }, + "ImageTemplateFileCustomizer": { + "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", + "x-ms-discriminator-value": "File", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "sourceUri": { + "type": "string", + "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the file provided in the sourceUri field above" + }, + "destination": { + "type": "string", + "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM" + } + } + }, + "ImageTemplateDistributor": { + "type": "object", + "description": "Generic distribution object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of distribution." + }, + "runOutputName": { + "type": "string", + "description": "The name to be used for the associated RunOutput.", + "pattern": "^[A-Za-z0-9-_.]{1,64}$" + }, + "artifactTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor." + } + }, + "required": [ + "type", + "runOutputName" + ] + }, + "ImageTemplateManagedImageDistributor": { + "x-ms-discriminator-value": "ManagedImage", + "description": "Distribute as a Managed Disk Image.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ], + "properties": { + "imageId": { + "type": "string", + "description": "Resource Id of the Managed Disk Image" + }, + "location": { + "type": "string", + "description": "Azure location for the image, should match if image already exists" + } + }, + "required": [ + "imageId", + "location" + ] + }, + "ImageTemplateSharedImageDistributor": { + "x-ms-discriminator-value": "SharedImage", + "description": "Distribute via Shared Image Gallery.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ], + "properties": { + "galleryImageId": { + "type": "string", + "description": "Resource Id of the Shared Image Gallery image" + }, + "replicationRegions": { + "description": "A list of regions that the image will be replicated to", + "type": "array", + "items": { + "type": "string" + } + }, + "excludeFromLatest": { + "type": "boolean", + "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false)." + }, + "storageAccountType": { + "type": "string", + "enum": [ + "Standard_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SharedImageStorageAccountType", + "modelAsString": true + }, + "description": "Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS)." + } + }, + "required": [ + "galleryImageId", + "replicationRegions" + ] + }, + "ImageTemplateVhdDistributor": { + "x-ms-discriminator-value": "VHD", + "description": "Distribute via VHD in a storage account.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ] + }, + "PlatformImagePurchasePlan": { + "description": "Purchase plan configuration for platform image.", + "properties": { + "planName": { + "type": "string", + "description": "Name of the purchase plan." + }, + "planProduct": { + "type": "string", + "description": "Product of the purchase plan." + }, + "planPublisher": { + "type": "string", + "description": "Publisher of the purchase plan." + } + }, + "required": [ + "planName", + "planProduct", + "planPublisher" + ] + }, + "VirtualNetworkConfig": { + "description": "Virtual Network configuration.", + "properties": { + "subnetId": { + "type": "string", + "description": "Resource id of a pre-existing subnet." + } + } + }, + "ImageTemplateVmProfile": { + "description": "Describes the virtual machine used to build, customize and capture images", + "properties": { + "vmSize": { + "type": "string", + "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2)." + }, + "osDiskSizeGB": { + "type": "integer", + "minimum": 0, + "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size." + }, + "vnetConfig": { + "$ref": "#/definitions/VirtualNetworkConfig", + "description": "Optional configuration of the virtual network to use to deploy the build virtual machine in. Omit if no specific virtual network needs to be used." + } + } + }, + "ProvisioningState": { + "type": "string", + "enum": [ + "Creating", + "Updating", + "Succeeded", + "Failed", + "Deleting" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + }, + "description": "Provisioning state of the resource" + }, + "ProvisioningError": { + "description": "Describes the error happened when create or update an image template", + "properties": { + "provisioningErrorCode": { + "type": "string", + "enum": [ + "BadSourceType", + "BadPIRSource", + "BadManagedImageSource", + "BadSharedImageVersionSource", + "BadCustomizerType", + "UnsupportedCustomizerType", + "NoCustomizerScript", + "BadDistributeType", + "BadSharedImageDistribute", + "ServerError", + "Other" + ], + "x-ms-enum": { + "name": "ProvisioningErrorCode", + "modelAsString": true + }, + "description": "Error code of the provisioning failure" + }, + "message": { + "type": "string", + "description": "Verbose error message about the provisioning failure" + } + } + }, + "ImageTemplateLastRunStatus": { + "description": "Describes the latest status of running an image template", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Start time of the last run (UTC)" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "End time of the last run (UTC)" + }, + "runState": { + "type": "string", + "enum": [ + "Running", + "Canceling", + "Succeeded", + "PartiallySucceeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "RunState", + "modelAsString": false + }, + "description": "State of the last run" + }, + "runSubState": { + "type": "string", + "enum": [ + "Queued", + "Building", + "Customizing", + "Distributing" + ], + "x-ms-enum": { + "name": "RunSubState", + "modelAsString": false + }, + "description": "Sub-state of the last run" + }, + "message": { + "type": "string", + "description": "Verbose information about the last run state" + } + } + }, + "ImageTemplateProperties": { + "description": "Describes the properties of an image template", + "properties": { + "source": { + "$ref": "#/definitions/ImageTemplateSource", + "description": "Specifies the properties used to describe the source image." + }, + "customize": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplateCustomizer" + }, + "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc" + }, + "distribute": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplateDistributor" + }, + "description": "The distribution targets where the image output needs to go to." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource", + "readOnly": true + }, + "provisioningError": { + "$ref": "#/definitions/ProvisioningError", + "description": "Provisioning error, if any", + "readOnly": true + }, + "lastRunStatus": { + "$ref": "#/definitions/ImageTemplateLastRunStatus", + "description": "State of 'run' that is currently executing or was last executed.", + "readOnly": true + }, + "buildTimeoutInMinutes": { + "type": "integer", + "minimum": 0, + "maximum": 960, + "description": "Maximum duration to wait while building the image template. Omit or specify 0 to use the default (4 hours)." + }, + "vmProfile": { + "$ref": "#/definitions/ImageTemplateVmProfile", + "description": "Describes how virtual machine is set up to build images" + } + }, + "required": [ + "source", + "distribute" + ] + }, + "ImageTemplateIdentity": { + "properties": { + "type": { + "type": "string", + "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", + "enum": [ + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the image template. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the image template." + }, + "RunOutputProperties": { + "description": "Describes the properties of a run output", + "properties": { + "artifactId": { + "type": "string", + "description": "The resource id of the artifact." + }, + "artifactUri": { + "type": "string", + "description": "The location URI of the artifact." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource", + "readOnly": true + } + } + }, + "ImageTemplate": { + "description": "Image template is an ARM resource managed by Microsoft.VirtualMachineImages provider", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageTemplateProperties", + "description": "The properties of the image template" + }, + "identity": { + "$ref": "#/definitions/ImageTemplateIdentity", + "description": "The identity of the image template, if configured." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "identity" + ] + }, + "ImageTemplateUpdateParameters": { + "properties": { + "identity": { + "$ref": "#/definitions/ImageTemplateIdentity", + "description": "The identity of the image template, if configured." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The user-specified tags associated with the image template." + } + }, + "description": "Parameters for updating an image template." + }, + "RunOutput": { + "description": "Represents an output that was created by running an image template.", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RunOutputProperties", + "x-ms-client-flatten": true, + "description": "The properties of the run output" + } + } + }, + "RunOutputCollection": { + "description": "The result of List run outputs operation", + "properties": { + "value": { + "description": "An array of run outputs", + "type": "array", + "items": { + "$ref": "#/definitions/RunOutput" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "description": "The Sub Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "required": [ + "name" + ] + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete, or listKeys/action", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object" + }, + "isDataAction": { + "title": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean" + } + } + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptionType": { + "type": "string", + "description": "The exception type." + }, + "errorDetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innerError": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription Id forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ImageTemplateNameParameter": { + "name": "imageTemplateName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image Template", + "pattern": "^[A-Za-z0-9-_.]{1,64}$", + "x-ms-parameter-location": "method" + }, + "RunOutputNameParameter": { + "name": "runOutputName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the run output", + "pattern": "^[A-Za-z0-9-_.]{1,64}$", + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Location of the service.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/imagebuilder/resource-manager/readme.go.md b/specification/imagebuilder/resource-manager/readme.go.md index 93711868114b..c006a0d7bdcf 100644 --- a/specification/imagebuilder/resource-manager/readme.go.md +++ b/specification/imagebuilder/resource-manager/readme.go.md @@ -12,11 +12,21 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-02 - tag: package-2018-02 - tag: package-2019-02 - tag: package-preview-2019-05 ``` +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-02' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-01/$(namespace) +``` + ### Tag: package-2018-02 These settings apply only when `--tag=package-2018-02 --go` is specified on the command line. diff --git a/specification/imagebuilder/resource-manager/readme.md b/specification/imagebuilder/resource-manager/readme.md index 6bf671ebfe8e..9d1af6e035c1 100644 --- a/specification/imagebuilder/resource-manager/readme.md +++ b/specification/imagebuilder/resource-manager/readme.md @@ -28,19 +28,28 @@ These are the global settings for the Virtual Machine Image Builder API. title: ImageBuilderClient description: Azure Virtual Machine Image Builder Client openapi-type: arm -tag: package-preview-2019-05 +tag: package-2020-02 azure-arm: true ``` +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +```yaml $(tag) == 'package-2020-02' +input-file: + - Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json +``` ### Tag: package-preview-2019-05 These settings apply only when `--tag=package-preview-2019-05` is specified on the command line. -```yaml $(tag) == 'package-preview-2019-05' +``` yaml $(tag) == 'package-preview-2019-05' input-file: - Microsoft.VirtualMachineImages/preview/2019-05-01-preview/imagebuilder.json ``` + ### Tag: package-2018-02 These settings apply only when `--tag=package-2018-02` is specified on the command line. @@ -156,7 +165,7 @@ regenerate-manager: true generate-interface: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -168,17 +177,17 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json - $(this-folder)/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/imagebuilder.json - $(this-folder)/Microsoft.VirtualMachineImages/preview/2018-02-01-preview/imagebuilder.json - $(this-folder)/Microsoft.VirtualMachineImages/preview/2019-02-01-preview/imagebuilder.json ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json index 451ef32d72c5..fca7fc82f2c1 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json @@ -9,7 +9,7 @@ "responses": { "200": { "body": { - "idScope": "0ne0005F266", + "idScope": "", "symmetricKey": { "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json new file mode 100644 index 000000000000..42fdabd7c518 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json @@ -0,0 +1,27 @@ +{ + "title": "Set device attestation - Symmetric key", + "description": "Creates or updates the symmetric key attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat", + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", + "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + } + } + }, + "responses": { + "200": { + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", + "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json new file mode 100644 index 000000000000..35fb1496150d --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json @@ -0,0 +1,25 @@ +{ + "title": "Set device attestation - TPM", + "description": "Creates or updates the TPM attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat", + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + } + } + }, + "responses": { + "200": { + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json similarity index 85% rename from specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set.json rename to specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json index e86eff41a42d..c468cbb516a1 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json @@ -1,6 +1,6 @@ { - "title": "Set device attestation", - "description": "Creates or updates the attestation for a device.", + "title": "Set device attestation - X509", + "description": "Creates or updates the X509 attestation for a device.", "parameters": { "centralDnsSuffixInPath": "azureiotcentral.com", "subdomain": "appsubdomain", diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json new file mode 100644 index 000000000000..3b9d697a25f8 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commands_send.json @@ -0,0 +1,26 @@ +{ + "title": "Send command", + "description": "Send a command to a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "Camera", + "component_name": "componentA", + "command_name": "Reboot", + "body": { + "request": { + "SafeMode": true + } + } + }, + "responses": { + "201": { + "body": { + "request": { + "SafeMode": true + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json new file mode 100644 index 000000000000..691d91a1f005 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_commandshistory_get.json @@ -0,0 +1,24 @@ +{ + "title": "Get command history within a module", + "description": "Get the most recent invocaion of a command from within a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "camera", + "component_name": "componentA", + "command_name": "AdjustFrameRate" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "response": "Success", + "responseCode": 200 + } + ] + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json new file mode 100644 index 000000000000..8bbd4a655aab --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_get.json @@ -0,0 +1,32 @@ +{ + "title": "Get device properties", + "description": "Get the current values of all device properties.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "module_env", + "component_name": "componentA" + }, + "responses": { + "200": { + "body": { + "SensitivityDial": 50, + "Status": 66.82181229066656, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:09:25.1151948Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json new file mode 100644 index 000000000000..893cd68093bd --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_components_set.json @@ -0,0 +1,31 @@ +{ + "title": "Update properties of a module within a component", + "description": "Update the values of read-write properties of a module within a single component", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "module_env", + "component_name": "componentA", + "body": { + "SensitivityDial": 300 + } + }, + "responses": { + "202": { + "body": { + "SensitivityDial": 50, + "$metadata": { + "SensitivityDial": { + "desiredValue": 300, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json new file mode 100644 index 000000000000..9c90e967c92f --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_get.json @@ -0,0 +1,33 @@ +{ + "title": "Get properties of a module", + "description": "Get the current values of all device properties within a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "module_env" + }, + "responses": { + "200": { + "body": { + "componentA": { + "SensitivityDial": 50, + "Status": 25.494280816287844, + "$metadata": { + "SensitivityDial": { + "desiredValue": 50, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + }, + "Status": { + "lastUpdateTime": "2020-04-27T22:19:31.9485342Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json new file mode 100644 index 000000000000..3d22f4564d91 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_properties_update.json @@ -0,0 +1,34 @@ +{ + "title": "Update properties of a module", + "description": "Update the values of read-write properties of a module", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "module_env", + "body": { + "componentA": { + "SensitivityDial": 200 + } + } + }, + "responses": { + "202": { + "body": { + "componentA": { + "SensitivityDial": 75, + "$metadata": { + "SensitivityDial": { + "desiredValue": 200, + "desiredVersion": 3, + "ackVersion": 1, + "ackDescription": "Ok", + "ackCode": 200, + "lastUpdateTime": "2020-04-27T22:08:55.1149957Z" + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json new file mode 100644 index 000000000000..1a858851af2d --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/modules_telemetry_get.json @@ -0,0 +1,23 @@ +{ + "title": "Get telemetry from a module", + "description": "Get the last known value of a telemetry stream from a module.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "mx1", + "module_name": "environment", + "component_name": "componentA", + "telemetry_name": "ambient" + }, + "responses": { + "200": { + "body": { + "value": { + "temperature": 20.961113326000568, + "humidity": 24 + }, + "timestamp": "2020-04-16T03:24:44.84Z" + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json index 6fb9f5835b06..b6f625803b3a 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json @@ -76,6 +76,7 @@ "discriminator": "type" }, "SymmetricKeyAttestation": { + "x-ms-discriminator-value": "SymmetricKeyAttestation", "allOf": [ { "$ref": "#/definitions/Attestation" @@ -95,6 +96,7 @@ ] }, "X509Attestation": { + "x-ms-discriminator-value": "X509Attestation", "allOf": [ { "$ref": "#/definitions/Attestation" @@ -114,6 +116,7 @@ ] }, "TpmAttestation": { + "x-ms-discriminator-value": "TpmAttestation", "allOf": [ { "$ref": "#/definitions/Attestation" @@ -132,6 +135,112 @@ } ] }, + "ObjectSchema": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + }, + { + "type": "object", + "properties": { + "fields": { + "description": "The property fields of this object type.", + "type": "array", + "items": { + "$ref": "#/definitions/SchemaField" + } + } + }, + "required": [ + "fields" + ] + } + ] + }, + "EnumSchema": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + }, + { + "type": "object", + "properties": { + "valueSchema": { + "description": "The schema for values of this enum type." + }, + "enumValues": { + "description": "The discreet named values of this enum type.", + "type": "array", + "items": { + "$ref": "#/definitions/EnumValue" + } + } + }, + "required": [ + "valueSchema", + "enumValues" + ] + } + ] + }, + "EnumValue": { + "allOf": [ + { + "$ref": "#/definitions/NamedEntity" + }, + { + "type": "object", + "properties": { + "enumValue": { + "description": "The resolved value of this enum entry." + } + }, + "required": [ + "enumValue" + ] + } + ] + }, + "MapSchema": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + }, + { + "type": "object", + "properties": { + "mapKey": { + "description": "The schema for keys of this map type." + }, + "mapValue": { + "description": "The schema for values of this map type." + } + }, + "required": [ + "mapKey", + "mapValue" + ] + } + ] + }, + "ArraySchema": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + }, + { + "type": "object", + "properties": { + "elementSchema": { + "description": "The schema for values of this array type." + } + }, + "required": [ + "elementSchema" + ] + } + ] + }, "SchemaField": { "allOf": [ { @@ -219,9 +328,7 @@ "target": { "description": "The target capability models for this relationship.", "type": "array", - "items": { - "type": "string" - }, + "items": {}, "minItems": 1 }, "maxMultiplicity": { @@ -263,14 +370,17 @@ "description": "The interface used by this component.", "$ref": "#/definitions/Interface" } - } + }, + "required": [ + "schema" + ] } ] }, "CapabilityModel": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/Interface" }, { "type": "object", @@ -281,13 +391,6 @@ "items": { "$ref": "#/definitions/Component" } - }, - "contents": { - "description": "The relationships contained by the capability model.", - "type": "array", - "items": { - "$ref": "#/definitions/Capability" - } } } } @@ -449,10 +552,7 @@ "type": "boolean", "readOnly": true } - }, - "required": [ - "instanceOf" - ] + } }, "DeviceCollection": { "type": "object", @@ -475,8 +575,8 @@ }, "DeviceCloudProperties": { "description": "Cloud property values associated with the device.", - "type": "object", - "additionalProperties": true + "additionalProperties": true, + "type": "object" }, "DeviceCommand": { "type": "object", @@ -545,8 +645,7 @@ }, "DeviceProperties": { "description": "Property values associated with the device.", - "type": "object", - "additionalProperties": true + "type": "object" }, "DeviceTelemetry": { "type": "object", @@ -762,7 +861,7 @@ "type": "object", "properties": { "roles": { - "description": "Roles that the permission has been granted permission to.", + "description": "List of role IDs that specify the permissions to access the application.", "type": "array", "items": { "type": "string" @@ -856,7 +955,11 @@ "value": { "description": "The initial value of the capability." } - } + }, + "required": [ + "capability", + "value" + ] } ] }, @@ -888,7 +991,10 @@ "description": "Visualization details for the referenced capability.", "$ref": "#/definitions/ValueDetail" } - } + }, + "required": [ + "capability" + ] } ] }, @@ -989,7 +1095,11 @@ "description": "The name of the capability being referenced.", "type": "string" } - } + }, + "required": [ + "component", + "reference" + ] } ] } @@ -1549,8 +1659,14 @@ } ], "x-ms-examples": { - "Create or update device attestation": { - "$ref": "./examples/devices_attestations_set.json" + "Create or update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Create or update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + }, + "Create or update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" } }, "responses": { @@ -1645,17 +1761,12 @@ "$ref": "#/parameters/ComponentName" }, { - "in": "path", - "name": "command_name", - "description": "Name of this device command.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true + "$ref": "#/parameters/CommandName" } ], "get": { - "operationId": "Devices_GetCommandHistory", - "summary": "Get device command history", + "operationId": "Devices_GetComponentCommandHistory", + "summary": "Get command history for a component of the device", "x-ms-examples": { "Get command history": { "$ref": "./examples/devices_commandshistory_get.json" @@ -1674,14 +1785,71 @@ } }, "post": { - "operationId": "Devices_ExecuteCommand", - "summary": "Execute a device command", + "operationId": "Devices_ExecuteComponentCommand", + "summary": "Execute a command on a component of a device", "description": "Execute a command on a device.", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Device command body.", + "required": true, + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + ], "x-ms-examples": { "Send command": { "$ref": "./examples/devices_commands_send.json" } }, + "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommand" + } + } + } + } + }, + "/devices/{device_id}/modules/{module_name}/components/{component_name}/commands/{command_name}": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/CommandName" + } + ], + "get": { + "operationId": "Devices_GetModuleComponentCommandHistory", + "summary": "Get module command history", + "x-ms-examples": { + "Get command history within module": { + "$ref": "./examples/modules_commandshistory_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCommandCollection" + } + } + } + }, + "post": { + "operationId": "Devices_ExecuteModuleComponentCommand", + "summary": "Execute a module command", + "description": "Execute a command on a module.", "parameters": [ { "name": "body", @@ -1693,6 +1861,11 @@ } } ], + "x-ms-examples": { + "Send command to module": { + "$ref": "./examples/modules_commands_send.json" + } + }, "responses": { "201": { "description": "Success", @@ -1836,6 +2009,121 @@ } } }, + "/devices/{device_id}/modules/{module_name}/properties": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + } + ], + "get": { + "operationId": "Devices_GetModuleProperties", + "summary": "Get module properties", + "description": "Get all property values of a module.", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_UpdateModuleProperties", + "summary": "Update module properties", + "description": "Update all property values of a module.", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Module properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + ], + "x-ms-examples": { + "Update properties of a module": { + "$ref": "./examples/modules_properties_update.json" + } + }, + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, + "/devices/{device_id}/modules/{module_name}/components/{component_name}/properties": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], + "get": { + "operationId": "Devices_GetModuleComponentProperties", + "summary": "Get module properties for a specific component", + "x-ms-examples": { + "Get properties of a module": { + "$ref": "./examples/modules_properties_components_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + }, + "put": { + "operationId": "Devices_UpdateModuleComponentProperties", + "summary": "Update module properties for a specific component", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Module properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + ], + "x-ms-examples": { + "Update properties of a module within a component": { + "$ref": "./examples/modules_properties_components_set.json" + } + }, + "responses": { + "202": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceProperties" + } + } + } + } + }, "/devices/{device_id}/components/{component_name}/telemetry/{telemetry_name}": { "parameters": [ { @@ -1845,16 +2133,11 @@ "$ref": "#/parameters/ComponentName" }, { - "in": "path", - "name": "telemetry_name", - "description": "Name of this device telemetry.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true + "$ref": "#/parameters/TelemetryName" } ], "get": { - "operationId": "Devices_GetTelemetryValue", + "operationId": "Devices_GetComponentTelemetryValue", "summary": "Get device telemetry value", "x-ms-examples": { "Get telemetry": { @@ -1870,6 +2153,39 @@ } } } + }, + "/devices/{device_id}/modules/{module_name}/components/{component_name}/telemetry/{telemetry_name}": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ModuleName" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "$ref": "#/parameters/TelemetryName" + } + ], + "get": { + "operationId": "Devices_GetModuleComponentTelemetryValue", + "summary": "Get module telemetry value", + "x-ms-examples": { + "Get telemetry from module": { + "$ref": "./examples/modules_telemetry_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceTelemetry" + } + } + } + } } }, "parameters": { @@ -1889,6 +2205,14 @@ "type": "string", "required": true }, + "ModuleName": { + "in": "path", + "name": "module_name", + "description": "Name of the device module.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, "ComponentName": { "in": "path", "name": "component_name", @@ -1897,6 +2221,22 @@ "type": "string", "required": true }, + "CommandName": { + "in": "path", + "name": "command_name", + "description": "Name of this device command.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "TelemetryName": { + "in": "path", + "name": "telemetry_name", + "description": "Name of this device telemetry.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, "Subdomain": { "in": "path", "name": "subdomain", diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..dfb3e6bb2f81 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json new file mode 100644 index 000000000000..84850f566de2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..d2124b1ab874 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + }, + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..52f4ea171758 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json new file mode 100644 index 000000000000..28ec873da73a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..bd327b64a535 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json @@ -0,0 +1,226 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..f3b921c7f795 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json new file mode 100644 index 000000000000..5ce4dfb1059f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..5ce69f559861 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json new file mode 100644 index 000000000000..3c5f1ef07441 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..2cf3db8f1c95 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..473bfc8b67d3 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json new file mode 100644 index 000000000000..8d69eb4065ef --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ], + "minTlsVersion": "1.2" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..645c3b25ec44 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..f3b921c7f795 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json new file mode 100644 index 000000000000..7033fc29d30b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json new file mode 100644 index 000000000000..7a701c1da9cf --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json new file mode 100644 index 000000000000..31adf125cbb7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json new file mode 100644 index 000000000000..7269c08b11bf --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "groupId": "iotHub" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json new file mode 100644 index 000000000000..a2cd6ce1cfb0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json new file mode 100644 index 000000000000..25f1099799ff --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..44a38d3e4ed6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..6e48d005194d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..df1aef21ac37 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..bf62547de092 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json new file mode 100644 index 000000000000..0f0a6c67a801 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json new file mode 100644 index 000000000000..11f7e90d03b6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "DinqxWW+s814W2Pc3dLxleelksqSYGy8Jfymt8J7a4c=", + "secondaryKey": "5G8KgJ9Wx2T0f6HRIn25TgYcFmJnBSivawNaHssiP9Y=", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "o/9gPc0oD8LY/r2lRurgl9U/sKFcL2c/tmFLKAiz+e0=", + "secondaryKey": "YOeBMHnYP95vH+ykR8OeapnhS6W8raMsXOdNFwqg4lg=", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "h2d4mPxy6jPCWX6mO+katV9QPNJivzt4aFq0iGVc1A8=", + "secondaryKey": "3TdcalZNTB7BZHl88LGsG1Z5T6+ElEODunrs1vylwGg=", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "tyNRcaI38fXL+gQTjCmrVZGTP4YFF7uACk7pppWLWzY=", + "secondaryKey": "6P6DXOp0W3HO5/IotzcPS1kx7PHiOdesaND07Im5cYI=", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json new file mode 100644 index 000000000000..9595bfaac824 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + ] + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json new file mode 100644 index 000000000000..2261900d8ed6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json new file mode 100644 index 000000000000..61d02e4d1f7c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json new file mode 100644 index 000000000000..5bca99dfd85d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..2595fbd0d518 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..f0591c64f206 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..d6b5ff32b995 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..c127a5dbbcbc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json new file mode 100644 index 000000000000..2971665b887b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json new file mode 100644 index 000000000000..a34b4fcacd27 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json new file mode 100644 index 000000000000..8452cf2c92db --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json @@ -0,0 +1,4148 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-01", + "title": "iotHubClient", + "description": "Use this API to manage the IoT hubs in your Azure subscription.", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "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": { + "/providers/Microsoft.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/iothub_operations.json" + } + }, + "operationId": "Operations_List", + "description": "Lists all of the available IoT Hub REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of an IoT hub", + "description": "Get the non-security related metadata of an IoT hub.", + "operationId": "IotHubResource_Get", + "x-ms-examples": { + "IotHubResource_Get": { + "$ref": "./examples/iothub_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT hub. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of an IoT hub.", + "description": "Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manually initiate a failover for the IoT Hub to its secondary region", + "description": "Manually initiate a failover for the IoT Hub to its secondary region. To learn more, see https://aka.ms/manualfailover", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "Name of the IoT hub to failover", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be the Azure paired region. Get the value from the secondary location in the locations property. To learn more, see https://aka.ms/manualfailover/region", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "Name of the resource group containing the IoT hub resource", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running manual failover operation for the IoT hub completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private link resources", + "description": "List private link resources for the given IotHub", + "operationId": "PrivateLinkResources_List", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_listprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private link resources", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources/{groupId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the specified private link resource", + "description": "Get the specified private link resource for the given IotHub", + "operationId": "PrivateLinkResources_Get", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_getprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/groupId" + } + ], + "responses": { + "200": { + "description": "The body contains the specified of private link resource", + "schema": { + "$ref": "#/definitions/GroupIdInformation" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private endpoint connections", + "description": "List private endpoint connection properties", + "operationId": "PrivateEndpointConnections_List", + "x-ms-examples": { + "PrivateEndpointConnections_List": { + "$ref": "./examples/iothub_listprivateendpointconnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionsList" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get private endpoint connection", + "description": "Get private endpoint connection properties", + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnection_Get": { + "$ref": "./examples/iothub_getprivateendpointconnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "The body contains the private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Update private endpoint connection", + "description": "Update the status of a private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnection_Update": { + "$ref": "./examples/iothub_updateprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection with updated properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the update operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete private endpoint connection", + "description": "Delete private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnection_Delete": { + "$ref": "./examples/iothub_deleteprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "This is a long running operation. The operation returns a 202 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "204": { + "description": "PrivateEndpoint does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "minTlsVersion": { + "type": "string", + "description": "Specifies the minimum TLS version to support for this hub. Can be set to \"1.2\" to have clients that use a TLS version below 1.2 to be rejected." + }, + "privateEndpointConnections": { + "description": "Private endpoint connections created on this IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "PrivateLinkResources": { + "description": "The available private link resources for an IotHub", + "type": "object", + "properties": { + "value": { + "description": "The list of available private link resources for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/GroupIdInformation" + } + } + } + }, + "GroupIdInformation": { + "description": "The group information for creating a private endpoint on an IotHub", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/GroupIdInformationProperties" + } + }, + "required": [ + "properties" + ] + }, + "GroupIdInformationProperties": { + "description": "The properties for a group information object", + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group id" + }, + "requiredMembers": { + "description": "The required members for a specific group id", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The required DNS zones for a specific group id", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PrivateEndpointConnectionsList": { + "description": "The list of private endpoint connections for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "PrivateEndpointConnection": { + "description": "The private endpoint connection of an IotHub", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + } + }, + "required": [ + "properties" + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "The properties of a private endpoint connection", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "description": "The private endpoint property of a private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The current state of a private endpoint connection", + "type": "object", + "properties": { + "status": { + "description": "The status of a private endpoint connection", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + } + }, + "required": [ + "status", + "description" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + }, + "enrichments": { + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid", + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus queue endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus queue endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus queue endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus topic endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus topic endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus topic", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus topic endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the event hub endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "endpointUri": { + "description": "The url of the event hub endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Event hub name on the event hub namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the event hub endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the storage container endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the storage endpoint. It must include the protocol https://", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the storage endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "EnrichmentProperties": { + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints.", + "type": "object", + "properties": { + "key": { + "description": "The key or name for the enrichment property.", + "type": "string" + }, + "value": { + "description": "The value for the enrichment property.", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints for which the enrichment is applied to the message.", + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "key", + "value", + "endpointNames" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + }, + "exportBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported device registry information for the IoT Hub.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + }, + "inputBlobName": { + "description": "The blob name to be used when importing from the provided input blob container.", + "type": "string" + }, + "outputBlobName": { + "description": "The blob name to use for storing the status of the import job.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "The name of the Azure region", + "type": "string" + }, + "role": { + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + }, + "groupId": { + "name": "groupId", + "in": "path", + "description": "The name of the private link resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/readme.go.md b/specification/iothub/resource-manager/readme.go.md index d8605d95c332..78a487967690 100644 --- a/specification/iothub/resource-manager/readme.go.md +++ b/specification/iothub/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-preview-2019-03 - tag: package-2018-12-preview - tag: package-2018-04 @@ -22,6 +23,15 @@ batch: - tag: package-2016-02 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/iothub/mgmt/2020-03-01/$(namespace) +``` + ### Tag:package-preview-2019-03 and go These settings apply only when `--tag=package-preview-2019-03 --go` is specified on the command line. diff --git a/specification/iothub/resource-manager/readme.java.md b/specification/iothub/resource-manager/readme.java.md index b505f940fb35..55927e1f56f6 100644 --- a/specification/iothub/resource-manager/readme.java.md +++ b/specification/iothub/resource-manager/readme.java.md @@ -16,11 +16,29 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-iothub ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-preview-2019-03 - tag: package-2018-12-preview - tag: package-2018-04 ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.iothub.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/iothub/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +directive: + - rename-model: + from: PrivateLinkResources + to: PrivateLinkResource +``` + ### Tag: package-preview-2019-03 These settings apply only when `--tag=package-preview-2019-03 --java` is specified on the command line. diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index 877cffa54cf0..8e78febbb821 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-2019-11 +tag: package-2020-03 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.Devices/stable/2020-03-01/iothub.json +``` ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.Devices/stable/2019-11-04/iothub.json ``` + ### Tag: package-preview-2019-07 These settings apply only when `--tag=package-preview-2019-07` is specified on the command line. @@ -177,6 +186,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Devices/stable/2020-03-01/iothub.json - $(this-folder)/Microsoft.Devices/stable/2019-11-04/iothub.json - $(this-folder)/Microsoft.Devices/preview/2019-07-01-preview/iothub.json - $(this-folder)/Microsoft.Devices/stable/2019-03-22/iothub.json diff --git a/specification/iothub/resource-manager/readme.python.md b/specification/iothub/resource-manager/readme.python.md index dffe7cf8001c..c46cafabce12 100644 --- a/specification/iothub/resource-manager/readme.python.md +++ b/specification/iothub/resource-manager/readme.python.md @@ -22,6 +22,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-11 - tag: package-2019-03 - tag: package-2018-04 @@ -31,6 +32,17 @@ batch: - tag: package-2016-02 ``` +### Tag: package-2020-03 and python + +These settings apply only when `--tag=package-2020-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(python) +python: + namespace: azure.mgmt.iothub.v2020_03_01 + output-folder: $(python-sdks-folder)/iothub/azure-mgmt-iothub/azure/mgmt/iothub/v2020_03_01 +``` + ### Tag: package-2019-11 and python These settings apply only when `--tag=package-2019-11 --python` is specified on the command line. diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json new file mode 100644 index 000000000000..d3539a6a3040 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json @@ -0,0 +1,306 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/backup": { + "post": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackup", + "description": "Creates a full backup using a user-provided SAS token to an Azure blob storage container.", + "parameters": [ + { + "in": "body", + "name": "azureStorageBlobContainerUri", + "schema": { + "$ref": "#/definitions/SASTokenParameter" + }, + "description": "Azure blob shared access signature token pointing to a valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started full backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full backup": { + "$ref": "./examples/FullBackup-example.json" + } + } + } + }, + "/backup/{jobId}/pending": { + "get": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackupStatus", + "description": "Returns the status of full backup operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The id returned as part of the backup request" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full backup status", + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Full backup status": { + "$ref": "./examples/FullBackup-pending-example.json" + } + } + } + }, + "/restore": { + "put": { + "tags": [ + "FullRestore" + ], + "operationId": "FullRestoreOperation", + "description": "Restores all key materials using the SAS token pointing to a previously stored Azure Blob storage backup folder", + "parameters": [ + { + "name": "restoreBlobDetails", + "in": "body", + "schema": { + "$ref": "#/definitions/RestoreOperationParameters" + }, + "description": "The Azure blob SAS token pointing to a folder where the previous successful full backup was stored" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started restore operation from the previously stored backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FullRestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full restore from backup": { + "$ref": "./examples/FullRestore-example.json" + } + } + } + }, + "/restore/{jobId}/pending": { + "get": { + "tags": [ + "FullRestore" + ], + "operationId": "FullRestoreStatus", + "description": "Returns the status of full restore operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The Job Id returned part of the full restore operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full restore status", + "schema": { + "$ref": "#/definitions/FullRestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Full restore status": { + "$ref": "./examples/FullRestore-pending-example.json" + } + } + } + } + }, + "definitions": { + "RestoreOperationParameters": { + "properties": { + "sasTokenParameters": { + "$ref": "#/definitions/SASTokenParameter" + }, + "folderToRestore": { + "type": "string", + "description": "The Folder name of the blob where the previous successful full backup was stored" + } + }, + "required": [ + "folderToRestore", + "sasTokenParameters" + ] + }, + "SASTokenParameter": { + "properties": { + "storageResourceUri": { + "type": "string", + "description": "Azure Blob storage container Uri" + }, + "token": { + "type": "string", + "description": "The SAS token pointing to an Azure Blob storage container" + } + }, + "required": [ + "storageResourceUri", + "token" + ] + }, + "FullBackupOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the backup operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of backup operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the full backup operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the backup operation in UTC" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the backup operation in UTC" + }, + "jobId": { + "type": "string", + "description": "Identifier for the full backup operation." + }, + "azureStorageBlobContainerUri": { + "type": "string", + "description": "The Azure blob storage container Uri which contains the full backup" + } + }, + "description": "Full backup operation" + }, + "FullRestoreOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the restore operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of restore operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the full restore operation." + }, + "jobId": { + "type": "string", + "description": "Identifier for the full restore operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the restore operation" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the restore operation" + } + }, + "description": "Full restore operation" + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json new file mode 100644 index 000000000000..ddcae29d2b30 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json @@ -0,0 +1,2054 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificates", + "summary": "List certificates in a specified key vault", + "description": "The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates along with a link to the next page of certificates.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificates": { + "$ref": "./examples/GetCertificates-example.json" + } + } + } + }, + "/certificates/{certificate-name}": { + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificate", + "summary": "Deletes a certificate from a specified key vault.", + "description": "Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted certificate.", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificate": { + "$ref": "./examples/DeleteCertificate-example.json" + } + } + } + }, + "/certificates/contacts": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateContacts", + "description": "Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.", + "summary": "Sets the certificate contacts for the specified key vault.", + "parameters": [ + { + "name": "contacts", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Contacts" + }, + "description": "The contacts for the key vault certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateContacts": { + "$ref": "./examples/SetCertificateContacts-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateContacts", + "summary": "Lists the certificate contacts for a specified key vault.", + "description": "The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateContacts": { + "$ref": "./examples/GetCertificateContacts-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateContacts", + "description": "Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.", + "summary": "Deletes the certificate contacts for a specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateContacts": { + "$ref": "./examples/DeleteCertificateContacts-example.json" + } + } + } + }, + "/certificates/issuers": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuers", + "summary": "List certificate issuers for a specified key vault.", + "description": "The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificate issuers in a key vault along with a link to the next page of certificate issuers.", + "schema": { + "$ref": "#/definitions/CertificateIssuerListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateIssuers": { + "$ref": "./examples/GetCertificateIssuers-example.json" + } + } + } + }, + "/certificates/issuers/{issuer-name}": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateIssuer", + "summary": "Sets the specified certificate issuer.", + "description": "The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerSetParameters" + }, + "description": "Certificate issuer set parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateIssuer": { + "$ref": "./examples/SetCertificateIssuer-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateIssuer", + "summary": "Updates the specified certificate issuer.", + "description": "The UpdateCertificateIssuer operation performs an update on the specified certificate issuer entity. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerUpdateParameters" + }, + "description": "Certificate issuer update parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateIssuer": { + "$ref": "./examples/UpdateCertificateIssuer-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuer", + "summary": "Lists the specified certificate issuer.", + "description": "The GetCertificateIssuer operation returns the specified certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateIssuer": { + "$ref": "./examples/GetCertificateIssuer-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateIssuer", + "summary": "Deletes the specified certificate issuer.", + "description": "The DeleteCertificateIssuer operation permanently removes the specified certificate issuer from the vault. This operation requires the certificates/manageissuers/deleteissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateIssuer": { + "$ref": "./examples/DeleteCertificateIssuer-example.json" + } + } + } + }, + "/certificates/{certificate-name}/create": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "CreateCertificate", + "summary": "Creates a new certificate.", + "description": "If this is the first version, the certificate resource is created. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateCreateParameters" + }, + "description": "The parameters to create a certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Created certificate bundle.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "CreateCertificate": { + "$ref": "./examples/CreateCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/import": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "ImportCertificate", + "summary": "Imports a certificate into a specified key vault.", + "description": "Imports an existing valid certificate, containing a private key, into Azure Key Vault. The certificate to be imported can be in either PFX or PEM format. If the certificate is in PEM format the PEM file must contain the key as well as x509 certificates. This operation requires the certificates/import permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateImportParameters" + }, + "description": "The parameters to import the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "ImportCertificate": { + "$ref": "./examples/ImportCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/versions": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateVersions", + "summary": "List the versions of a certificate.", + "description": "The GetCertificateVersions operation returns the versions of a certificate in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateVersions": { + "$ref": "./examples/GetCertificateVersions-example.json" + } + } + } + }, + "/certificates/{certificate-name}/policy": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificatePolicy", + "summary": "Lists the policy for a certificate.", + "description": "The GetCertificatePolicy operation returns the specified certificate policy resources in the specified key vault. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in a given key vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy.", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificatePolicy": { + "$ref": "./examples/GetCertificatePolicy-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificatePolicy", + "summary": "Updates the policy for a certificate.", + "description": "Set specified members in the certificate policy. Leave others as null. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificatePolicy", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePolicy" + }, + "description": "The policy for the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificatePolicy": { + "$ref": "./examples/UpdateCertificatePolicy-example.json" + } + } + } + }, + "/certificates/{certificate-name}/{certificate-version}": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificate", + "summary": "Updates the specified attributes associated with the given certificate.", + "description": "The UpdateCertificate operation applies the specified update on the given certificate; the only elements updated are the certificate's attributes. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given key vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateUpdateParameters" + }, + "description": "The parameters for certificate update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificate": { + "$ref": "./examples/UpdateCertificate-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificate", + "summary": "Gets information about a certificate.", + "description": "Gets information about a specific certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificate": { + "$ref": "./examples/GetCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateOperation", + "summary": "Updates a certificate operation.", + "description": "Updates a certificate creation operation that is already in progress. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "certificateOperation", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateOperationUpdateParameter" + }, + "description": "The certificate operation response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateOperation": { + "$ref": "./examples/UpdateCertificateOperation-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateOperation", + "summary": "Gets the creation operation of a certificate.", + "description": "Gets the creation operation associated with a specified certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateOperation": { + "$ref": "./examples/GetCertificateOperation-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateOperation", + "summary": "Deletes the creation operation for a specific certificate.", + "description": "Deletes the creation operation for a specified certificate that is in the process of being created. The certificate is no longer created. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateOperation": { + "$ref": "./examples/DeleteCertificateOperation-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending/merge": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "MergeCertificate", + "summary": "Merges a certificate or a certificate chain with a key pair existing on the server.", + "description": "The MergeCertificate operation performs the merging of a certificate or certificate chain with a key pair currently available in the service. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateMergeParameters" + }, + "description": "The parameters to merge certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Merged certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "MergeCertificate": { + "$ref": "./examples/MergeCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/backup": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "BackupCertificate", + "summary": "Backs up the specified certificate.", + "description": "Requests that a backup of the specified certificate be downloaded to the client. All versions of the certificate will be downloaded. This operation requires the certificates/backup permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up certificate.", + "schema": { + "$ref": "#/definitions/BackupCertificateResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupCertificate": { + "$ref": "./examples/BackupCertificate-example.json" + } + } + } + }, + "/certificates/restore": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "RestoreCertificate", + "summary": "Restores a backed up certificate to a vault.", + "description": "Restores a backed up certificate, and all its versions, to a vault. This operation requires the certificates/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateRestoreParameters" + }, + "description": "The parameters to restore the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored certificate bundle in the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreCertificate": { + "$ref": "./examples/RestoreCertificate-example.json" + } + } + } + }, + "/deletedcertificates": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificates", + "summary": "Lists the deleted certificates in the specified vault currently available for recovery.", + "description": "The GetDeletedCertificates operation retrieves the certificates in the current vault which are in a deleted state and ready for recovery or purging. This operation includes deletion-specific information. This operation requires the certificates/get/list permission. This operation can only be enabled on soft-delete enabled vaults.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates", + "schema": { + "$ref": "#/definitions/DeletedCertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedCertificates": { + "$ref": "./examples/GetDeletedCertificates-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificate", + "summary": "Retrieves information about the specified deleted certificate.", + "description": "The GetDeletedCertificate operation retrieves the deleted certificate information plus its attributes, such as retention interval, scheduled permanent deletion and the current deletion recovery level. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the certificate and its attributes", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedCertificate": { + "$ref": "./examples/GetDeletedCertificate-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "PurgeDeletedCertificate", + "summary": "Permanently deletes the specified deleted certificate.", + "description": "The PurgeDeletedCertificate operation performs an irreversible deletion of the specified certificate, without possibility for recovery. The operation is not available if the recovery level does not specify 'Purgeable'. This operation requires the certificate/purge permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the certificate was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedCertificate": { + "$ref": "./examples/PurgeDeletedCertificate-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}/recover": { + "post": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "RecoverDeletedCertificate", + "summary": "Recovers the deleted certificate back to its current version under /certificates.", + "description": "The RecoverDeletedCertificate operation performs the reversal of the Delete operation. The operation is applicable in vaults enabled for soft-delete, and must be issued during the retention interval (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the original certificate and its attributes", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedCertificate": { + "$ref": "./examples/RecoverDeletedCertificate-example.json" + } + } + } + } + }, + "definitions": { + "CertificateAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for certificates in the current vault. If it contains 'Purgeable', the certificate can be permanently deleted by a privileged user; otherwise, only the system can purge the certificate, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The certificate management attributes." + }, + "CertificateItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate identifier." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate." + } + }, + "description": "The certificate item containing certificate metadata." + }, + "CertificateIssuerItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate Identifier." + }, + "provider": { + "type": "string", + "description": "The issuer provider." + } + }, + "description": "The certificate issuer item containing certificate issuer metadata." + }, + "CertificateBundle": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "kid": { + "type": "string", + "description": "The key id.", + "readOnly": true + }, + "sid": { + "type": "string", + "description": "The secret id.", + "readOnly": true + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate.", + "readOnly": true + }, + "policy": { + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy.", + "readOnly": true + }, + "cer": { + "type": "string", + "format": "byte", + "description": "CER contents of x509 certificate." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs" + } + }, + "description": "A certificate bundle consists of a certificate (X509) plus its attributes." + }, + "DeletedCertificateBundle": { + "allOf": [ + { + "$ref": "#/definitions/CertificateBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "A Deleted Certificate consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedCertificateItem": { + "allOf": [ + { + "$ref": "#/definitions/CertificateItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "The deleted certificate item containing metadata about the deleted certificate." + }, + "CertificateOperation": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "csr": { + "type": "string", + "format": "byte", + "description": "The certificate signing request (CSR) that is being used in the certificate operation." + }, + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + }, + "status": { + "type": "string", + "description": "Status of the certificate operation." + }, + "status_details": { + "type": "string", + "description": "The status details of the certificate operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the certificate operation." + }, + "target": { + "type": "string", + "description": "Location which contains the result of the certificate operation." + }, + "request_id": { + "type": "string", + "description": "Identifier for the certificate operation." + } + }, + "description": "A certificate operation is returned in case of asynchronous requests." + }, + "CertificatePolicy": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "key_props": { + "x-ms-client-name": "KeyProperties", + "$ref": "keys.json#/definitions/KeyProperties", + "description": "Properties of the key backing a certificate." + }, + "secret_props": { + "x-ms-client-name": "SecretProperties", + "$ref": "secrets.json#/definitions/SecretProperties", + "description": "Properties of the secret backing a certificate." + }, + "x509_props": { + "x-ms-client-name": "X509CertificateProperties", + "$ref": "#/definitions/X509CertificateProperties", + "description": "Properties of the X509 component of a certificate." + }, + "lifetime_actions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeAction" + }, + "description": "Actions that will be performed by Key Vault over the lifetime of a certificate." + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + } + }, + "description": "Management policy for a certificate." + }, + "X509CertificateProperties": { + "properties": { + "subject": { + "type": "string", + "description": "The subject name. Should be a valid X509 distinguished Name." + }, + "ekus": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The enhanced key usage." + }, + "sans": { + "x-ms-client-name": "SubjectAlternativeNames", + "$ref": "#/definitions/SubjectAlternativeNames", + "description": "The subject alternative names." + }, + "key_usage": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "digitalSignature", + "nonRepudiation", + "keyEncipherment", + "dataEncipherment", + "keyAgreement", + "keyCertSign", + "cRLSign", + "encipherOnly", + "decipherOnly" + ], + "x-ms-enum": { + "name": "KeyUsageType", + "modelAsString": true + } + }, + "description": "List of key usages." + }, + "validity_months": { + "x-ms-client-name": "ValidityInMonths", + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The duration that the certificate is valid in months." + } + }, + "description": "Properties of the X509 component of a certificate." + }, + "IssuerParameters": { + "properties": { + "name": { + "type": "string", + "description": "Name of the referenced issuer object or reserved names; for example, 'Self' or 'Unknown'." + }, + "cty": { + "x-ms-client-name": "CertificateType", + "type": "string", + "description": "Certificate type as supported by the provider (optional); for example 'OV-SSL', 'EV-SSL'" + }, + "cert_transparency": { + "x-ms-client-name": "CertificateTransparency", + "type": "boolean", + "description": "Indicates if the certificates generated under this policy should be published to certificate transparency logs." + } + }, + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "LifetimeAction": { + "properties": { + "trigger": { + "$ref": "#/definitions/Trigger", + "description": "The condition that will execute the action." + }, + "action": { + "$ref": "#/definitions/Action", + "description": "The action that will be executed." + } + }, + "description": "Action and its trigger that will be performed by Key Vault over the lifetime of a certificate." + }, + "Action": { + "properties": { + "action_type": { + "type": "string", + "description": "The type of the action.", + "enum": [ + "EmailContacts", + "AutoRenew" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": false + } + } + }, + "description": "The action that will be executed." + }, + "Trigger": { + "properties": { + "lifetime_percentage": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 99, + "description": "Percentage of lifetime at which to trigger. Value should be between 1 and 99." + }, + "days_before_expiry": { + "type": "integer", + "format": "int32", + "description": "Days before expiry to attempt renewal. Value should be between 1 and validity_in_months multiplied by 27. If validity_in_months is 36, then value should be between 1 and 972 (36 * 27)." + } + }, + "description": "A condition to be satisfied for an action to be executed." + }, + "SubjectAlternativeNames": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Email addresses." + }, + "dns_names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Domain names." + }, + "upns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "User principal names." + } + }, + "description": "The subject alternate names of a X509 object." + }, + "IssuerBundle": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the issuer object.", + "readOnly": true + }, + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The issuer for Key Vault certificate." + }, + "IssuerAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the issuer is enabled." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The attributes of an issuer managed by the Key Vault service." + }, + "IssuerCredentials": { + "properties": { + "account_id": { + "type": "string", + "description": "The user name/account name/account id." + }, + "pwd": { + "x-ms-client-name": "Password", + "type": "string", + "description": "The password/secret/account key." + } + }, + "description": "The credentials to be used for the certificate issuer." + }, + "OrganizationDetails": { + "properties": { + "id": { + "type": "string", + "description": "Id of the organization." + }, + "admin_details": { + "type": "array", + "items": { + "$ref": "#/definitions/AdministratorDetails" + }, + "description": "Details of the organization administrator." + } + }, + "description": "Details of the organization of the certificate issuer." + }, + "AdministratorDetails": { + "properties": { + "first_name": { + "type": "string", + "description": "First name." + }, + "last_name": { + "type": "string", + "description": "Last name." + }, + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "Details of the organization administrator of the certificate issuer." + }, + "Contacts": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the contacts collection.", + "readOnly": true + }, + "contacts": { + "x-ms-client-name": "ContactList", + "type": "array", + "items": { + "$ref": "#/definitions/Contact" + }, + "description": "The contact list for the vault certificates." + } + }, + "description": "The contacts for the vault certificates." + }, + "Contact": { + "properties": { + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "name": { + "type": "string", + "description": "Name." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "The contact information for the vault certificates." + }, + "CertificateCreateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate create parameters." + }, + "CertificateImportParameters": { + "properties": { + "value": { + "x-ms-client-name": "base64EncodedCertificate", + "type": "string", + "description": "Base64 encoded representation of the certificate object to import. This certificate needs to contain the private key." + }, + "pwd": { + "x-ms-client-name": "password", + "type": "string", + "description": "If the private key in base64EncodedCertificate is encrypted, the password used for encryption." + }, + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate import parameters.", + "required": [ + "value" + ] + }, + "CertificateUpdateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate update parameters." + }, + "CertificateMergeParameters": { + "properties": { + "x5c": { + "x-ms-client-name": "x509Certificates", + "type": "array", + "items": { + "type": "string", + "format": "byte" + }, + "description": "The certificate or the certificate chain to merge." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate merge parameters", + "required": [ + "x5c" + ] + }, + "CertificateIssuerSetParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer set parameters.", + "required": [ + "provider" + ] + }, + "CertificateIssuerUpdateParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer update parameters." + }, + "CertificateOperationUpdateParameter": { + "properties": { + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + } + }, + "description": "The certificate operation update parameters.", + "required": [ + "cancellation_requested" + ] + }, + "CertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of certificates." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificates." + } + }, + "description": "The certificate list result." + }, + "DeletedCertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedCertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted certificates." + } + }, + "description": "A list of certificates that have been deleted in this vault." + }, + "CertificateIssuerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateIssuerItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificate issuers in the key vault along with a link to the next page of certificate issuers." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificate issuers." + } + }, + "description": "The certificate issuer list result." + }, + "PendingCertificateSigningRequestResult": { + "properties": { + "value": { + "type": "string", + "readOnly": true, + "description": "The pending certificate signing request as Base64 encoded string." + } + }, + "description": "The pending certificate signing request result." + }, + "CertificateRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "certificateBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a certificate bundle." + } + }, + "description": "The certificate restore parameters.", + "required": [ + "value" + ] + }, + "BackupCertificateResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up certificate." + } + }, + "description": "The backup certificate result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json new file mode 100644 index 000000000000..6b913677029b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json @@ -0,0 +1,73 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "paths": {}, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "unixtime", + "description": "Not before date in UTC." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "unixtime", + "description": "Expiry date in UTC." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "KeyVaultError": { + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault server error." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json new file mode 100644 index 000000000000..ceca585def29 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json new file mode 100644 index 000000000000..a618f0472d7f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json new file mode 100644 index 000000000000..7065c8b0b740 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json new file mode 100644 index 000000000000..3981088aa212 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2-preview", + "parameters": { + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=*.microsoft.com", + "sans": { + "dns_names": [ + "onedrive.microsoft.com", + "xbox.microsoft.com" + ] + } + }, + "issuer": { + "name": "Self" + } + } + } + }, + "responses": { + "202": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json new file mode 100644 index 000000000000..7eac406d7eb2 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview", + "parameters": { + "kty": "RSA", + "key_size": 2048, + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "attributes": {}, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json new file mode 100644 index 000000000000..63633ad93b96 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/importCert01", + "deletedDate": 1493938558, + "scheduledPurgeDate": 1501714558, + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json new file mode 100644 index 000000000000..1a79b1304ccb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json new file mode 100644 index 000000000000..431121987593 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json new file mode 100644 index 000000000000..ab8aa73dc458 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedRequestedCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/deletedRequestedCert01/pending", + "issuer": { + "name": "issuer03" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApf+kGcL+5uivj/ToYbQ15zcx3caEnpzXaX2eJgL0/Kwaz4u2/bNJ9+hoXnlOFFbCp4canVoNvgu8fw5NOu9U3gJNFQwjHeAqfsg8okZGkIk0riIpp4MMb/4GQb2y3B28AcTu2FANdzLoZzBqmQs51KBe1RONkdtqDYXIvnb5G+9+P7PCy5G//Ga0JAP6Y6P8+TrE9JLEj6Sny0ljLMpMyt4rIRAtNfKYSeiWVQmYX4jZfImIW3iq91zwMsRlrzTm80mNfHPCv7V/8NmYuh0MQgCr49lLbbKCgzDyo9h8sblVQvR5TAylpIk7bSQNf4tSdVNHnsF6CJWu6Pg31hyMpQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHVjmYFs3FmecaJ1ExhK1WCFJaQJUTVbPJ1xJ93UJlLivhzI1yhQO9nMC2DKV+E+UCxceqjae6OG5LUhXfYAziS0HTc80+ZcUqrZRb5ZRt+8HU0TPbTDDqjj8wMZ4VlgQ3eXGAGesMfZV3AqWwa5itofvqm8KAmL4Yn/XMSHcKfRx3h9WnC6RXgZ8WNYK+r5o+gHlmuF7/AaNFh8UjIsjjOZQ0Yin/vA4yBEYTt1/OC7pScs3bdL9CIf4rC98qaMSf4B2W/vfrXUo0gGPYcep25jy7xnIltSY80Trn3Mty5YQ0IT+KPQcJKhbryGg6bIy4jJDwS7zkn51MR1q3kNoOA=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "b88791e33d9c4d609d3e3cc3d2d40d11" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json new file mode 100644 index 000000000000..d108bd70c52d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json new file mode 100644 index 000000000000..317d74658f8f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json new file mode 100644 index 000000000000..d3bfeae2b89a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json new file mode 100644 index 000000000000..94db87470eab --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "azureStorageBlobContainerUri": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "api-version": "7.2-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/backup/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json new file mode 100644 index 000000000000..9396af3e5d5d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/.fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json new file mode 100644 index 000000000000..cd9c7278ab29 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "restoreBlobDetails": { + "sasTokenParameters": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "folderToRestore": "1490790332" + }, + "api-version": "7.2-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/restore/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json new file mode 100644 index 000000000000..70786dedfba1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json new file mode 100644 index 000000000000..cea282bca125 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "certificate-version": "pending", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json new file mode 100644 index 000000000000..1a79b1304ccb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json new file mode 100644 index 000000000000..431121987593 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json new file mode 100644 index 000000000000..f37e64c8288f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer02", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer03", + "provider": "Test" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json new file mode 100644 index 000000000000..696d07122254 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json new file mode 100644 index 000000000000..5df0ab3fea31 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188947 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json new file mode 100644 index 000000000000..083dd8b8fa81 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "listVersionsCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189534, + "updated": 1482189534 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189532, + "updated": 1482189532 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json new file mode 100644 index 000000000000..984bc1bb79e0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listCert01", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188987, + "updated": 1482188987 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listCert02", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188988, + "updated": 1482188988 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json new file mode 100644 index 000000000000..4a71c5d3c017 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "getDeletedCert", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/getDeletedCert", + "deletedDate": 1493938292, + "scheduledPurgeDate": 1501714292, + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json new file mode 100644 index 000000000000..c53660f9f66b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/listdeletedcerttest0", + "deletedDate": 1493937659, + "scheduledPurgeDate": 1501713659, + "id": "https://myvault.vault.azure.net/certificates/listdeletedcerttest0", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493937658, + "updated": 1493937658, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedcertificates?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json new file mode 100644 index 000000000000..d108bd70c52d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json new file mode 100644 index 000000000000..d82110ee6656 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE5MiFNREF3TURJeklXdGxlUzlNU1ZOVVJFVk1SVlJGUkV0RldWUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qRTJPakF5TGpnM09URXpOemxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/listdeletedkeytest0", + "deletedDate": 1493938031, + "scheduledPurgeDate": 1501714031, + "kid": "https://myvault.vault.azure.net/keys/listdeletedkeytest0", + "attributes": { + "enabled": true, + "created": 1493938031, + "updated": 1493938031, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedkeys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json new file mode 100644 index 000000000000..d3bfeae2b89a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json new file mode 100644 index 000000000000..e612053cbbbc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMDAhTURBd01ESTVJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRFNU9qSTFPakU0TGpJNE5qUXdORFZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/listdeletedsecrettest0", + "deletedDate": 1493937855, + "scheduledPurgeDate": 1501713855, + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listdeletedsecrettest0", + "attributes": { + "enabled": true, + "created": 1493937855, + "updated": 1493937855, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedsecrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json new file mode 100644 index 000000000000..3cf36eaaff9b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "key-version": "78deebed173b48e48f55abf87ed4cf71", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json new file mode 100644 index 000000000000..52729f0da174 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "listkeyversionstest", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUx6ZERPVVJETmpjM05VUXdSVFF4TnpjNE1qZERORVk1T0VZME9ESkdRekV5SVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", + "attributes": { + "enabled": true, + "created": 1493937851, + "updated": 1493937851, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys/listkeyversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json new file mode 100644 index 000000000000..3985f554ef70 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE4MCFNREF3TURFMElXdGxlUzlUUkV0VVJWTlVTMFZaSVRBd01EQXlPQ0V5TURFM0xUQXlMVEUzVkRBd09qQXhPakEyTGpnd056azBOemhhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey", + "attributes": { + "enabled": true, + "created": 1493937656, + "updated": 1493937656, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json new file mode 100644 index 000000000000..317d74658f8f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json new file mode 100644 index 000000000000..021ff12af60b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "mysecretname", + "secret-version": "4387e9f3d6e14c459867679a90fd0f79", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", + "attributes": { + "enabled": true, + "created": 1493938410, + "updated": 1493938410, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json new file mode 100644 index 000000000000..f6c80c664df1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "listsecretversionstest", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", + "attributes": { + "enabled": true, + "created": 1481851699, + "updated": 1481851699 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json new file mode 100644 index 000000000000..ed29be2d6983 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listsecrettest0", + "attributes": { + "enabled": true, + "created": 1482189047, + "updated": 1482189047 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json new file mode 100644 index 000000000000..9f7ab9b35836 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2-preview", + "parameters": { + "value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", + "pwd": "123", + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json new file mode 100644 index 000000000000..4899bda68da6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "ImportSoftKeyTest", + "api-version": "7.2-preview", + "parameters": { + "key": { + "kty": "RSA", + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB", + "d": "GeT1_D5LAZa7qlC7WZ0DKJnOth8kcPrN0urTEFtWCbmHQWkAad_px_VUpGp0BWDDzENbXbQcu4QCCdf4crve5eXt8dVI86OSah-RpEdBq8OFsETIhg2Tmq8MbYTJexoynRcIC62xAaCmkFMmu931gQSvWnYWTEuOPgmD2oE_F-bP9TFlGRc69a6MSbtcSRyFTsd5KsUr40QS4zf2W4kZCOWejyLuxk88SXgUqcJx86Ulc1Ol1KkTBLadvReAZCyCMwKBlNRGw46BU_iK0vK7rTD9fmEd639Gjti6eLpnyQYpnVe8uGgwVU1fHBkAKyapWoEG6VMhMntcrvgukKLIsQ", + "dp": "ZGnmWx-Nca71z9a9vvT4g02iv3S-3kSgmhl8JST09YQwK8tfiK7nXnNMtXJi2K4dLKKnLicGtCzB6W3mXdLcP2SUOWDOeStoBt8HEBT4MrI1psCKqnBum78WkHju90rBFj99amkP6UeQy5EASAzgmKQu2nUaUnRV0lYP8LHMCkE", + "dq": "dtpke0foFs04hPS6XYLA5lc7-1MAHfZKN4CkMAofwDqPmRQzCxpDJUk0gMWGJEdU_Lqfbg22Py44cci0dczH36NW3UU5BL86T2_SPPDOuyX7kDscrIJCdowxQCGJHGRBEozM_uTL46wu6UnUIv7m7cuGgodJyZBcdwpo6ziFink", + "qi": "Y9KD5GaHkAYmAqpOfAQUMr71QuAAaBb0APzMuUvoEYw39PD3_vJeh9HZ15QmJ8zCX10-nlzUB-bWwvK-rGcJXbK4pArilr5MiaYv7e8h5eW2zs2_itDJ6Oebi-wVbMhg7DvUTBbkCvPhhIedE4UlDQmMYP7RhzVVs7SfmkGs_DQ", + "p": "v1jeCPnuJQM2PW2690Q9KJk0Ulok8VFGjkcHUHVi3orKdy7y_TCIWM6ZGvgFzI6abinzYbTEPKV4wFdMAwvOWmawXj5YrsoeB44_HXJ0ak_5_iP6XXR8MLGXbd0ZqsxvAZyzMj9vyle7EN2cBod6aenI2QZoRDucPvjPwZsZotk", + "q": "0Yv-Dj6qnvx_LL70lUnKA6MgHE_bUC4drl5ZNDDsUdUUYfxIK4G1rGU45kHGtp-Qg-Uyf9s52ywLylhcVE3jfbjOgEozlSwKyhqfXkLpMLWHqOKj9fcfYd4PWKPOgpzWsqjA6fJbBUMYo0CU2G9cWCtVodO7sBJVSIZunWrAlBc" + }, + "tags": { + "purpose": "unit test" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942691, + "updated": 1493942691, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json new file mode 100644 index 000000000000..315956103c44 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json new file mode 100644 index 000000000000..63f7a352e33e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleName": "Role name", + "type": "roletype", + "description": "Role description", + "assignableScopes": [ + "/keys" + ], + "permissions": [ + { + "actions": [ + "get" + ], + "notActions": [] + } + ] + }, + "id": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "roleDefinitionId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json new file mode 100644 index 000000000000..db516527c986 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2-preview", + "parameters": { + "x5c": [ + "MIICxTCCAb....trimmed for brevitiy...EPAQj8=" + ] + } + }, + "responses": { + "201": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", + "kid": "https:// mykeyvault.vault.azure.net/keys/mycert1/f366e1a9dd774288ad84a45a5f620352", + "sid": " mykeyvault.vault.azure.net/secrets/mycert1/f366e1a9dd774288ad84a45a5f620352", + "cer": "……de34534……", + "x5t": "n14q2wbvyXr71Pcb58NivuiwJKk", + "attributes": { + "enabled": true, + "exp": 1530394215, + "nbf": 1435699215, + "created": 1435699919, + "updated": 1435699919 + }, + "policy": { + "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/policy", + "key_props": { + "exportable": false, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=Mycert1", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1435699811, + "updated": 1435699811 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json new file mode 100644 index 000000000000..0de37263e68c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedcertificates", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json new file mode 100644 index 000000000000..b33e3aae3817 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testdeletedkey", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json new file mode 100644 index 000000000000..f2e055ade934 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json new file mode 100644 index 000000000000..88d12b135657 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "parameters": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId" + } + }, + "api-version": "7.2-preview" + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json new file mode 100644 index 000000000000..86c587612d5b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "CertCreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "kid": "https://myvault.vault.azure.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "sid": "https://myvault.vault.azure.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938486, + "updated": 1493938486, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938486, + "updated": 1493938486 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json new file mode 100644 index 000000000000..4faeb016849e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v-SWMCmPNKoK_rB_pNXUl6Iwh9Kqd3XzQlh6SXi_slBishqP7pyKEFjNbUvMSlyvPt21rJupLbJr-yhsK2Rq2V6O0doGuCsoadgNGih1aVAuUJAJls1-b-G1IJjD18ArM4RitnCvJmQFqyK2RVHa3EpEfaQW4gcRrsRAhiJDjc1L1S3skdt-E_rZfL7DIh1ZtqFyQAqIWSAG0BXDdbgfEx1kJKqH-HRokDKeMCIaJtKZof6e-DJr3e9Iy8aAR7V-BsZ7vY7JMjyeEukMzEji4MEsIyOESL67DgFllDEi4OM_3WKyxr6uXxzHDzmppWsk2ykLsYA_ALLnR3ZNZCuL9Q", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493938342, + "updated": 1493938342, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateDeleteRecoverPurgeTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json new file mode 100644 index 000000000000..8af235e108f3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "SecretCreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", + "attributes": { + "enabled": true, + "created": 1493937960, + "updated": 1493937960, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json new file mode 100644 index 000000000000..2fd0d194e664 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", + "kid": "https://myvault.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", + "sid": "https://myvault.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", + "x5t": "Z-n6Mydb08bmyOgk7bmx5HT8tyo", + "cer": "MIIDMjCCAhqgAwIBAgIQGn/FrGQZT/Cd9kgXIsytEjANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTAeFw0xODA0MTcxODI2MjZaFw0xOTA0MTcxODM2MjZaMBYxFDASBgNVBAMTC2V4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsODIu9EJhfnn57k4++j6dC1M6Egi9aZucFQ9Jc29vFG9L9BkzllPGluKKdH1ypsrAUif7yGaq5d1nDyLhZUncU8dV/YIA7oll/fC+d0H4A37kVbM/60zXhXnKRx+DRZ2hJQzNBOodCaZpyZZEuYvtWdSCSILpa0R7yXYevjLaG5LfckOzuurXqeos7WB+l2q1c+6zx1KbNXbBl7QOz2nzk9oJU7CdhPOc+LOLppmsXRwwluKtmCDyKdrKAF/dANp5zGXFsognQcRctLSGQp8FbgBVQyZ+v81n9bPpSaBoUQMcH4uG9jPO6CWwbDSWE+FVYAm5kgjuW/1hqRSnOEV8QIDAQABo3wwejAOBgNVHQ8BAf8EBAMCBaAwCQYDVR0TBAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUaYJoBFokrORdsxOTA8sgrosMOmgwHQYDVR0OBBYEFGmCaARaJKzkXbMTkwPLIK6LDDpoMA0GCSqGSIb3DQEBCwUAA4IBAQAxL3t0kV1dq/PGUztjW+qK6Nh4sx7jsU59JtjON6zcibJ4hM+Q3Z+cEvW9zuGkuTbLz6fKNL9VnkF1LnlWTsyRmS7bF15/7iOgfdrr0vkJKVM1Zv/tqKEpBJ7Cbc0vW/VJQxZN+OlqGNc9bcx3cnqkRwpkgM25T0dVpoWtCgMwayUtbPFbTZWHHbpzHLF2BzYf5HyW1BoKXcVPM3r/rS7RETasRRsz2GqXXdfhjCd+HKVyv5kD9N3WcFNUsaq3TqAUZyOx9bO0Cn3gkmgz05JpfhPEylXwVpVAccOoXsNoFdxEKGO0w7pk7PwOhsW8sFprdXWp6OxtL0rrCNFF/llT", + "attributes": { + "enabled": true, + "nbf": 1523989586, + "exp": 1555526186, + "created": 1523990186, + "updated": 1523990186, + "recoveryLevel": "Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/testcert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=example.com", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "key_usage": [ + "digitalSignature", + "keyEncipherment" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "AutoRenew" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1523990175, + "updated": 1523990175 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json new file mode 100644 index 000000000000..6b1fc8a641cc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v6XXEveP0G4tVvtszozRrSSo6zYDOScH8YBVBBY1CR2MCXBk-iMnKgzUyePi9_ofP3AmOxXx-2AsLC8rxi6n3jQNbGtIvQ4oMdUEhWVcVkmwdl0XyOouofEmIHeSxRg6wXFG4tYAKLmKsO9HqmU5n7ebdDlYngcobc1xHsP0u8e0ltntlgWBlSthmY8AMKW9Sb_teEYhilbkvt_ALr00G_4XHmfq7hSOZePWbGSWQW6yC7__9MrlDfzaSlHyBIyLppPEB7u6Zewrl_eNJWoUVrouIGA32qNETIOr_wxXRVGKoerTt-wFC-CXPn30W_6CmKSxoFBNvnzijg5hAU9V0w", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938217, + "updated": 1493938217, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json new file mode 100644 index 000000000000..866c443a3a75 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + }, + "responses": { + "200": { + "body": { + "contentType": "text", + "id": "https://myvault.vault.azure.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", + "attributes": { + "enabled": true, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938113, + "updated": 1493938113, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json new file mode 100644 index 000000000000..990d571fce47 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "contacts": { + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json new file mode 100644 index 000000000000..de9035e34f8e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser", + "pwd": "password" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json new file mode 100644 index 000000000000..36dfa1ace97e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "api-version": "7.2-preview", + "parameters": { + "value": "mysecretvalue" + } + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json new file mode 100644 index 000000000000..b4d9e8f76c13 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", + "api-version": "7.2-preview", + "parameters": { + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799 + }, + "tags": { + "department": "KeyVaultTest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "kid": "https://myvault.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "sid": "https://myvault.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188981, + "updated": 1482188981 + }, + "tags": { + "department": "KeyVaultTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json new file mode 100644 index 000000000000..4641f2c52779 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "newuseraccount", + "pwd": "newpassword" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "newuseraccount" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json new file mode 100644 index 000000000000..bba7358cdea7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "cancellationRequestedCert01", + "api-version": "7.2-preview", + "certificateOperation": { + "cancellation_requested": true + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/cancellationRequestedCert01/pending", + "issuer": { + "name": "issuer02" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxxM2zqnPtpH8aiHX5TdEoZLO0Y6fsjk9QcjKgnHomrwUc9vK20UYYEPKt9aGOT7HNx0do8OulPCnLPrKowci8UHu1qRW/qHvsOJQ/UrQoMCHxtXptVc7Avx8WQb045sCdgp/Cl4xO8LMZa70kE4dghZU9zmNZk8wqDIxyYdh1lqqfGe49EWOxcfszTeeKs8KCsQznjExbsudBHLLWoX4VFTGMe3VcIPcV6iFf70buHKznDMXFiRC0IYwkc/GyWIadB1CSEae8k/0evsPI5lYYZLaO/kLffEUtzysqxZNCQR+S0eVPTGTLHa+fndnPPs65XZDzSZi2fZL01oXUfCAQQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAKto/ZF9+02fQ3sLuIsRuap/O/AZz3IhAubNfyCaWvVGVAQz/Aqpf5c/liyKhxqRG6LR9Zu50oxRK5222ezR+56vJikjdXRVShf2xYsMm1CbCM1JuzsnkTeoUHHE12xx1srH/9TH+DVZIk6NXxc4wVIagbpwxiS5gR3Nly5k0ZVv7R1B79J0GUqSwK6qjuooWrBsYMEx319hz8fB/Y4jnPE8p+Cnn3AGEqnebVngXncq/QnHxnrRVfvKFVySqRvlsvM8buILmBbIaywEUqwhNtZX2i9E7reEJ8aeZcf+lAeKF3YDvffaXGTc75aiZlBk30Lv/hn0vs9T0/FedUnIae4=", + "cancellation_requested": true, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "3dd81d528cc84c5a837c607f1a50f2e1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json new file mode 100644 index 000000000000..4010092fd094 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2-preview", + "certificatePolicy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json new file mode 100644 index 000000000000..dcbbb282eafd --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "UpdateKeyAttributesTest", + "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", + "api-version": "7.2-preview", + "parameters": { + "key_ops": [ + "decrypt", + "encrypt" + ], + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800 + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", + "kty": "RSA", + "key_ops": [ + "decrypt", + "encrypt" + ], + "n": "tHCSyq1FqGHXIFHs1m4riKYgPFNSTlJGPzxwfUyZJUxxZsFWMxmZRzbM3kcXC5N40AJfeqDOMs0gY0LZEfhw8kJHBf2GEH2Sz923E4OQjLk_ECdAiKPW_8t22cqD_pGIuB7uibjLZgFFRv7oe0t8cTXKn7IwAH5gQBLs8NNV7hx1Ozy82ekCgOovFldmD3c3P1oZQ_v_-jOP6O202aEfDcZut42J6zI8eYwvGiDKmo2fCPPeth1LYBOeUMnrEZGT_f_w3yAgqvuSkHCL0x4MjZzc2EoNI_3ooAHZohDaPHLRfz8neDPADZzbHA6SDn3GgvC1K_Je5GBmqjTH3aIMlw", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800, + "created": 1493860275, + "updated": 1493860277, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json new file mode 100644 index 000000000000..e0825bb9dfea --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", + "api-version": "7.2-preview", + "parameters": { + "tags": { + "mytag": "myvalue" + }, + "contentType": "myContentType", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "contentType": "myContentType", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "mytag": "myvalue" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json new file mode 100644 index 000000000000..d7c29c6d1282 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "backupStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json new file mode 100644 index 000000000000..0a273d50313e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "4eb68492b5f6421e835d961ad2be3155", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA-OAEP", + "value": "sid-4nG3FzRIFWXLXlG-FZo6H1-kzbNX5Exe0_VRqcGLuJWjI9oSofsn-2IagDsQzkpNAXv9V8aoIizelrK_14darhxaAV8OejO7Oh7spjxa7IxMVS3e-cwcLdEHzMbMfM1uFpDyRFqEUASHI0H8F1M2m1e9TUSXOVW3KMqm7cK94ZQMFvd4AYdLfmfnStMp_MqIQh4kpIkB6h2b1M3possVrLKH_l2L3uT-qFiwQlH9-dt0Cje5mrkpsYCy4hAXNFUPhIyBWAZwOQylIE2sPuopFs55lRIHpWP2CqNe-IK8tX87BRuJ_Vy3GIFxDjD5uu74scIyQCKMImB6xQ_-mQ" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", + "value": "dvDmrSBpjRjtYg" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json new file mode 100644 index 000000000000..60160601ace8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json new file mode 100644 index 000000000000..3f9069d59eb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json new file mode 100644 index 000000000000..184c3d96a575 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "5ka5IVsnGrzufA" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "value": "CR0Hk0z72oOit5TxObqRpo-WFGZkb5BeN1C0xJFKHxzdDCESYPCNB-OkiWVAnMcSyu6g2aC8riVRRxY5MC2CWKj-CJ_SMke5X2kTi5yi4hJ5vuOLzmg_M6Bmqib7LsI-TeJHr9rs3-tZaSCdZ2zICeFWYduWV5rPjTnAD98epTorT8AA1zMaYHMIhKpmttcj18-dHr0E0T55dgRtsjK04uC3FlRd3odl4RhO1UHAmYpDd5FUqN-20R0dK0Zk8F8sOtThLhEmuLvqPHOCUBiGUhHA4nRDq1La4SUbThu2KMQJL6BbxxEymuliaYcNNtW7MxgVOf6V3mFxVNRY622i9g" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json new file mode 100644 index 000000000000..60160601ace8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..3f9069d59eb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json new file mode 100644 index 000000000000..2c0a2bed0d91 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/readStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json new file mode 100644 index 000000000000..113e07b78d33 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "getsas01", + "sas-definition-name": "getStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/getsas01/sas/getStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/getsas01-getStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json new file mode 100644 index 000000000000..648e709d0fd8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..918fb1b0fa15 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json new file mode 100644 index 000000000000..2f1f98127ace --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json new file mode 100644 index 000000000000..8091a8d1ab70 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef01", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef02", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json new file mode 100644 index 000000000000..3966fb536dac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "purgeStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json new file mode 100644 index 000000000000..dedf75b6ad1f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoverStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoverStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json new file mode 100644 index 000000000000..2f0ed31277ba --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoversas01", + "sas-definition-name": "recoverStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoversas01/sas/recoverStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/recoversas01-recoverStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json new file mode 100644 index 000000000000..0297ccd313c2 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "regenerateKey01", + "api-version": "7.2-preview", + "parameters": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/regenerateKey01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json new file mode 100644 index 000000000000..01ed62c74d7d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/restoreStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json new file mode 100644 index 000000000000..c505dee19441 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setStrg01", + "api-version": "7.2-preview", + "parameters": { + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json new file mode 100644 index 000000000000..199e7f72446f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setsas01", + "sas-definition-name": "setStrgSasDef01", + "api-version": "7.2-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setsas01/sas/setStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/setsas01-setStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json new file mode 100644 index 000000000000..a526d21dc5a1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", + "value": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json new file mode 100644 index 000000000000..68c97df1d33d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json new file mode 100644 index 000000000000..ab378028c902 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchStrg01", + "api-version": "7.2-preview", + "parameters": { + "activeKeyName": "key1", + "regenerationPeriod": "P10D" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json new file mode 100644 index 000000000000..13e3d3dc505c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchsas01", + "sas-definition-name": "patchStrgSasDef01", + "api-version": "7.2-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchsas01/sas/patchStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/patchsas01-patchStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json new file mode 100644 index 000000000000..7a410b6dabac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg", + "digest": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + }, + "responses": { + "200": { + "body": { + "value": true + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json new file mode 100644 index 000000000000..eeacfd9c36a0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md new file mode 100644 index 000000000000..1d8c9d77ab0e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md @@ -0,0 +1,26 @@ +--- +ms.assetid: 357c9947-1098-4a03-9f1e-7b27e5aa75bf +ms.title: Azure Key Vault REST Reference +ms.prod: +ms.service: azure-keyvault +author: BrucePerlerMS +ms.author: bruceper +ms.manager: mbaldwin +--- + +# Azure Key Vault + +Azure Key Vault enables users to store and use cryptographic keys within the Microsoft Azure environment. Azure Key Vault supports multiple key types and algorithms, and enables the use of Hardware Security Modules (HSM) for high value customer keys. Key Vault also supports storage of secrets, limited size octet objects. Certificate management is also available through Key Vault including support for renewal processing and working with a range of certificate authorities. + +## REST Operation Groups + +| Operation Group | Description | +|-----------------|-------------| +|Keys | Operations for interacting with keys including create, import, update, and delete.| +|Secrets | Operations for interacting with secrets including create, update, and delete.| +|Certificates | Operations for interacting with certificates including create, import, update, delete and a set of contact and renewal management tasks.| +|Storage | Operations for interacting with storage accounts including create, read, update, delete, list, regeneratekey and a set of sas definition related tasks.| + +## See Also + +- [About keys, secrets, certificates and storage](link) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json new file mode 100644 index 000000000000..99327bcef69d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json @@ -0,0 +1,1732 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/keys/{key-name}/create": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "CreateKey", + "summary": "Creates a new key, stores it, then returns key parameters and attributes to the client.", + "description": "The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name for the new key. The system will generate the version name for the new key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters to create a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the result of the create key request.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create key": { + "$ref": "./examples/CreateKey-example.json" + } + } + } + }, + "/keys/{key-name}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "ImportKey", + "summary": "Imports an externally created key, stores it, and returns key parameters and attributes to the client.", + "description": "The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "Name for the imported key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyImportParameters" + }, + "description": "The parameters to import a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported key bundle to the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Import key": { + "$ref": "./examples/ImportKey-example.json" + } + } + }, + "delete": { + "tags": [ + "Keys" + ], + "operationId": "DeleteKey", + "summary": "Deletes a key of any type from storage in Azure Key Vault.", + "description": "The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public part of the deleted key and deletion information on when the key will be purged.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete key": { + "$ref": "./examples/DeleteKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}": { + "patch": { + "tags": [ + "Keys" + ], + "operationId": "UpdateKey", + "summary": "The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.", + "description": "In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of key to update." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyUpdateParameters" + }, + "description": "The parameters of the key to update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated key.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update key": { + "$ref": "./examples/UpdateKey-example.json" + } + } + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKey", + "summary": "Gets the public part of a stored key.", + "description": "The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to get." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "Adding the version parameter retrieves a specific version of a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the key and its attributes.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get key": { + "$ref": "./examples/GetKey-example.json" + } + } + } + }, + "/keys/{key-name}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeyVersions", + "summary": "Retrieves a list of individual key versions with the same key name.", + "description": "The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeyVersions": { + "$ref": "./examples/GetKeyVersions-example.json" + } + } + } + }, + "/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeys", + "summary": "List keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys in the vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeys": { + "$ref": "./examples/GetKeys-example.json" + } + } + } + }, + "/keys/{key-name}/backup": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "BackupKey", + "summary": "Requests that a backup of the specified key be downloaded to the client.", + "description": "The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up key.", + "schema": { + "$ref": "#/definitions/BackupKeyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupKey": { + "$ref": "./examples/BackupKey-example.json" + } + } + } + }, + "/keys/restore": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "RestoreKey", + "summary": "Restores a backed up key to a vault.", + "description": "Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyRestoreParameters" + }, + "description": "The parameters to restore the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored key bundle in the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreKey": { + "$ref": "./examples/RestoreKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/encrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "encrypt", + "summary": "Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.", + "description": "The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the encryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The encryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Encrypt example": { + "$ref": "./examples/encrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/decrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "decrypt", + "summary": "Decrypts a single block of encrypted data.", + "description": "The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the decryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The decryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Decrypt example": { + "$ref": "./examples/decrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/sign": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "sign", + "summary": "Creates a signature from a digest using the specified key.", + "description": "The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeySignParameters" + }, + "description": "The parameters for the signing operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The signature value.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Sign": { + "$ref": "./examples/sign-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/verify": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "verify", + "summary": "Verifies a signature using a specified key.", + "description": "The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyVerifyParameters" + }, + "description": "The parameters for verify operations." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The verification result.", + "schema": { + "$ref": "#/definitions/KeyVerifyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Verify": { + "$ref": "./examples/verify-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/wrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "wrapKey", + "summary": "Wraps a symmetric key using a specified key.", + "description": "The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for wrap operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The wrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Wrapkey": { + "$ref": "./examples/wrapKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/unwrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "unwrapKey", + "summary": "Unwraps a symmetric key using the specified key that was initially used for wrapping that key.", + "description": "The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the key operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The unwrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Unwrapkey": { + "$ref": "./examples/unwrapKey-example.json" + } + } + } + }, + "/deletedkeys": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKeys", + "summary": "Lists the deleted keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys.", + "schema": { + "$ref": "#/definitions/DeletedKeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedKeys": { + "$ref": "./examples/GetDeletedKeys-example.json" + } + } + } + }, + "/deletedkeys/{key-name}": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKey", + "summary": "Gets the public part of a deleted key.", + "description": "The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission. ", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion information.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedKey": { + "$ref": "./examples/GetDeletedKey-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedKeys" + ], + "operationId": "PurgeDeletedKey", + "summary": "Permanently deletes the specified key.", + "description": "The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content, signaling that the key was permanently purged." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedKey": { + "$ref": "./examples/PurgeDeletedKey-example.json" + } + } + } + }, + "/deletedkeys/{key-name}/recover": { + "post": { + "tags": [ + "DeletedKeys" + ], + "operationId": "RecoverDeletedKey", + "summary": "Recovers the deleted key to its latest version.", + "description": "The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Key bundle of the original key and its attributes", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedKey": { + "$ref": "./examples/RecoverDeletedKey-example.json" + } + } + } + } + }, + "definitions": { + "JsonWebKey": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "kty": { + "type": "string", + "description": "JsonWebKey Key Type (kty), as defined in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true, + "values": [ + { + "value": "EC", + "description": "Elliptic Curve." + }, + { + "value": "EC-HSM", + "description": "Elliptic Curve with a private key which is not exportable from the HSM." + }, + { + "value": "RSA", + "description": "RSA (https://tools.ietf.org/html/rfc3447)" + }, + { + "value": "RSA-HSM", + "description": "RSA with a private key which is not exportable from the HSM." + }, + { + "value": "oct", + "description": "Octet sequence (used to represent symmetric keys)" + }, + { + "value": "oct-HSM", + "description": "Octet sequence (used to represent symmetric keys) which is not exportable from the HSM." + } + ] + } + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "format": "base64url", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "format": "base64url", + "description": "RSA public exponent." + }, + "d": { + "type": "string", + "format": "base64url", + "description": "RSA private exponent, or the D component of an EC private key." + }, + "dp": { + "x-ms-client-name": "DP", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "dq": { + "x-ms-client-name": "DQ", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "qi": { + "x-ms-client-name": "QI", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "p": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime." + }, + "q": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime, with p < q." + }, + "k": { + "type": "string", + "format": "base64url", + "description": "Symmetric key." + }, + "key_hsm": { + "x-ms-client-name": "t", + "type": "string", + "format": "base64url", + "description": "HSM Token, used with 'Bring Your Own Key'." + }, + "crv": { + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true, + "values": [ + { + "value": "P-256", + "description": "The NIST P-256 elliptic curve, AKA SECG curve SECP256R1." + }, + { + "value": "P-384", + "description": "The NIST P-384 elliptic curve, AKA SECG curve SECP384R1." + }, + { + "value": "P-521", + "description": "The NIST P-521 elliptic curve, AKA SECG curve SECP521R1." + }, + { + "value": "P-256K", + "description": "The SECG SECP256K1 elliptic curve." + } + ] + } + }, + "x": { + "type": "string", + "format": "base64url", + "description": "X component of an EC public key." + }, + "y": { + "type": "string", + "format": "base64url", + "description": "Y component of an EC public key." + } + }, + "description": "As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18" + }, + "KeyAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for keys in the current vault. If it contains 'Purgeable' the key can be permanently deleted by a privileged user; otherwise, only the system can purge the key, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The attributes of a key managed by the key vault service." + }, + "KeyBundle": { + "properties": { + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "A KeyBundle consisting of a WebKey plus its attributes." + }, + "KeyItem": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The key item containing key metadata." + }, + "DeletedKeyBundle": { + "allOf": [ + { + "$ref": "#/definitions/KeyBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion info" + }, + "DeletedKeyItem": { + "allOf": [ + { + "$ref": "#/definitions/KeyItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "The deleted key item containing the deleted key metadata and information about deletion." + }, + "KeyProperties": { + "properties": { + "exportable": { + "type": "boolean", + "description": "Indicates if the private key can be exported." + }, + "kty": { + "x-ms-client-name": "keyType", + "type": "string", + "description": "The type of key pair to be used for the certificate.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "reuse_key": { + "type": "boolean", + "description": "Indicates if the same key pair will be used on certificate renewal." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "Properties of the key pair backing a certificate." + }, + "KeyCreateParameters": { + "properties": { + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of key to create. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "The key create parameters.", + "required": [ + "kty" + ] + }, + "KeyImportParameters": { + "properties": { + "Hsm": { + "type": "boolean", + "description": "Whether to import as a hardware key (HSM) or software key." + }, + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key" + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key import parameters.", + "required": [ + "key" + ] + }, + "KeyOperationsParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "algorithm identifier", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5", + "A128GCM", + "A192GCM", + "A256GCM", + "A128KW", + "A192KW", + "A256KW" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "value": { + "type": "string", + "format": "base64url" + }, + "iv": { + "type": "string", + "format": "base64url", + "description": "Initialization vector for symmetric algorithms." + }, + "aad": { + "type": "string", + "format": "base64url", + "description": "Additional data to authenticate but not encrypt/decrypt when using authenticated crypto algorithms." + }, + "tag": { + "type": "string", + "format": "base64url", + "description": "The tag to authenticate when performing decryption with an authenticated algorithm." + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeySignParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true, + "values": [ + { + "value": "PS256", + "description": "RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS384", + "description": "RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS512", + "description": "RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS256", + "description": "RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS384", + "description": "RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS512", + "description": "RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RSNULL", + "description": "Reserved" + }, + { + "value": "ES256", + "description": "ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518." + }, + { + "value": "ES384", + "description": "ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES512", + "description": "ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES256K", + "description": "ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518" + } + ] + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeyVerifyParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true + } + }, + "digest": { + "type": "string", + "format": "base64url", + "description": "The digest used for signing." + }, + "value": { + "x-ms-client-name": "signature", + "type": "string", + "format": "base64url", + "description": "The signature to be verified." + } + }, + "description": "The key verify parameters.", + "required": [ + "alg", + "digest", + "value" + ] + }, + "KeyUpdateParameters": { + "properties": { + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + }, + "description": "Json web key operations. For more information on possible key operations, see JsonWebKeyOperation." + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key update parameters." + }, + "KeyRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "keyBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a key bundle." + } + }, + "description": "The key restore parameters.", + "required": [ + "value" + ] + }, + "KeyOperationResult": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier", + "readOnly": true + }, + "value": { + "x-ms-client-name": "result", + "type": "string", + "format": "base64url", + "readOnly": true + } + }, + "description": "The key operation result." + }, + "KeyVerifyResult": { + "properties": { + "value": { + "type": "boolean", + "readOnly": true, + "description": "True if the signature is verified, otherwise false." + } + }, + "description": "The key verify result." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of keys in the key vault along with a link to the next page of keys." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of keys." + } + }, + "description": "The key list result." + }, + "DeletedKeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedKeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted keys." + } + }, + "description": "A list of keys that have been deleted in this vault." + }, + "BackupKeyResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up key." + } + }, + "description": "The backup key result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json new file mode 100644 index 000000000000..a15c7e1d7dfb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json @@ -0,0 +1,505 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleDefinitions": { + "$ref": "./examples/ListRoleDefinitions-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter" + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteRoleAssignments": { + "$ref": "./examples/DeleteRoleAssignments-example.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PutRoleAssignments": { + "$ref": "./examples/PutRoleAssignments-example.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignments": { + "$ref": "./examples/GetRoleAssignments-example.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleAssignments": { + "$ref": "./examples/ListRoleAssignments-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter" + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + }, + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + } + }, + "description": "Role Definitions filter" + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "description": "Role definition permissions." + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role definition list operation result." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json new file mode 100644 index 000000000000..56c3c00f2b27 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json @@ -0,0 +1,861 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/secrets/{secret-name}": { + "put": { + "tags": [ + "Secrets" + ], + "operationId": "SetSecret", + "summary": "Sets a secret in a specified key vault.", + "description": " The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretSetParameters" + }, + "description": "The parameters for setting the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle containing the result of the set secret request.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetSecret": { + "$ref": "./examples/SetSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "operationId": "DeleteSecret", + "summary": "Deletes a secret from a specified key vault.", + "description": "The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted secret and information on when the secret will be deleted, and how to recover the deleted secret.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteSecret": { + "$ref": "./examples/DeleteSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/{secret-version}": { + "patch": { + "tags": [ + "Secrets" + ], + "operationId": "UpdateSecret", + "summary": "Updates the attributes associated with a specified secret in a given key vault.", + "description": "The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretUpdateParameters" + }, + "description": "The parameters for update secret operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateSecret": { + "$ref": "./examples/UpdateSecret-example.json" + } + } + }, + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecret", + "summary": "Get a specified secret from a given key vault.", + "description": "The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetSecret": { + "$ref": "./examples/GetSecret-example.json" + } + } + } + }, + "/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecrets", + "summary": "List secrets in a specified key vault.", + "description": "The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets in the vault along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecrets": { + "$ref": "./examples/GetSecrets-example.json" + } + } + } + }, + "/secrets/{secret-name}/versions": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecretVersions", + "summary": "List all versions of the specified secret.", + "description": "The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecretVersions": { + "$ref": "./examples/GetSecretVersions-example.json" + } + } + } + }, + "/deletedsecrets": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecrets", + "summary": "Lists deleted secrets for the specified vault.", + "description": "The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted secrets in the vault, along with a link to the next page of deleted secrets.", + "schema": { + "$ref": "#/definitions/DeletedSecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedSecrets": { + "$ref": "./examples/GetDeletedSecrets-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecret", + "summary": "Gets the specified deleted secret.", + "description": "The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle of the secret and its attributes.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedSecret": { + "$ref": "./examples/GetDeletedSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "PurgeDeletedSecret", + "summary": "Permanently deletes the specified secret.", + "description": "The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the secret was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedSecret": { + "$ref": "./examples/PurgeDeletedSecret-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}/recover": { + "post": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "RecoverDeletedSecret", + "summary": "Recovers the deleted secret to the latest version.", + "description": "Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Secret bundle of the original secret and its attributes.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedSecret": { + "$ref": "./examples/RecoverDeletedSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/backup": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "BackupSecret", + "summary": "Backs up the specified secret.", + "description": "Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up secret.", + "schema": { + "$ref": "#/definitions/BackupSecretResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupSecret": { + "$ref": "./examples/BackupSecret-example.json" + } + } + } + }, + "/secrets/restore": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "RestoreSecret", + "summary": "Restores a backed up secret to a vault.", + "description": "Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretRestoreParameters" + }, + "description": "The parameters to restore the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored secret bundle in the vault.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreSecret": { + "$ref": "./examples/RestoreSecret-example.json" + } + } + } + } + }, + "definitions": { + "SecretBundle": { + "properties": { + "value": { + "type": "string", + "description": "The secret value." + }, + "id": { + "type": "string", + "description": "The secret id." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "kid": { + "type": "string", + "readOnly": true, + "description": "If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true." + } + }, + "description": "A secret consisting of a value, id and its attributes." + }, + "SecretItem": { + "properties": { + "id": { + "type": "string", + "description": "Secret identifier." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The secret item containing secret metadata." + }, + "DeletedSecretBundle": { + "allOf": [ + { + "$ref": "#/definitions/SecretBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedSecretItem": { + "allOf": [ + { + "$ref": "#/definitions/SecretItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "The deleted secret item containing metadata about the deleted secret." + }, + "SecretAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The secret management attributes." + }, + "SecretRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "secretBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a secret bundle." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "SecretProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "The media type (MIME type)." + } + }, + "description": "Properties of the key backing a certificate." + }, + "SecretSetParameters": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + } + }, + "description": "The secret set parameters.", + "required": [ + "value" + ] + }, + "SecretUpdateParameters": { + "properties": { + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The secret update parameters." + }, + "SecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of secrets in the key vault along with a link to the next page of secrets." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of secrets." + } + }, + "description": "The secret list result." + }, + "DeletedSecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted secrets." + } + }, + "description": "The deleted secret list result" + }, + "BackupSecretResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up secret." + } + }, + "description": "The backup secret result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json new file mode 100644 index 000000000000..39e250bafe15 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json @@ -0,0 +1,1592 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/storage": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccounts", + "description": "List storage accounts managed by the specified key vault. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of storage accounts along with a link to the next page of storage accounts.", + "schema": { + "$ref": "#/definitions/StorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage account": { + "$ref": "./examples/listStorageAccount.json" + } + } + } + }, + "/deletedstorage": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccounts", + "summary": "Lists deleted storage accounts for the specified vault.", + "description": "The Get Deleted Storage Accounts operation returns the storage accounts that have been deleted for a vault enabled for soft-delete. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted storage accounts in the vault, along with a link to the next page of deleted storage accounts.", + "schema": { + "$ref": "#/definitions/DeletedStorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Accounts": { + "$ref": "./examples/listDeletedStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccount", + "summary": "Gets the specified deleted storage account.", + "description": "The Get Deleted Storage Account operation returns the specified deleted storage account along with its attributes. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when it will be purged, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage": { + "$ref": "./examples/getDeletedStorageAccount.json" + } + } + }, + "delete": { + "tags": [ + "DeletedStorage" + ], + "operationId": "PurgeDeletedStorageAccount", + "summary": "Permanently deletes the specified storage account.", + "description": "The purge deleted storage account operation removes the secret permanently, without the possibility of recovery. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/purge permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the storage account was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Purge Deleted Storage Account": { + "$ref": "./examples/purgeStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedStorageAccount", + "summary": "Recovers the deleted storage account.", + "description": "Recovers the deleted storage account in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A storage bundle of the original storage account and its attributes.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Account": { + "$ref": "./examples/recoverStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/backup": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "BackupStorageAccount", + "summary": "Backs up the specified storage account.", + "description": "Requests that a backup of the specified storage account be downloaded to the client. This operation requires the storage/backup permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up storage account.", + "schema": { + "$ref": "#/definitions/BackupStorageResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Backup Storage Account": { + "$ref": "./examples/backupStorageAccount.json" + } + } + } + }, + "/storage/restore": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RestoreStorageAccount", + "summary": "Restores a backed up storage account to a vault.", + "description": "Restores a backed up storage account to a vault. This operation requires the storage/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageRestoreParameters" + }, + "description": "The parameters to restore the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored storage account bundle in the vault.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Restore Storage Account": { + "$ref": "./examples/restoreStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteStorageAccount", + "description": "Deletes a storage account. This operation requires the storage/delete permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when the storage account will be deleted, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage account": { + "$ref": "./examples/deleteStorageAccount.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccount", + "description": "Gets information about a specified storage account. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage account": { + "$ref": "./examples/getStorageAccount.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetStorageAccount", + "description": "Creates or updates a new storage account. This operation requires the storage/set permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to create a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage account": { + "$ref": "./examples/setStorageAccount.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateStorageAccount", + "description": "Updates the specified attributes associated with the given storage account. This operation requires the storage/set/update permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to update a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage account": { + "$ref": "./examples/updateStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/regeneratekey": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RegenerateStorageAccountKey", + "description": "Regenerates the specified key value for the given storage account. This operation requires the storage/regeneratekey permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerteKeyParameters" + }, + "description": "The parameters to regenerate storage account key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Regenerate Storage account key": { + "$ref": "./examples/regenerateStorageAccountKey.json" + } + } + } + }, + "/storage/{storage-account-name}/sas": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinitions", + "description": "List storage SAS definitions for the given storage account. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions.", + "schema": { + "$ref": "#/definitions/SasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage Sas Definition": { + "$ref": "./examples/listStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinitions", + "summary": "Lists deleted SAS definitions for the specified vault and storage account.", + "description": "The Get Deleted Sas Definitions operation returns the SAS definitions that have been deleted for a vault enabled for soft-delete. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted SAS definitions for the storage account, along with a link to the next page of deleted SAS definitions.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Sas Definitions": { + "$ref": "./examples/listDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinition", + "summary": "Gets the specified deleted sas definition.", + "description": "The Get Deleted SAS Definition operation returns the specified deleted SAS definition along with its attributes. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the it will be purged, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage Sas Definition": { + "$ref": "./examples/getDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedSasDefinition", + "summary": "Recovers the deleted SAS definition.", + "description": "Recovers the deleted SAS definition for the specified storage account. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A SAS definition bundle of the original SAS definition and its attributes.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Sas Definition": { + "$ref": "./examples/recoverStorageSasDefinition.json" + } + } + } + }, + "/storage/{storage-account-name}/sas/{sas-definition-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteSasDefinition", + "description": "Deletes a SAS definition from a specified storage account. This operation requires the storage/deletesas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the SAS definition will be deleted, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage Sas Definition": { + "$ref": "./examples/deleteStorageSasDefinition.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinition", + "description": "Gets information about a SAS definition for the specified storage account. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage Sas Definition": { + "$ref": "./examples/getStorageSasDefinition.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetSasDefinition", + "description": "Creates or updates a new SAS definition for the specified storage account. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionCreateParameters" + }, + "description": "The parameters to create a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage Sas definition": { + "$ref": "./examples/setStorageSasDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateSasDefinition", + "description": "Updates the specified attributes associated with the given SAS definition. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionUpdateParameters" + }, + "description": "The parameters to update a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage Sas definition": { + "$ref": "./examples/updateStorageSasDefinition.json" + } + } + } + } + }, + "definitions": { + "StorageRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "storageBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a storage account." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "StorageAccountAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for storage accounts in the current vault. If it contains 'Purgeable' the storage account can be permanently deleted by a privileged user; otherwise, only the system can purge the storage account, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The storage account management attributes." + }, + "StorageBundle": { + "properties": { + "id": { + "type": "string", + "description": "The storage account id.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The storage account resource id.", + "readOnly": true + }, + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name.", + "readOnly": true + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user.", + "readOnly": true + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A Storage account bundle consists of key vault storage account details plus its attributes." + }, + "DeletedStorageBundle": { + "allOf": [ + { + "$ref": "#/definitions/StorageBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "A deleted storage account bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "StorageAccountCreateParameters": { + "properties": { + "resourceId": { + "type": "string", + "description": "Storage account resource id." + }, + "activeKeyName": { + "type": "string", + "description": "Current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account create parameters.", + "required": [ + "resourceId", + "activeKeyName", + "autoRegenerateKey" + ] + }, + "StorageAccountUpdateParameters": { + "properties": { + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account update parameters." + }, + "StorageAccountRegenerteKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The storage account key name." + } + }, + "description": "The storage account key regenerate parameters.", + "required": [ + "keyName" + ] + }, + "StorageAccountItem": { + "properties": { + "id": { + "type": "string", + "description": "Storage identifier.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Storage account resource Id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The storage account item containing storage account metadata." + }, + "DeletedStorageAccountItem": { + "allOf": [ + { + "$ref": "#/definitions/StorageAccountItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "The deleted storage account item containing metadata about the deleted storage account." + }, + "StorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of storage accounts in the key vault along with a link to the next page of storage accounts." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of storage accounts." + } + }, + "description": "The storage accounts list result." + }, + "DeletedStorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedStorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted storage accounts in the vault along with a link to the next page of deleted storage accounts" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted storage accounts." + } + }, + "description": "The deleted storage account list result" + }, + "SasDefinitionAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for SAS definitions in the current vault. If it contains 'Purgeable' the SAS definition can be permanently deleted by a privileged user; otherwise, only the system can purge the SAS definition, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The SAS definition management attributes." + }, + "SasDefinitionBundle": { + "properties": { + "id": { + "type": "string", + "description": "The SAS definition id.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "Storage account SAS definition secret id.", + "readOnly": true + }, + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template.", + "readOnly": true + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + }, + "readOnly": true + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A SAS definition bundle consists of key vault SAS definition details plus its attributes." + }, + "DeletedSasDefinitionBundle": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "A deleted SAS definition bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "SasDefinitionItem": { + "properties": { + "id": { + "type": "string", + "description": "The storage SAS identifier.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "The storage account SAS definition secret id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The SAS definition item containing storage SAS definition metadata." + }, + "DeletedSasDefinitionItem": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "The deleted SAS definition item containing metadata about the deleted SAS definition." + }, + "SasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of SAS definitions." + } + }, + "description": "The storage account SAS definition list result." + }, + "DeletedSasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted SAS definitions in the vault along with a link to the next page of deleted sas definitions" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted SAS definitions." + } + }, + "description": "The deleted SAS definition list result" + }, + "SasDefinitionCreateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition create parameters.", + "required": [ + "templateUri", + "sasType", + "validityPeriod" + ] + }, + "SasDefinitionUpdateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition update parameters." + }, + "BackupStorageResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up storage account." + } + }, + "description": "The backup storage result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json index 81629df16667..bc7638a40ffd 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json @@ -245,7 +245,7 @@ { "name": "key-version", "in": "path", - "required": true, + "required": false, "type": "string", "description": "Adding the version parameter retrieves a specific version of a key." }, diff --git a/specification/keyvault/data-plane/readme.go.md b/specification/keyvault/data-plane/readme.go.md index 0e1e4c5ac981..cb56a1deb4dc 100644 --- a/specification/keyvault/data-plane/readme.go.md +++ b/specification/keyvault/data-plane/readme.go.md @@ -13,12 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-7.2-preview - tag: package-7.1-preview - tag: package-7.0 - tag: package-2016-10 - tag: package-2015-06 ``` +### Tag: package-7.2-preview and go + +These settings apply only when `--tag=package-7.2-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-7.2-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.2-preview/$(namespace) +``` + ### Tag: package-7.1-preview and go These settings apply only when `--tag=package-7.1-preview --go` is specified on the command line. diff --git a/specification/keyvault/data-plane/readme.md b/specification/keyvault/data-plane/readme.md index 1f3f78e78063..eb859f72ce78 100644 --- a/specification/keyvault/data-plane/readme.md +++ b/specification/keyvault/data-plane/readme.md @@ -26,7 +26,22 @@ These are the global settings for the KeyVault API. ``` yaml openapi-type: data-plane -tag: package-7.1-preview +tag: package-7.2-preview +``` + +### Tag: package-7.2-preview + +These settings apply only when `--tag=package-7.2-preview` is specified on the command line. + +```yaml $(tag) == 'package-7.2-preview' +input-file: +- Microsoft.KeyVault/preview/7.2/certificates.json +- Microsoft.KeyVault/preview/7.2/common.json +- Microsoft.KeyVault/preview/7.2/keys.json +- Microsoft.KeyVault/preview/7.2/rbac.json +- Microsoft.KeyVault/preview/7.2/secrets.json +- Microsoft.KeyVault/preview/7.2/storage.json +- Microsoft.KeyVault/preview/7.2/backuprestore.json ``` ### Tag: package-7.1-preview @@ -138,6 +153,13 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.KeyVault/preview/7.2/certificates.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/common.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/keys.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/rbac.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/secrets.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/storage.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/backuprestore.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/certificates.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/common.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/keys.json diff --git a/specification/keyvault/data-plane/readme.python.md b/specification/keyvault/data-plane/readme.python.md index aded0b377442..e6c36cc73ae4 100644 --- a/specification/keyvault/data-plane/readme.python.md +++ b/specification/keyvault/data-plane/readme.python.md @@ -21,11 +21,22 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-7.2-preview - tag: package-7.1-preview - tag: package-7.0 - tag: package-2016-10 ``` +### Tag: package-7.2-preview and python + +These settings apply only when `--tag=package-7.2-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-7.2-preview' && $(python) +python: + namespace: azure.keyvault.v7_2 + output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_2_preview +``` + ### Tag: package-7.1-preview and python These settings apply only when `--tag=package-7.1-preview --python` is specified on the command line. diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json index ede2c4ba6953..b0819e1b6521 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json @@ -855,7 +855,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." }, "vaultUri": { "type": "string", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json index 00ded35c2671..2e927897cf70 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json @@ -1,29 +1,28 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14" + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" }, "responses": { - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Disconnected" - } - } - }, - "202":{ - "headers":{ - "Retry-After": "60", - "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" - } - }, - "204":{ + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json index 3946f52f8f3a..2fb84a554652 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json @@ -1,29 +1,29 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" }, - "responses":{ - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Succeeded", - "privateEndpoint":{ - "id":"/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" - }, - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"This was automatically approved by user1234@contoso.com", - "actionRequired":"None" - } - } + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionRequired": "None" + } } - } + } + } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json index 902f98745c4b..f76786fad20e 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json @@ -1,30 +1,30 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "api-version":"2018-02-14" - }, - "responses":{ - "200":{ - "body":{ - "value":[ - { - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", - "name":"vault", - "type":"Microsoft.KeyVault/vaults/privateLinkResources", - "properties":{ - "groupId":"vault", - "requiredMembers":[ - "default" - ], - "requiredZoneNames":[ - "privatelink.vaultcore.azure.net" - ] - } - } - ] - } + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", + "name": "vault", + "type": "Microsoft.KeyVault/vaults/privateLinkResources", + "properties": { + "groupId": "vault", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.vaultcore.azure.net" + ] + } + } + ] } - } + } + } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json index 1324032bcde9..2e37409c6098 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json @@ -1,37 +1,37 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14", - "properties":{ - "properties":{ - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"My name is Joe and I'm approving this." - } - } + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } } - }, - "responses":{ - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Succeeded", - "privateEndpoint":{ - "id":"/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" - }, - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"My name is Joe and I'm approving this.", - "actionRequired":"None" - } - } - } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionRequired": "None" + } + } } - } + } + } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json index f163ecad84df..e83bef971bcb 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json @@ -1102,7 +1102,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." }, "vaultUri": { "type": "string", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json index 00ded35c2671..2e927897cf70 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json @@ -1,29 +1,28 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14" + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" }, "responses": { - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Disconnected" - } - } - }, - "202":{ - "headers":{ - "Retry-After": "60", - "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" - } - }, - "204":{ + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json index 3946f52f8f3a..2fb84a554652 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json @@ -1,29 +1,29 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" }, - "responses":{ - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Succeeded", - "privateEndpoint":{ - "id":"/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" - }, - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"This was automatically approved by user1234@contoso.com", - "actionRequired":"None" - } - } + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionRequired": "None" + } } - } + } + } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json index 902f98745c4b..f76786fad20e 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json @@ -1,30 +1,30 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "api-version":"2018-02-14" - }, - "responses":{ - "200":{ - "body":{ - "value":[ - { - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", - "name":"vault", - "type":"Microsoft.KeyVault/vaults/privateLinkResources", - "properties":{ - "groupId":"vault", - "requiredMembers":[ - "default" - ], - "requiredZoneNames":[ - "privatelink.vaultcore.azure.net" - ] - } - } - ] - } + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", + "name": "vault", + "type": "Microsoft.KeyVault/vaults/privateLinkResources", + "properties": { + "groupId": "vault", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.vaultcore.azure.net" + ] + } + } + ] } - } + } + } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json index 1324032bcde9..2e37409c6098 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json @@ -1,37 +1,37 @@ { - "parameters":{ - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName":"sample-group", - "vaultName":"sample-vault", - "privateEndpointConnectionName":"sample-pec", - "api-version":"2018-02-14", - "properties":{ - "properties":{ - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"My name is Joe and I'm approving this." - } - } + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } } - }, - "responses":{ - "200":{ - "body":{ - "id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", - "name":"sample-pec", - "type":"Microsoft.KeyVault/vaults/privateEndpointConnections", - "properties":{ - "provisioningState":"Succeeded", - "privateEndpoint":{ - "id":"/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" - }, - "privateLinkServiceConnectionState":{ - "status":"Approved", - "description":"My name is Joe and I'm approving this.", - "actionRequired":"None" - } - } - } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionRequired": "None" + } + } } - } + } + } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json index 73f9aec20042..93c08798eb4a 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json @@ -1102,7 +1102,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." }, "vaultUri": { "type": "string", @@ -1123,7 +1123,7 @@ "enableSoftDelete": { "type": "boolean", "default": true, - "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once it's been set to true value, it can NOT be reverted to false." + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once set to true, it cannot be reverted to false." }, "softDeleteRetentionInDays": { "type": "integer", @@ -1203,7 +1203,7 @@ }, "enableSoftDelete": { "type": "boolean", - "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If omitted, assume true as default value. Once set to true, cannot be reverted to false." + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. Once set to true, it cannot be reverted to false." }, "enableRbacAuthorization": { "type": "boolean", diff --git a/specification/keyvault/resource-manager/readme.cli.md b/specification/keyvault/resource-manager/readme.cli.md index 759981e05252..f4547fe86214 100644 --- a/specification/keyvault/resource-manager/readme.cli.md +++ b/specification/keyvault/resource-manager/readme.cli.md @@ -43,18 +43,46 @@ directive: ]} cli: - cli-directive: + test-scenario: + - name: /Vaults/put/Create a new vault or update an existing vault + - name: /Vaults/put/Create or update a vault with network acls + disabled: true + - name: /Vaults/put/Add an access policy, or update an access policy with new permissions + disabled: true + - name: /PrivateEndpointConnections/put/KeyVaultPutPrivateEndpointConnection + disabled: true + - name: /PrivateEndpointConnections/get/KeyVaultGetPrivateEndpointConnection + disabled: true + - name: /PrivateLinkResources/get/KeyVaultListPrivateLinkResources + disabled: true + - name: /Vaults/get/Retrieve a vault + - name: /Vaults/get/List vaults in the specified resource group + - name: /Vaults/get/List deleted vaults in the specified subscription + - name: /Vaults/get/List vaults in the specified subscription + - name: /Vaults/get/List vaults in the specified subscription + - name: /Operations/get/Lists available Rest API operations. + - name: /Vaults/patch/Update an existing vault + disabled: true + - name: /Vaults/post/Validate a vault name + - name: /PrivateEndpointConnections/delete/KeyVaultDeletePrivateEndpointConnection + disabled: true + - name: /Vaults/delete/Delete a vault + - name: /Vaults/get/Retrieve a deleted vault + disabled: true + - name: /Vaults/post/Purge a deleted vault + disabled: true + cli-directive: - where: resource: 'vaults' - op: '^(get_deleted|purge_deleted)$' + op: '^(getDeleted|purgeDeleted)$' hidden: true - where: - enum: 'sku_name' + enum: 'skuName' alias: 'sku' name: 'sku' - where: resource: 'vaults' - op: 'check_name_availability' + op: 'checkNameAvailability' name: 'test' hidden: true - where: @@ -62,7 +90,7 @@ cli: op: 'update' hidden: true - where: - type: 'vaults' + type: 'vault' formatTable: properties: - Name @@ -70,7 +98,7 @@ cli: - Location - Uri - where: - type: 'deleted_vault' + type: 'deletedVault' formatTable: properties: - Name diff --git a/specification/keyvault/resource-manager/readme.python.md b/specification/keyvault/resource-manager/readme.python.md index 27231213d655..883a0a256ffa 100644 --- a/specification/keyvault/resource-manager/readme.python.md +++ b/specification/keyvault/resource-manager/readme.python.md @@ -4,9 +4,9 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) -python-mode: create +``` yaml !$(track2) python: + python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 @@ -15,22 +15,48 @@ python: no-namespace-folders: true ``` +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-keyvault +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: - tag: package-2019-09 - tag: package-2018-02 - tag: package-2016-10 ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2019-09 + - tag: package-2018-02 + - tag: package-2016-10 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/ +clear-output-folder: false +perform-load: false +``` + ### Tag: package-2019-09 and python These settings apply only when `--tag=package-2019-09 --python` is specified on the command line. -``` yaml $(tag) == 'package-2019-09' && $(python) +``` yaml $(tag) == 'package-2019-09' +namespace: azure.mgmt.keyvault.v2019_09_01 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2019_09_01 python: namespace: azure.mgmt.keyvault.v2019_09_01 output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2019_09_01 @@ -40,7 +66,9 @@ python: These settings apply only when `--tag=package-2018-02 --python` is specified on the command line. -``` yaml $(tag) == 'package-2018-02' && $(python) +``` yaml $(tag) == 'package-2018-02' +namespace: azure.mgmt.keyvault.v2018_02_14 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2018_02_14 python: namespace: azure.mgmt.keyvault.v2018_02_14 output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2018_02_14 @@ -50,8 +78,10 @@ python: These settings apply only when `--tag=package-2016-10 --python` is specified on the command line. -``` yaml $(tag) == 'package-2016-10' && $(python) +``` yaml $(tag) == 'package-2016-10' +namespace: azure.mgmt.keyvault.v2016_10_01 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 python: namespace: azure.mgmt.keyvault.v2016_10_01 - output-folder: $(python-sdks-folder/keyvault)/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 + output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 ``` diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json new file mode 100644 index 000000000000..619c3831e7e9 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1", + "sourceControlConfiguration": { + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + }, + "200": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json new file mode 100644 index 000000000000..7b8df4bf751d --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json new file mode 100644 index 000000000000..6773b204f031 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "headers": {}, + "description": "Details of the Source Control Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json new file mode 100644 index 000000000000..1e1f51dba93a --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SRSClusterconfigs", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + }, + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SCRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SCRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SCRSClusterconfigs", + "operatorNamespace": "SCRS_Namespace", + "operatorInstanceName": "SCRSGitHubFluxOp-02", + "operatorType": "Flux", + "operatorScope": "cluster", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + } + ] + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..1e988fe3ab4d --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/read", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Get Source Control Configuration", + "description": "Get the specified Source Control Configuration." + } + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/write", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Create a Source Control Configuration", + "description": "Create the Source Control Configuration specified." + } + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/delete", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Delete Source Control Configuration", + "description": "Delete the specified Source Control Configuration." + } + } + ] + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json new file mode 100644 index 000000000000..77717c096ced --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json @@ -0,0 +1,664 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SourceControlConfigurationClient", + "description": "Use these APIs to create Source Control Configuration resources through ARM, for Kubernetes Clusters." + }, + "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/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/{sourceControlConfigurationName}": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Gets details of the Source Control Configuration.", + "operationId": "SourceControlConfigurations_Get", + "x-ms-examples": { + "Get Source Control Configuration": { + "$ref": "./examples/GetSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Create a new Kubernetes Source Control Configuration.", + "operationId": "SourceControlConfigurations_CreateOrUpdate", + "x-ms-examples": { + "Create Source Control Configuration": { + "$ref": "./examples/CreateSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "sourceControlConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "Properties necessary to Create KubernetesConfiguration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "This will delete the YAML file used to set up the Source control configuration, thus stopping future sync from the source repo.", + "operationId": "SourceControlConfigurations_Delete", + "x-ms-examples": { + "Delete Source Control Configuration": { + "$ref": "./examples/DeleteSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has been completed successfully." + }, + "204": { + "description": "No Content. The request has been accepted but the configuration was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "List all Source Control Configurations.", + "operationId": "SourceControlConfigurations_List", + "x-ms-examples": { + "List Source Control Configuration": { + "$ref": "./examples/ListSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.KubernetesConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "BatchAccountDelete": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List all the available operations the KubernetesConfiguration resource provider supports.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Resource": { + "description": "The Resource model definition.", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "Result": { + "description": "Sample result definition", + "properties": { + "sampleProperty": { + "type": "string", + "description": "Sample property of type string" + } + } + }, + "ErrorResponse": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } + }, + "ComplianceStatus": { + "description": "Compliance Status details", + "type": "object", + "readOnly": true, + "properties": { + "complianceState": { + "description": "The compliance state of the configuration.", + "$ref": "#/definitions/ComplianceState", + "readOnly": true + }, + "lastConfigApplied": { + "description": "Datetime the configuration was last applied.", + "type": "string", + "format": "date-time" + }, + "message": { + "description": "Message from when the configuration was applied.", + "type": "string" + }, + "messageLevel": { + "description": "Level of the message.", + "type": "string", + "enum": [ + "Error", + "Warning", + "Information" + ], + "x-ms-enum": { + "name": "messageLevel", + "modelAsString": true + } + } + } + }, + "ComplianceState": { + "description": "The compliance state of the configuration.", + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "complianceState", + "modelAsString": true + }, + "enum": [ + "Pending", + "Compliant", + "Noncompliant", + "Installed", + "Failed" + ] + }, + "ChartVersion": { + "description": "Version of the operator Helm chart.", + "type": "string" + }, + "ChartValues": { + "description": "Values override for the operator Helm chart.", + "type": "string" + }, + "HelmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "properties": { + "chartVersion": { + "description": "Version of the operator Helm chart.", + "$ref": "#/definitions/ChartVersion" + }, + "chartValues": { + "description": "Values override for the operator Helm chart.", + "$ref": "#/definitions/ChartValues" + } + } + }, + "SourceControlConfiguration": { + "description": "The SourceControl Configuration object.", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Properties to create a Source Control Configuration resource", + "properties": { + "repositoryUrl": { + "type": "string", + "description": "Url of the SourceControl Repository." + }, + "operatorNamespace": { + "description": "The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only.", + "type": "string", + "default": "default" + }, + "operatorInstanceName": { + "description": "Instance name of the operator - identifying the specific configuration.", + "type": "string" + }, + "operatorType": { + "description": "Type of the operator", + "type": "string", + "enum": [ + "Flux" + ], + "x-ms-enum": { + "name": "operatorType", + "modelAsString": true + } + }, + "operatorParams": { + "description": "Any Parameters for the Operator instance in string format.", + "type": "string" + }, + "operatorScope": { + "description": "Scope at which the operator will be installed.", + "type": "string", + "enum": [ + "cluster", + "namespace" + ], + "default": "cluster", + "x-ms-enum": { + "name": "operatorScope", + "modelAsString": true + } + }, + "repositoryPublicKey": { + "description": "Public Key associated with this SourceControl configuration (either generated within the cluster or provided by the user).", + "type": "string", + "readOnly": true + }, + "enableHelmOperator": { + "description": "Option to enable Helm Operator for this git configuration.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "enableHelmOperator", + "modelAsString": true + } + }, + "helmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "$ref": "#/definitions/HelmOperatorProperties" + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource provider.", + "readOnly": true, + "x-ms-enum": { + "modelAsString": true, + "name": "ProvisioningState" + }, + "enum": [ + "Accepted", + "Deleting", + "Running", + "Succeeded", + "Failed" + ] + }, + "complianceStatus": { + "type": "object", + "description": "Compliance Status of the Configuration", + "readOnly": true, + "$ref": "#/definitions/ComplianceStatus" + } + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "SourceControlConfigurationList": { + "description": "Result of the request to list Source Control Configurations. It contains a list of SourceControlConfiguration objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "List of Source Control Configurations within a Kubernetes cluster." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of configuration objects, if any." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft KubernetesConfiguration.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + } + } + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to the next set of results, if any." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ClusterRpParameter": { + "name": "clusterRp", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.ContainerService", + "Microsoft.Kubernetes" + ], + "description": "The Kubernetes cluster RP - either Microsoft.ContainerService (for AKS clusters) or Microsoft.Kubernetes (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterResourceNameParameter": { + "name": "clusterResourceName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "managedClusters", + "connectedClusters" + ], + "description": "The Kubernetes cluster resource name - either managedClusters (for AKS clusters) or connectedClusters (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the kubernetes cluster.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + }, + "SourceControlConfigurationNameParameter": { + "name": "sourceControlConfigurationName", + "in": "path", + "description": "Name of the Source Control Configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/readme.csharp.md b/specification/kubernetesconfiguration/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..dce4dccdbb77 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Azure.Management.KubernetesConfiguration + output-folder: $(csharp-sdks-folder)/kubernetesconfiguration/Microsoft.Azure.Management.KubernetesConfiguration/src/Generated +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.go.md b/specification/kubernetesconfiguration/resource-manager/readme.go.md new file mode 100644 index 000000000000..2e168bef03b1 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview and go + +These settings apply only when `--tag=package-2019-11-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2019-11-01-preview' && $(go) +namespace: kubernetesconfiguration +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-11-01-preview/$(namespace) +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.java.md b/specification/kubernetesconfiguration/resource-manager/readme.java.md new file mode 100644 index 000000000000..14b37a01d1b7 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.java.md @@ -0,0 +1,33 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.kubernetesconfiguration +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-kubernetesconfiguration +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview and java + +These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kubernetesconfiguration.v2019_11_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2019_11_01_preview + regenerate-manager: true + generate-interface: true +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.md b/specification/kubernetesconfiguration/resource-manager/readme.md new file mode 100644 index 000000000000..67f97d8b6dcf --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.md @@ -0,0 +1,103 @@ +# kubernetesconfiguration + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for kubernetesconfiguration. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the kubernetesconfiguration. + +```yaml +openapi-type: arm +tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview + +These settings apply only when `--tag=package-2019-11-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2019-11-01-preview' +input-file: + - Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_kubernetesconfiguration'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` \ No newline at end of file diff --git a/specification/kubernetesconfiguration/resource-manager/readme.python.md b/specification/kubernetesconfiguration/resource-manager/readme.python.md new file mode 100644 index 000000000000..cc0640133e87 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +```yaml $(python) +python: + python-mode: create + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.kubernetesconfiguration + package-name: azure-mgmt-kubernetesconfiguration + package-version: 0.1.1 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration/azure/mgmt/kubernetesconfiguration +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration +``` \ No newline at end of file diff --git a/specification/kubernetesconfiguration/resource-manager/readme.ruby.md b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..18eab73d201b --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md @@ -0,0 +1,26 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_kubernetesconfiguration +package-version: "0.1.1" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2019-11-01-preview' +``` + +### Tag: package-2019-11-01-preview and ruby + +These settings apply only when `--tag=package-2019-11-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2019-11-01-preview' && $(ruby) +namespace: "Azure::KubernetesConfiguration::Mgmt::V2019_11_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_kubernetesconfiguration/lib +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.typescript.md b/specification/kubernetesconfiguration/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..f9fd82a61c46 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-kubernetesconfiguration" + output-folder: "$(typescript-sdks-folder)/sdk/kubernetesconfiguration/arm-kubernetesconfiguration" + clear-output-folder: true + override-client-name: SourceControlConfigurationClient + generate-metadata: true +``` diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json index 590e83a54302..7e1f29c9c31a 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json @@ -41,9 +41,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -107,9 +107,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -199,9 +199,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -265,9 +265,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -358,9 +358,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -424,9 +424,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json index 2c06d0e708ba..6e36a3f0cb3b 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json @@ -43,9 +43,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -109,9 +109,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json index c83a4c973eac..df12244a1c89 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json @@ -242,9 +242,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "None" }, "securitySettings": { @@ -308,9 +308,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "None" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json index 04f7c341dd01..fcf847c5db95 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json @@ -10,27 +10,25 @@ "responses": { "200": { "body": { - "value": { - "properties": { - "startTime": "2018-08-10T20:16:32.0387927Z", - "endTime": "2018-08-10T20:16:32.2987996Z", - "scheduledTime": "2018-08-10T20:16:31.6344174Z", - "status": "Succeeded", - "code": "OK", - "correlation": { - "clientTrackingId": "08586676746934337772206998657CU22" - }, - "fired": true, - "run": { - "name": "08586676746934337772206998657CU22", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/runs/08586676746934337772206998657CU22", - "type": "Microsoft.Logic/workflows/runs" - } + "properties": { + "startTime": "2018-08-10T20:16:32.0387927Z", + "endTime": "2018-08-10T20:16:32.2987996Z", + "scheduledTime": "2018-08-10T20:16:31.6344174Z", + "status": "Succeeded", + "code": "OK", + "correlation": { + "clientTrackingId": "08586676746934337772206998657CU22" }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/triggers/testTriggerName/histories/08586676746934337772206998657CU22", - "name": "08586676746934337772206998657CU22", - "type": "Microsoft.Logic/workflows/triggers/histories" - } + "fired": true, + "run": { + "name": "08586676746934337772206998657CU22", + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/runs/08586676746934337772206998657CU22", + "type": "Microsoft.Logic/workflows/runs" + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/triggers/testTriggerName/histories/08586676746934337772206998657CU22", + "name": "08586676746934337772206998657CU22", + "type": "Microsoft.Logic/workflows/triggers/histories" } } } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json index beaf47699d0a..43b3583040e2 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json @@ -7,6 +7,7 @@ "triggerName": "manual" }, "responses": { - "default": {} + "200": {}, + "202": {} } } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json index ae2ca279220f..8f8681c1026c 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json @@ -3,62 +3,7 @@ "api-version": "2019-05-01", "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "resourceGroupName": "test-resource-group", - "workflowName": "test-workflow", - "workflow": { - "properties": { - "integrationAccount": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account" - }, - "definition": { - "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#", - "contentVersion": "1.0.0.0", - "parameters": { - "$connections": { - "defaultValue": {}, - "type": "Object" - } - }, - "triggers": { - "manual": { - "type": "Request", - "kind": "Http", - "inputs": { - "schema": {} - } - } - }, - "actions": { - "Find_pet_by_ID": { - "runAfter": {}, - "type": "ApiConnection", - "inputs": { - "host": { - "connection": { - "name": "@parameters('$connections')['test-custom-connector']['connectionId']" - } - }, - "method": "get", - "path": "/pet/@{encodeURIComponent('1')}" - } - } - }, - "outputs": {} - }, - "parameters": { - "$connections": { - "value": { - "test-custom-connector": { - "connectionId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Web/connections/test-custom-connector", - "connectionName": "test-custom-connector", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/brazilsouth/managedApis/test-custom-connector" - } - } - } - } - }, - "location": "brazilsouth", - "tags": {} - } + "workflowName": "test-workflow" }, "responses": { "200": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json index ba6aa2f78c69..91dc9bc4a5ad 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json @@ -8,9 +8,7 @@ "validate": { "properties": { "integrationAccount": { - "name": "test-integration-account", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account", - "type": "Microsoft.Logic/integrationAccounts" + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account" }, "definition": { "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#", @@ -21,9 +19,6 @@ "outputs": {} } }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow", - "name": "test-workflow", - "type": "Microsoft.Logic/workflows", "location": "brazilsouth", "tags": {} } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json index 5cc3c89d8da1..fc050556f257 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json @@ -18,8 +18,6 @@ "outputs": {} } }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow", - "name": "test-workflow", "location": "brazilsouth", "tags": {} } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json index c5cf4d81a7f2..d510adca0531 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json @@ -294,15 +294,6 @@ }, { "$ref": "#/parameters/api-version" - }, - { - "name": "workflow", - "description": "The workflow.", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Workflow" - } } ], "responses": { @@ -668,7 +659,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Workflow" + "$ref": "#/definitions/WorkflowReference" } }, { @@ -1143,10 +1134,16 @@ } ], "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, "default": { - "description": "All status codes are acceptable.", + "description": "Error response describing why the trigger run failed.", "schema": { - "$ref": "#/definitions/Object" + "$ref": "#/definitions/ErrorResponse" } } } @@ -2733,6 +2730,15 @@ "required": true, "type": "string" }, + { + "name": "validate", + "description": "The workflow.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workflow" + } + }, { "$ref": "#/parameters/api-version" } @@ -6508,8 +6514,13 @@ "$ref": "#/definitions/FlowEndpointsConfiguration", "description": "The endpoints configuration." }, + "accessControl": { + "$ref": "#/definitions/FlowAccessControlConfiguration", + "description": "The access control configuration." + }, "sku": { "$ref": "#/definitions/Sku", + "readOnly": true, "description": "The sku." }, "integrationAccount": { @@ -6580,6 +6591,11 @@ "WorkflowVersionProperties": { "type": "object", "properties": { + "provisioningState": { + "$ref": "#/definitions/WorkflowProvisioningState", + "readOnly": true, + "description": "The provisioning state." + }, "createdTime": { "type": "string", "format": "date-time", @@ -6606,8 +6622,17 @@ "readOnly": true, "description": "Gets the access endpoint." }, + "endpointsConfiguration": { + "$ref": "#/definitions/FlowEndpointsConfiguration", + "description": "The endpoints configuration." + }, + "accessControl": { + "$ref": "#/definitions/FlowAccessControlConfiguration", + "description": "The access control configuration." + }, "sku": { "$ref": "#/definitions/Sku", + "readOnly": true, "description": "The sku." }, "integrationAccount": { @@ -6858,6 +6883,12 @@ "readOnly": true, "description": "Gets the end time." }, + "scheduledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The scheduled time." + }, "status": { "$ref": "#/definitions/WorkflowStatus", "readOnly": true, @@ -7119,7 +7150,7 @@ "description": "Gets the tracking id." }, "correlation": { - "$ref": "#/definitions/Correlation", + "$ref": "#/definitions/RunActionCorrelation", "description": "The correlation properties." }, "inputsLink": { @@ -7657,7 +7688,11 @@ "Registered", "Unregistering", "Unregistered", - "Completed" + "Completed", + "Renewing", + "Pending", + "Waiting", + "InProgress" ], "x-ms-enum": { "name": "WorkflowProvisioningState", @@ -8160,6 +8195,46 @@ "modelAsString": true } }, + "WorkflowTriggerReference": { + "type": "object", + "description": "The workflow trigger reference.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The workflow trigger resource reference name." + }, + "flowName": { + "type": "string", + "description": "The workflow name." + }, + "triggerName": { + "type": "string", + "description": "The workflow trigger name." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ] + }, + "WorkflowReference": { + "type": "object", + "description": "The workflow reference.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The workflow name." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ] + }, "ApiReference": { "type": "object", "description": "The Api reference.", @@ -8842,6 +8917,113 @@ "modelAsString": true } }, + "FlowAccessControlConfiguration": { + "type": "object", + "description": "The access control configuration.", + "properties": { + "triggers": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for invoking workflow triggers." + }, + "contents": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for accessing workflow run contents." + }, + "actions": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for workflow actions." + }, + "workflowManagement": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for workflow management." + } + } + }, + "FlowAccessControlConfigurationPolicy": { + "type": "object", + "description": "The access control configuration policy.", + "properties": { + "allowedCallerIpAddresses": { + "type": "array", + "description": "The allowed caller IP address ranges.", + "items": { + "$ref": "#/definitions/IpAddressRange", + "description": "The ip address range." + } + }, + "openAuthenticationPolicies": { + "$ref": "#/definitions/OpenAuthenticationAccessPolicies", + "description": "The authentication policies for workflow." + } + } + }, + "IpAddressRange": { + "type": "object", + "description": "The ip address range.", + "properties": { + "addressRange": { + "type": "string", + "description": "The IP address range." + } + } + }, + "OpenAuthenticationAccessPolicies": { + "type": "object", + "description": "AuthenticationPolicy of type Open.", + "properties": { + "policies": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/OpenAuthenticationAccessPolicy" + }, + "description": "Open authentication policies." + } + } + }, + "OpenAuthenticationAccessPolicy": { + "type": "object", + "description": "Open authentication access policy defined by user.", + "properties": { + "type": { + "$ref": "#/definitions/OpenAuthenticationProviderType", + "readOnly": true, + "description": "Type of provider for OAuth." + }, + "claims": { + "type": "array", + "description": "The access policy claims.", + "items": { + "$ref": "#/definitions/OpenAuthenticationPolicyClaim", + "description": "The access policy claim." + } + } + } + }, + "OpenAuthenticationProviderType": { + "type": "string", + "description": "Open authentication policy provider type.", + "enum": [ + "AAD" + ], + "x-ms-enum": { + "name": "OpenAuthenticationProviderType", + "modelAsString": true + } + }, + "OpenAuthenticationPolicyClaim": { + "type": "object", + "description": "Open authentication policy claim.", + "properties": { + "name": { + "type": "string", + "description": "The name of the claim." + }, + "value": { + "type": "string", + "description": "The value of the claim." + } + } + }, "FlowEndpointsConfiguration": { "type": "object", "description": "The endpoints configuration.", @@ -11785,6 +11967,10 @@ "description": "Logic REST API operation", "type": "object", "properties": { + "origin": { + "description": "Operation: origin", + "type": "string" + }, "name": { "description": "Operation name: {provider}/{resource}/{operation}", "type": "string" @@ -11804,8 +11990,17 @@ "operation": { "description": "Operation type: Read, write, delete, etc.", "type": "string" + }, + "description": { + "description": "Operation: description.", + "type": "string" } } + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties.", + "$ref": "#/definitions/Object" } } }, @@ -11991,6 +12186,10 @@ "description": "The record type.", "$ref": "#/definitions/TrackingRecordType" }, + "record": { + "description": "The record.", + "$ref": "#/definitions/Object" + }, "error": { "description": "The error.", "$ref": "#/definitions/TrackingEventErrorInfo" @@ -12064,7 +12263,7 @@ "properties": { "source": { "description": "The source.", - "$ref": "#/definitions/WorkflowTrigger" + "$ref": "#/definitions/WorkflowTriggerReference" } } }, diff --git a/specification/logic/resource-manager/readme.az.md b/specification/logic/resource-manager/readme.az.md new file mode 100644 index 000000000000..bc9b6c244824 --- /dev/null +++ b/specification/logic/resource-manager/readme.az.md @@ -0,0 +1,15 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: logic + namespace: azure.mgmt.logic + package-name: azure-mgmt-logic +az-output-folder: $(azure-cli-extension-folder)/src/logic +python-sdk-output-folder: "$(az-output-folder)/azext_logic/vendored_sdks/logic" + +# uncomment following to use json instead of flatten + +``` diff --git a/specification/logic/resource-manager/readme.cli.md b/specification/logic/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/logic/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/logic/resource-manager/readme.md b/specification/logic/resource-manager/readme.md index aa2e33ffeb33..995fb1b4b1bc 100644 --- a/specification/logic/resource-manager/readme.md +++ b/specification/logic/resource-manager/readme.md @@ -134,6 +134,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_logic'] + - repo: azure-cli-extensions ``` ## C# diff --git a/specification/logic/resource-manager/readme.python.md b/specification/logic/resource-manager/readme.python.md new file mode 100644 index 000000000000..211909639ce5 --- /dev/null +++ b/specification/logic/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: azure.mgmt.logic + package-name: azure-mgmt-logic + package-version: 2019-05-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/logic/azure-mgmt-logic/azure/mgmt/logic +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/logic/azure-mgmt-logic +``` \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json index cedbdb567567..4d43d29dd628 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2018-03-01-preview", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -24,6 +27,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "batchaiWorkspace": "/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/workspace-1234/providers/Microsoft.BatchAI/workspaces/testBatchAIWorkspace", "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json index 782995dfe9c5..8868b1aa282e 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json @@ -1046,7 +1046,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json new file mode 100644 index 000000000000..d2762d31a31b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2020-02-18-preview", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json new file mode 100644 index 000000000000..b9026c10fc40 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..f6c8ebb8deb5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-02-18-preview", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..6d6f05afcb3b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-02-18-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..e401271fe5bc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..80a80592ec11 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..f491e3784a91 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..df6e59c449e1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..cbac0e3b16ff --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json new file mode 100644 index 000000000000..ff84d4308695 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Personal", + "sshSettings": { + "sshPublicAccess": "Disabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json new file mode 100644 index 000000000000..3aa86d408d76 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json new file mode 100644 index 000000000000..5b35c4cde09a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": true + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json new file mode 100644 index 000000000000..42c0626dc9df --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json new file mode 100644 index 000000000000..a973a13a3e93 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json new file mode 100644 index 000000000000..d42737e87c4b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json new file mode 100644 index 000000000000..6809f3c45a83 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json new file mode 100644 index 000000000000..c368311a4b38 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "ComputeInstance", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Shared", + "sshSettings": { + "sshPublicAccess": "Enabled", + "adminUserName": "azureuser", + "sshPort": 22 + }, + "createdBy": { + "userName": "foobar@microsoft.com", + "userOrgId": "00000000-0000-0000-0000-000000000000", + "userId": "00000000-0000-0000-0000-000000000000" + }, + "connectivityEndpoints": { + "publicIpAddress": "10.0.0.1", + "privateIpAddress": "10.0.0.1" + }, + "applications": [ + { + "displayName": "Jupyter", + "endpointUri": "https://compute123.eastus2.azureml.net/jupyter" + } + ], + "errors": null, + "state": "Running" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json new file mode 100644 index 000000000000..fab1f721a9a8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json new file mode 100644 index 000000000000..60c8f7e2353e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..0c2c862eb8e7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..17dac933ecc9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..3d6c3a70801d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..3fabc0a7bcc6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json new file mode 100644 index 000000000000..cc78aae3e43f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..a93596d594d3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json new file mode 100644 index 000000000000..42e71959ac35 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json new file mode 100644 index 000000000000..8c543528291a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json new file mode 100644 index 000000000000..98e40459697f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json new file mode 100644 index 000000000000..665b69b2b198 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "parameters": { + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..66ea9ba11e56 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..fefdc38a3acf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..cae1379d01fe --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..bcdaee3cab98 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json new file mode 100644 index 000000000000..6bde4dba311c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json @@ -0,0 +1,3603 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2020-02-18-preview" + }, + "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": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + }, + "Get a ComputeInstance": { + "$ref": "./examples/getComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create a ComputeInstance Compute with minimal inputs": { + "$ref": "./examples/createComputeInstanceMinimal.json" + }, + "Create a ComputeInstance Compute": { + "$ref": "./examples/createComputeInstance.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/start": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Start", + "description": "Posts a start action to a compute instance", + "x-ms-examples": { + "Start ComputeInstance Compute": { + "$ref": "./examples/startComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/stop": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Stop", + "description": "Posts a stop action to a compute instance", + "x-ms-examples": { + "Stop ComputeInstance Compute": { + "$ref": "./examples/stopComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/restart": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Restart", + "description": "Posts a restart action to a compute instance", + "x-ms-examples": { + "Restart ComputeInstance Compute": { + "$ref": "./examples/restartComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "osType": { + "type": "string", + "description": "OS Type.", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "osType", + "modelAsString": true + } + }, + "virtualMachineImage": { + "title": "Custom VM image.", + "description": "The ARM resource identifier of the virtual machine image for the compute nodes. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}. The virtual machine image must be in the same region and subscription as the cluster.", + "$ref": "#/definitions/ResourceId" + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "ComputeInstance": { + "description": "An Azure Machine Learning compute instance.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute Instance properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "applicationSharingPolicy": { + "type": "string", + "default": "Shared", + "title": "Sharing policy for applications on this compute instance", + "description": "Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role.", + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "applicationSharingPolicy", + "modelAsString": true + } + }, + "sshSettings": { + "description": "Specifies policy and settings for SSH access.", + "$ref": "#/definitions/ComputeInstanceSshSettings" + }, + "connectivityEndpoints": { + "readOnly": true, + "description": "Describes all connectivity endpoints available for this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceConnectivityEndpoints" + }, + "applications": { + "type": "array", + "readOnly": true, + "description": "Describes available applications and their endpoints on this ComputeInstance.", + "items": { + "$ref": "#/definitions/ComputeInstanceApplication" + } + }, + "createdBy": { + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceCreatedBy" + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered on this ComputeInstance.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "state": { + "description": "The current state of this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceState", + "readOnly": true + } + } + } + } + } + ], + "x-ms-discriminator-value": "ComputeInstance" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account. This property is only supported on Linux based clusters." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "ComputeInstance", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + }, + "ComputeInstanceSshSettings": { + "type": "object", + "description": "Specifies policy and settings for SSH access.", + "properties": { + "sshPublicAccess": { + "type": "string", + "default": "Disabled", + "title": "Access policy for SSH", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "sshPublicAccess", + "modelAsString": true + } + }, + "adminUserName": { + "type": "string", + "readOnly": true, + "description": "Describes the admin user name." + }, + "sshPort": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Describes the port for connecting through SSH." + }, + "adminPublicKey": { + "type": "string", + "description": "Specifies the SSH rsa public key file as a string. Use \"ssh-keygen -t rsa -b 2048\" to generate your SSH key pairs." + } + } + }, + "ComputeInstanceState": { + "type": "string", + "description": "Current state of a ComputeInstance.", + "enum": [ + "Creating", + "CreateFailed", + "Deleting", + "Running", + "Restarting", + "RestartFailed", + "JobRunning", + "SettingUp", + "Starting", + "StartFailed", + "StopFailed", + "Stopped", + "Stopping", + "UserSettingUp", + "Unknown", + "Unusable" + ], + "x-ms-enum": { + "name": "ComputeInstanceState", + "modelAsString": true + } + }, + "ComputeInstanceApplication": { + "type": "object", + "description": "Defines an Aml Instance application and its connectivity endpoint URI.", + "properties": { + "displayName": { + "type": "string", + "description": "Name of the ComputeInstance application." + }, + "endpointUri": { + "type": "string", + "description": "Application' endpoint URI." + } + } + }, + "ComputeInstanceConnectivityEndpoints": { + "type": "object", + "readOnly": true, + "description": "Defines all connectivity endpoints and properties for a ComputeInstance.", + "properties": { + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP Address of this ComputeInstance." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP Address of this ComputeInstance (local to the VNET in which the compute instance is deployed)." + } + } + }, + "ComputeInstanceCreatedBy": { + "type": "object", + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "properties": { + "userName": { + "type": "string", + "readOnly": true, + "description": "Name of the user." + }, + "userOrgId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies user' Azure Active Directory organization." + }, + "userId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies the user within his/her organization." + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json index 96b5ca1e3eff..ce16a8fec87b 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2018-11-19", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json index 299f2559cdb7..0178bb7c73d3 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json @@ -1329,7 +1329,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json index 782a19c895f0..e4f116952f59 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2019-05-01", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json index 9dd954ced322..03836d3773af 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json @@ -1346,7 +1346,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json index 979f68b2e259..cc4735a1018d 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2019-06-01", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json index d7979ee4da13..8f6d8aa125f2 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json @@ -1630,7 +1630,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json index 8c1967c74629..a66d8a6c1d34 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json @@ -10,6 +10,9 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -31,6 +34,11 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json index 574108dd5416..937b370a452d 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json @@ -10,6 +10,9 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -40,6 +43,11 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json new file mode 100644 index 000000000000..38d64c4de09e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json new file mode 100644 index 000000000000..cdeefc855b53 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..b028e1cd3cc8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-03-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..580620035090 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..8d352d678eb6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..bf422bf16f77 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..3593ab691c22 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..b2dc9a2db2f4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..81c9b689aae5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json new file mode 100644 index 000000000000..6f1de6f5b9f2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json new file mode 100644 index 000000000000..0c62d5a99ac4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json new file mode 100644 index 000000000000..9b433ad2b4c6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json new file mode 100644 index 000000000000..6c84edb3d88e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json new file mode 100644 index 000000000000..0070b3bed219 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json new file mode 100644 index 000000000000..ce37e26e1627 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json new file mode 100644 index 000000000000..045fd3332604 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333", + "privateLinkCount": 0, + "allowPublicAccessWhenBehindVnet": false, + "imageBuildCompute": "testcompute", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/testprivatelinkconnection", + "name": "testprivatelinkconnection", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ], + "sharedPrivateLinkResources": [ + { + "name": "testcosmosdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testcosmosdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..c028c686089e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..c12f24c3a78f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..ac102dbef366 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..298a3d18e5ce --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json new file mode 100644 index 000000000000..869dcacec863 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..691fa053dcbe --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json new file mode 100644 index 000000000000..bdd7cdb26f09 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json new file mode 100644 index 000000000000..33fc388db6d9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json new file mode 100644 index 000000000000..aaca8dcb2ec3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json new file mode 100644 index 000000000000..8b097ee2aeda --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "parameters": { + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..5d42b9f60f62 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..f7c835a59cdb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..4ea136739207 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..0f56bfbef7c8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json new file mode 100644 index 000000000000..b5dede913fa4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json @@ -0,0 +1,3316 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2020-03-01" + }, + "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": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + }, + "privateLinkCount": { + "type": "integer", + "format": "int32", + "description": "Count of private connections in the workspace", + "readOnly": true + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "allowPublicAccessWhenBehindVnet": { + "type": "boolean", + "description": "The flag to indicate whether to allow public access when behind VNet.", + "default": false + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections in the workspace." + }, + "sharedPrivateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources in this workspace." + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "description": "Unique name of the private link.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperty", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + } + }, + "SharedPrivateLinkResourceProperty": { + "properties": { + "privateLinkResourceId": { + "description": "The resource id that private link links to.", + "type": "string" + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requestMessage": { + "description": "Request message.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "Properties of a shared private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListSkus.json new file mode 100644 index 000000000000..e079f83a6d5e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListUsages.json new file mode 100644 index 000000000000..4d52033df522 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Total Cluster vCPUs", + "value": "TotalCores" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.MachineLearningServices/totalDedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "TotalDedicatedCores" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "StandardDFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/computes/dedicatedCores/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/computes/dedicatedCores/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "StandardDv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "StandardFSv2Family", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/dedicatedCores/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/computes/dedicatedCores/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "StandardNCFamily", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspaces/computes/dedicatedCores/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "StandardNCFamily", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "StandardNCv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "StandardNCv3Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "StandardNDFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "StandardNDv2Family", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "StandardNVFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000", + "type": "Microsoft.MachineLearningServices/totalLowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "TotalLowPriorityCores" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "StandardDFamily", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "StandardDSv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "StandardDv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "StandardFSv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/lowPriorityCores/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/computes/lowPriorityCores/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/lowPriorityCores/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/computes/lowPriorityCores/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspace/computes/lowPriorityCores/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "StandardNCv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "StandardNCv3Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "StandardNDFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "StandardNDv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/lowPriorityCores/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "StandardNVFamily" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..3bd4124b5009 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-04-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..725d438e7df9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..e6a5d506a2b8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "StandardDFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 12, + "name": { + "value": "StandardDFamily", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 12, + "name": { + "value": "StandardDFamily", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardDFamily", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 12, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 12, + "name": { + "value": "StandardDSv2Family", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "StandardDv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardDv2Family", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardDv2Family", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardDv2Family", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardFSv2Family", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardFSv2Family", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardFSv2Family", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardFSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 12, + "name": { + "value": "StandardFSv2Family", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "StandardNCFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNCFamily", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNCFamily", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNCFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNCFamily", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "StandardNCv2Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv2Family", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv2Family", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNCv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv2Family", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "StandardNCv3Family" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv3Family", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv3Family", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNCv3Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNCv3Family", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "StandardNDFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDFamily", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDFamily", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNDFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDFamily", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDv2Family", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDv2Family", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDv2Family", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNDv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 0, + "name": { + "value": "StandardNDv2Family", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/vmFamily/dedicatedCores/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "StandardNVFamily" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNVFamily", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNVFamily", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/StandardNVFamily", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 24, + "name": { + "value": "StandardNVFamily", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..92380cd5ad0c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..7e70b9cee522 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..8b852df15fce --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicAmlCompute.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..e77b33a24936 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createWorkspace.json new file mode 100644 index 000000000000..bea2168be906 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/createWorkspace.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteCompute.json new file mode 100644 index 000000000000..b67e52876a66 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteWorkspace.json new file mode 100644 index 000000000000..3544758731c8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAKSCompute.json new file mode 100644 index 000000000000..63b341477237 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAmlCompute.json new file mode 100644 index 000000000000..6560c277ae76 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getAmlCompute.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + }, + "identity": { + "principalId": "00000000-0000-0000-0000-000000000000", + "tenantId": "00000000-0000-0000-0000-000000000000", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getComputes.json new file mode 100644 index 000000000000..cf80142c329a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspace.json new file mode 100644 index 000000000000..99c934fbcd42 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspace.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333", + "privateLinkCount": 0, + "allowPublicAccessWhenBehindVnet": false, + "imageBuildCompute": "testcompute", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/testprivatelinkconnection", + "name": "testprivatelinkconnection", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ], + "sharedPrivateLinkResources": [ + { + "name": "testcosmosdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testcosmosdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..659f2e76f4cb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..f7446777dbc6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/getWorkspacesBySubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..4ab606985d3e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..52b699fbae08 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/listWorkspaceKeys.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/patchAmlCompute.json new file mode 100644 index 000000000000..91376cbd5638 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..9d51039e764b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/resyncWorkspaceKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-04-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAKSCompute.json new file mode 100644 index 000000000000..4fbb4eb31a01 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAKSCompute.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAmlCompute.json new file mode 100644 index 000000000000..382f1b97334e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateAmlCompute.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-04-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateQuota.json new file mode 100644 index 000000000000..5f66413a7c2b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-04-01", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/StandardDSv2Family", + "type": "Microsoft.MachineLearningServices/workspaces/dedicatedCores/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateWorkspace.json new file mode 100644 index 000000000000..12c082d375ba --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/updateWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-04-01", + "parameters": { + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..1808b719437d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-04-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..4347a8c1201e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..55526789c5f2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2020-04-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..433eb6db0454 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-04-01", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json new file mode 100644 index 000000000000..3e1faf470e29 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json @@ -0,0 +1,3341 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2020-04-01" + }, + "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": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + }, + "privateLinkCount": { + "type": "integer", + "format": "int32", + "description": "Count of private connections in the workspace", + "readOnly": true + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "allowPublicAccessWhenBehindVnet": { + "type": "boolean", + "description": "The flag to indicate whether to allow public access when behind VNet.", + "default": false + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections in the workspace." + }, + "sharedPrivateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources in this workspace." + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource.", + "required": [ + "type" + ] + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "description": "Unique name of the private link.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperty", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + } + }, + "SharedPrivateLinkResourceProperty": { + "properties": { + "privateLinkResourceId": { + "description": "The resource id that private link links to.", + "type": "string" + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requestMessage": { + "description": "Request message.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "Properties of a shared private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + } + } +} diff --git a/specification/machinelearningservices/resource-manager/readme.az.md b/specification/machinelearningservices/resource-manager/readme.az.md new file mode 100644 index 000000000000..a236603e5744 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/readme.az.md @@ -0,0 +1,20 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: machinelearningservices + namespace: azure.mgmt.machinelearningservices + package-name: azure-mgmt-machinelearningservices +az-output-folder: $(azure-cli-extension-folder)/src/machinelearningservices +python-sdk-output-folder: "$(az-output-folder)/azext_machinelearningservices/vendored_sdks/machinelearningservices" + +cli: + cli-directive: + - where: + group: MachineLearningCompute + op: CreateOrUpdate + param: properties + poly-resource: true +``` diff --git a/specification/machinelearningservices/resource-manager/readme.cli.md b/specification/machinelearningservices/resource-manager/readme.cli.md new file mode 100644 index 000000000000..ee30c9a673ab --- /dev/null +++ b/specification/machinelearningservices/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Example_CreateOrUpdate +``` diff --git a/specification/machinelearningservices/resource-manager/readme.go.md b/specification/machinelearningservices/resource-manager/readme.go.md index d132e869b857..77714b85fff2 100644 --- a/specification/machinelearningservices/resource-manager/readme.go.md +++ b/specification/machinelearningservices/resource-manager/readme.go.md @@ -13,13 +13,33 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2020-04-01 + - tag: package-2020-03-01 - tag: package-2020-01-01 - tag: package-2019-11-01 - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 + - tag: package-2020-02-18-preview - tag: package-2018-03-preview ``` +## Tag: package-2020-04-01 and go + +These settings apply only when `--tag=package-2020-04-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2020-04-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-01/$(namespace) +``` + +## Tag: package-2020-03-01 and go + +These settings apply only when `--tag=package-2020-03-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2020-03-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` ## Tag: package-2020-01-01 and go @@ -66,6 +86,15 @@ Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2020-02-18-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-02-18-preview/$(namespace) +``` + ### Tag: package-2018-03-preview and go These settings apply only when `--tag=package-2018-03-preview --go` is specified on the command line. diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index 68e4aad373f0..63cc7203fe1f 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -26,9 +26,26 @@ These are the global settings for the Machine Learning Services API. ``` yaml openapi-type: arm -tag: package-2020-01-01 +tag: package-2020-04-01 ``` +### Tag: package-2020-04-01 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +```yaml $(tag) == 'package-2020-04-01' +input-file: + - Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json +``` + +### Tag: package-2020-03-01 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03-01' +input-file: + - Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json +``` ### Tag: package-2020-01-01 @@ -75,6 +92,15 @@ input-file: - Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json ``` +### Tag: package-2020-02-18-preview + +These settings apply only when `--tag=package-2020-02-18-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-18-preview' +input-file: +- Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json +``` + ### Tag: package-2018-03-preview These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. @@ -100,6 +126,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-cli-extensions ``` ## C# @@ -138,13 +165,41 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-machinelearning/ser ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04-01 + - tag: package-2020-03-01 - tag: package-2020-01-01 - tag: package-2019-11-01 - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 + - tag: package-2020-02-18-preview - tag: package-2018-03-preview ``` +### Tag: package-2020-04-01 and java + +These settings apply only when `--tag=package-2020-04-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-03-01 and java + +These settings apply only when `--tag=package-2020-03-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` ### Tag: package-2020-01-01 and java @@ -236,11 +291,14 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json + - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json + - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json ``` diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json new file mode 100644 index 000000000000..0188bcfd5c1e --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json @@ -0,0 +1,1632 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "MaintenanceManagementClient", + "description": "Azure Maintenance Management Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource with parent", + "description": "Track maintenance updates to resource with parent", + "operationId": "ApplyUpdates_GetParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_GetParent": { + "$ref": "./examples/ApplyUpdates_GetParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource", + "description": "Track maintenance updates to resource", + "operationId": "ApplyUpdates_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_Get": { + "$ref": "./examples/ApplyUpdates_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource with parent", + "description": "Apply maintenance updates to resource with parent", + "operationId": "ApplyUpdates_CreateOrUpdateParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdateParent": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource", + "description": "Apply maintenance updates to resource", + "operationId": "ApplyUpdates_CreateOrUpdate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdate": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdateParent", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdateParent": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_DeleteParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_DeleteParent": { + "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdate": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_Delete": { + "$ref": "./examples/ConfigurationAssignments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_ListParent": { + "$ref": "./examples/ConfigurationAssignments_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_List": { + "$ref": "./examples/ConfigurationAssignments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration record", + "operationId": "MaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_GetForResource": { + "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Create or Update configuration record", + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_CreateOrUpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Delete Configuration record", + "operationId": "MaintenanceConfigurations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_DeleteForResource": { + "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" + } + } + }, + "patch": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Patch configuration record", + "operationId": "MaintenanceConfigurations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_UpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "MaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MaintenanceConfigurations_List": { + "$ref": "./examples/MaintenanceConfigurations_List.json" + } + } + } + }, + "/providers/Microsoft.Maintenance/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations", + "description": "List the available operations supported by the Microsoft.Maintenance resource provider", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_ListParent": { + "$ref": "./examples/Updates_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_List": { + "$ref": "./examples/Updates_List.json" + } + } + } + } + }, + "definitions": { + "ApplyUpdateProperties": { + "description": "Properties for apply update", + "type": "object", + "properties": { + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resourceId", + "type": "string" + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last Update time", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ApplyUpdate": { + "description": "Apply Update request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplyUpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "ConfigurationAssignmentProperties": { + "description": "Properties for configuration assignment", + "type": "object", + "properties": { + "maintenanceConfigurationId": { + "description": "The maintenance configuration Id", + "type": "string" + }, + "resourceId": { + "description": "The unique resourceId", + "type": "string" + } + } + }, + "ConfigurationAssignment": { + "description": "Configuration Assignment", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ConfigurationAssignmentProperties", + "description": "Properties of the configuration assignment", + "x-ms-client-flatten": true + } + } + }, + "ListConfigurationAssignmentsResult": { + "description": "Response for ConfigurationAssignments list", + "type": "object", + "properties": { + "value": { + "description": "The list of configuration Assignments", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + } + }, + "MaintenanceConfigurationProperties": { + "description": "Properties for maintenance configuration", + "type": "object", + "properties": { + "namespace": { + "description": "Gets or sets namespace of the resource e.g. Microsoft.Maintenance or Microsoft.Sql", + "type": "string" + }, + "extensionProperties": { + "description": "Gets or sets extensionProperties of the maintenanceConfiguration. This is for future use only and would be a set of key value pairs for additional information e.g. whether to follow SDP etc.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "maintenanceScope": { + "description": "Gets or sets maintenanceScope of the configuration. It represent the impact area of the maintenance", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + } + } + }, + "MaintenanceConfiguration": { + "description": "Maintenance configuration record type", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Gets or sets location of the resource", + "type": "string" + }, + "tags": { + "description": "Gets or sets tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "description": "Gets or sets properties of the resource", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceError": { + "description": "An error response received from the Azure Maintenance service.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails", + "description": "Details of the error" + } + } + }, + "ErrorDetails": { + "description": "An error response details received from the Azure Maintenance service.", + "type": "object", + "properties": { + "code": { + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + } + } + }, + "ListMaintenanceConfigurationsResult": { + "description": "Response for MaintenanceConfigurations list", + "type": "object", + "properties": { + "value": { + "description": "The list of maintenance Configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + }, + "ListUpdatesResult": { + "description": "Response for Updates list", + "type": "object", + "properties": { + "value": { + "description": "The pending updates", + "type": "array", + "items": { + "$ref": "#/definitions/Update" + } + } + } + }, + "Update": { + "description": "Maintenance update on a resource", + "type": "object", + "properties": { + "maintenanceScope": { + "description": "The impact area", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + }, + "impactType": { + "description": "The impact type", + "enum": [ + "None", + "Freeze", + "Restart", + "Redeploy" + ], + "type": "string", + "x-ms-enum": { + "name": "ImpactType", + "modelAsString": true + } + }, + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "impactDurationInSec": { + "format": "int32", + "description": "Duration of impact in seconds", + "type": "integer" + }, + "notBefore": { + "format": "date-time", + "description": "Time when Azure will start force updates if not self-updated by customer before this time", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/UpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "UpdateProperties": { + "description": "Properties for update", + "type": "object", + "properties": { + "resourceId": { + "description": "The resourceId", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Version of the API to be used with the client request.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json new file mode 100644 index 000000000000..724cf66e5513 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json new file mode 100644 index 000000000000..70c87f579e40 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json new file mode 100644 index 000000000000..9d92736c5723 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json new file mode 100644 index 000000000000..84f4c12f1e43 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json new file mode 100644 index 000000000000..4dec9e08e22f --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json new file mode 100644 index 000000000000..85fc09ce71b2 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmPolicy", + "api-version": "2020-04-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json new file mode 100644 index 000000000000..7f0d7b91cc4b --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json new file mode 100644 index 000000000000..35cf8541ebc8 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json new file mode 100644 index 000000000000..62033053c626 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json new file mode 100644 index 000000000000..7b0f3af8e018 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdtestvm1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json new file mode 100644 index 000000000000..452477570576 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json new file mode 100644 index 000000000000..2633924f1fc6 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "example1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..7042e94c4b39 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json new file mode 100644 index 000000000000..95495ecb6bab --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json new file mode 100644 index 000000000000..452477570576 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json new file mode 100644 index 000000000000..d1f0ff155c96 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json new file mode 100644 index 000000000000..132354ce13ca --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json new file mode 100644 index 000000000000..9af694695509 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/readme.go.md b/specification/maintenance/resource-manager/readme.go.md index 2344b31a0af4..5c36ca80143c 100644 --- a/specification/maintenance/resource-manager/readme.go.md +++ b/specification/maintenance/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2018-06-preview ``` +### Tag: package-2020-04 and go + +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-01/$(namespace) +``` + ### Tag: package-2018-06-preview and go These settings apply only when `--tag=package-2018-06-preview --go` is specified on the command line. diff --git a/specification/maintenance/resource-manager/readme.java.md b/specification/maintenance/resource-manager/readme.java.md index ad4de62273c4..adbda7c68b21 100644 --- a/specification/maintenance/resource-manager/readme.java.md +++ b/specification/maintenance/resource-manager/readme.java.md @@ -16,9 +16,23 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-maintenance ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2018-06-preview ``` +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.maintenance.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/maintenance/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2018-06-preview and java These settings apply only when `--tag=package-2018-06-preview --java` is specified on the command line. diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index 68e06698e8ac..733545333792 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -26,9 +26,17 @@ These are the global settings for the Azure Maintenance API. ``` yaml openapi-type: arm -tag: package-2018-06-preview +tag: package-2020-04 ``` +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04' +input-file: +- Microsoft.Maintenance/stable/2020-04-01/Maintenance.json +``` ### Tag: package-2018-06-preview @@ -86,7 +94,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.maintenance package-name: azure-mgmt-maintenance - package-version: 1.0.0 + package-version: 1.1.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' @@ -120,6 +128,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json - $(this-folder)/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json ``` diff --git a/specification/maintenance/resource-manager/readme.nodejs.md b/specification/maintenance/resource-manager/readme.nodejs.md index d0fd37dc9a62..7fa4c52b8200 100644 --- a/specification/maintenance/resource-manager/readme.nodejs.md +++ b/specification/maintenance/resource-manager/readme.nodejs.md @@ -7,7 +7,7 @@ Please also specify `--node-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(ruby) +namespace: "Azure::Maintenance::Mgmt::V2020_04_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_maintenance/lib +``` + ### Tag: package-2018-06-preview and ruby These settings apply only when `--tag=package-2017-06-preview --ruby` is specified on the command line. diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json index fb8fdea3d1f7..1d5df012112a 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json @@ -28,7 +28,24 @@ "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", "replicationRole": "None", "masterServerId": "", - "replicaCapacity": 5 + "replicaCapacity": 5, + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc4/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "tags": { diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json index de7b622078e6..fca509d4c1ad 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json @@ -25,7 +25,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc1.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" + "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc1", @@ -50,7 +52,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtstsvc2.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" + "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2", @@ -75,7 +94,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc3.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" + "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc3", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json index 7331423f71cd..ad95643dfbb6 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc1.mariadb.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtstsvc2.mariadb.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json index 86fbdf0611a3..505dddb7cf92 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json @@ -1320,6 +1320,113 @@ "modelAsString": false } }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1401,6 +1508,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1457,6 +1576,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1671,6 +1794,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." diff --git a/specification/mariadb/resource-manager/readme.cli.md b/specification/mariadb/resource-manager/readme.cli.md new file mode 100644 index 000000000000..007ce15453a7 --- /dev/null +++ b/specification/mariadb/resource-manager/readme.cli.md @@ -0,0 +1,64 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: mariadb + package-name: azure-mgmt-rdbms-mariadb + namespace: azure.mgmt.rdbms.mariadb + test-scenario: + - name: Create a new server + - name: Create a replica server + - name: Create a database as a point in time restore + - name: Create a server as a geo restore + - name: DatabaseCreate + - name: FirewallRuleCreate + - name: ConfigurationCreateOrUpdate + - name: Create or update a virtual network rule + - name: Update a server's threat detection policy with all parameters + - name: Update a server's threat detection policy with minimal parameters + - name: Approve or reject a private endpoint connection with a given name. + - name: RecommendedActionsGet + - name: RecommendedActionSessionOperationStatus + - name: Gets private endpoint connection. + - name: RecommendedActionSessionResult + - name: Get a server's threat detection policy + - name: Gets a private link resource for MariaDB. + - name: Gets a virtual network rule + - name: TopQueryStatisticsGet + - name: RecommendedActionsListByServer + - name: WaitStatisticsGet + - name: ConfigurationGet + - name: FirewallRuleGet + - name: QueryTextsGet + - name: DatabaseGet + - name: AdvisorsGet + - name: Gets list of private endpoint connections on a server. + - name: Gets private link resources for MariaDB. + - name: List virtual network rules + - name: TopQueryStatisticsListByServer + - name: WaitStatisticsListByServer + - name: ConfigurationList + - name: FirewallRuleList + - name: QueryTextsListByServer + - name: DatabaseList + - name: LogFileList + - name: AdvisorsListByServer + - name: ReplicasListByServer + - name: ServerGet + - name: PerformanceTiersList + - name: ServerListByResourceGroup + - name: ServerList + - name: OperationList + - name: Update private endpoint connection Tags + - name: RecommendedActionSessionCreate + - name: ServerRestart + - name: ServerUpdate + - name: NameAvailability + - name: Deletes a private endpoint connection with a given name. + - name: Delete a virtual network rule + - name: FirewallRuleDelete + - name: DatabaseDelete + - name: ServerDelete +``` \ No newline at end of file diff --git a/specification/mariadb/resource-manager/readme.go.md b/specification/mariadb/resource-manager/readme.go.md index 42ff51dfcfc5..5655a69784ad 100644 --- a/specification/mariadb/resource-manager/readme.go.md +++ b/specification/mariadb/resource-manager/readme.go.md @@ -16,15 +16,6 @@ batch: - tag: package-2018-06-01 ``` -### Tag: package-2018-06-01-preview and go - -These settings apply only when `--tag=package-2018-06-01-preview --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2018-06-01-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-06-01-preview/$(namespace) -``` - ### Tag: package-2018-06-01 and go These settings apply only when `--tag=package-2018-06-01 --go` is specified on the command line. diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json index c37f27897b3a..5aab7ea6c7a7 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json @@ -72,97 +72,97 @@ } }, "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the request." - }, - "subscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "The Azure subscription ID.", - "required": true, - "type": "string" - } + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request." }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Azure subscription ID.", + "required": true, + "type": "string" + } + }, "definitions": { - "ErrorResponse": { - "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", - "type": "object", - "properties": { - "error": { - "description": "The details of the error.", - "properties": { - "code": { - "description": "Error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string", - "readOnly": true - } + "ErrorResponse": { + "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true } } } - }, - "Operation": { - "description": "Microsoft.Marketplace REST API operation", - "type": "object", - "properties": { - "name": { - "description": "Operation name: {provider}/{resource}/{operation}", - "type": "string" - }, - "display": { - "description": "The object that represents the operation.", - "properties": { - "provider": { - "description": "Service provider: Microsoft.Marketplace", - "type": "string" - }, - "resource": { - "description": "Resource on which the operation is performed: Amendments", - "type": "string" - }, - "operation": { - "description": "Operation type: Get Amendments etc.", - "type": "string" - } + } + }, + "Operation": { + "description": "Microsoft.Marketplace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Marketplace", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Amendments", + "type": "string" + }, + "operation": { + "description": "Operation type: Get Amendments etc.", + "type": "string" } } } - }, - "OperationListResult": { - "description": "Result of the request to list Marketplace 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 Microsoft.Marketplace operations supported by the Microsoft.Marketplace resource provider." + } + }, + "OperationListResult": { + "description": "Result of the request to list Marketplace 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" }, - "nextLink": { - "type": "string", - "description": "URL to get the next set of operation list results if there are any.", - "readOnly": true - } + "description": "List of Microsoft.Marketplace operations supported by the Microsoft.Marketplace resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true } } - }, + } + }, "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" - } + "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" } } } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json index f9ebba4b3ace..89944456c4f9 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json @@ -2,14 +2,15 @@ "swagger": "2.0", "info": { "version": "2020-01-01", - "title": "Marketplace RP Service" + "title": "MarketplaceManagementClient", + "description": "REST APIs for Azure Marketplace" }, "host": "management.azure.com", "schemes": [ "https" ], "paths": { - "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}/offers": { + "/providers/Microsoft.Marketplace/privateStores/{privateStoreId}/offers": { "parameters": [ { "$ref": "#/parameters/PrivateStoreIdParameter" @@ -51,13 +52,13 @@ } } }, - "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}/offers/{OfferId}": { + "/providers/Microsoft.Marketplace/privateStores/{privateStoreId}/offers/{offerId}": { "parameters": [ { - "$ref": "#/parameters/OfferIdPathParameter" + "$ref": "#/parameters/PrivateStoreIdParameter" }, { - "$ref": "#/parameters/PrivateStoreIdParameter" + "$ref": "#/parameters/OfferIdPathParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -190,7 +191,7 @@ } } }, - "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}": { + "/providers/Microsoft.Marketplace/privateStores/{privateStoreId}": { "parameters": [ { "$ref": "#/parameters/PrivateStoreIdParameter" @@ -212,7 +213,7 @@ "200": { "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/PrivateStoreProperties" + "$ref": "#/definitions/PrivateStore" } }, "default": { @@ -223,8 +224,8 @@ } }, "x-ms-examples": { - "GetPrivateStoreByName": { - "$ref": "./examples/GetPrivateStoreByName.json" + "GetPrivateStore": { + "$ref": "./examples/GetPrivateStore.json" } } }, @@ -271,16 +272,13 @@ "in": "body", "name": "payload", "schema": { - "$ref": "#/definitions/PrivateStoreProperties" + "$ref": "#/definitions/PrivateStore" } } ], "responses": { "200": { - "description": "Change successful", - "schema": { - "$ref": "#/definitions/PrivateStoreProperties" - } + "description": "Change successful" }, "default": { "description": "Microsoft.Marketplace error response describing why the operation failed.", @@ -327,10 +325,11 @@ }, "parameters": { "PrivateStoreIdParameter": { - "name": "PrivateStoreId", + "name": "privateStoreId", "in": "path", "required": true, "type": "string", + "x-ms-parameter-location": "method", "description": "The store ID - must use the tenant ID" }, "ApiVersionParameter": { @@ -342,42 +341,14 @@ }, "OfferIdPathParameter": { "in": "path", - "name": "OfferId", + "name": "offerId", "type": "string", + "x-ms-parameter-location": "method", "required": true, "description": "The offer ID to update or delete" - }, - "offerObjectParameter": { - "in": "body", - "name": "offerObject", - "schema": { - "$ref": "#/definitions/offerSkuObject" - } } }, "definitions": { - "offerSkuObject": { - "type": "object", - "required": [ - "isAvailable" - ], - "properties": { - "isAvailable": { - "type": "boolean" - } - } - }, - "offerObject": { - "type": "object", - "required": [ - "isAvailable" - ], - "properties": { - "isAvailable": { - "type": "boolean" - } - } - }, "ErrorResponse": { "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", @@ -406,7 +377,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/PrivateStoreProperties" + "$ref": "#/definitions/PrivateStore" } }, "nextLink": { @@ -415,6 +386,22 @@ } } }, + "PrivateStore": { + "description": "The PrivateStore data structure.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateStoreProperties", + "description": "The PrivateStore data structure.", + "x-ms-client-flatten": true + } + } + }, "PrivateStoreProperties": { "description": "Describes the json payload on whether or not the private store is enabled for a given tenant", "type": "object", @@ -431,8 +418,12 @@ "modelAsString": true } }, - "name": { - "description": "Private Store name", + "privateStoreId": { + "description": "Private Store id", + "type": "string" + }, + "eTag": { + "description": "Identifier for purposes of race condition", "type": "string" } } @@ -453,14 +444,30 @@ } }, "Offer": { + "description": "The privateStore offer data structure.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], "properties": { - "id": { + "properties": { + "$ref": "#/definitions/OfferProperties", + "description": "The privateStore offer data structure.", + "x-ms-client-flatten": true + } + } + }, + "OfferProperties": { + "type": "object", + "properties": { + "uniqueOfferId": { "description": "Offers unique id", "type": "string", "readOnly": true }, - "displayName": { + "offerDisplayName": { "description": "It will be displayed prominently in the marketplace", "type": "string", "readOnly": true @@ -470,30 +477,30 @@ "type": "string", "readOnly": true }, - "summary": { - "description": "Brief purpose or function of offer", - "type": "string", - "readOnly": true + "eTag": { + "description": "Identifier for purposes of race condition", + "type": "string" }, - "longSummary": { - "description": "Purpose or function of offer", - "type": "string", - "readOnly": true + "privateStoreId": { + "readOnly": true, + "description": "Private store unique id", + "type": "string" }, - "description": { - "description": "Description of offer", - "type": "string", - "readOnly": true + "createdBy": { + "readOnly": true, + "description": "Private store offer creator name", + "type": "string" }, - "eTag": { - "description": "Identifier for purposes of race condition", + "createdDate": { + "readOnly": true, + "description": "Private store offer created date", "type": "string" }, - "plans": { + "specificPlanIdsLimitation": { + "description": "Plan ids limitation for this offer", "type": "array", - "readOnly": true, "items": { - "$ref": "#/definitions/Plan" + "type": "string" } } } @@ -501,12 +508,17 @@ "Plan": { "type": "object", "properties": { - "planId": { + "skuId": { "description": "Identifier for this plan", "type": "string", "readOnly": true }, - "displayName": { + "planId": { + "description": "Text identifier for this plan", + "type": "string", + "readOnly": true + }, + "planDisplayName": { "description": "Friendly name for the plan for display in the marketplace", "type": "string", "readOnly": true @@ -556,6 +568,27 @@ "readOnly": true } } + }, + "Resource": { + "description": "An Azure resource.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true } }, "securityDefinitions": { diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json index 805bcb659285..3eb812f741c5 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json @@ -1,6 +1,6 @@ { "parameters": { - "PrivateStoreId": "MyFirstPrivateStore", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", "api-version": "2020-01-01" }, "responses": { diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json index 496c33fcfe8c..f07d0b733688 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json @@ -1,7 +1,7 @@ { "parameters": { - "PrivateStoreId": "myPrivateStore", - "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "offerId": "marketplacetestthirdparty.md-test-third-party-2", "api-version": "2020-01-01" }, "responses": { diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json new file mode 100644 index 000000000000..e2f45e7ac54f --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "type": "Microsoft.Marketplace/privateStores", + "name": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "properties": { + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "availability": "enabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350345\"" + } + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreByName.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreByName.json deleted file mode 100644 index b290c421fc77..000000000000 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreByName.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "PrivateStoreId": "MyFirstPrivateStore", - "api-version": "2020-01-01" - }, - "responses": { - "200": { - "body": { - "name": "MyFirstPrivateStore", - "availability": "enabled" - } - } - } -} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json index 3e6ba84bc930..951260a83750 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json @@ -1,29 +1,29 @@ { "parameters": { - "PrivateStoreId": "myPrivateStore", - "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "offerId": "marketplacetestthirdparty.md-test-third-party-2", "api-version": "2020-01-01" }, "responses": { "200": { "body": { - "id": "marketplacetestthirdparty.md-test-third-party-2", - "displayName": "md-test-third-party-2", - "publisherDisplayName": "Marketplace Test Third Party", - "summary": "summary-md-test-third-party-2", - "longSummary": "longSummry-md-test-third-party-2", - "description": "description-longSummry-md-test-third-party-2", - "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", - "plans": [ - { - "planId": "0001", - "displayName": "Text IQ Deep Concept Analysis" - }, - { - "planId": "0002", - "displayName": "new-md-sku-4" - } - ] + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406/offers/marketplacetestthirdparty.md-test-third-party-2", + "type": "Microsoft.Marketplace/privateStores/offers", + "name": "marketplacetestthirdparty.md-test-third-party-2", + "properties": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", + "specificPlanIdsLimitation": [ + "0001", + "0002", + "0003" + ], + "createdDate": "05/29/2015 5:50", + "createdBy": "test@microsoft.com" + } } } } diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json index 5b98d626239f..2805dbb00d7c 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json @@ -1,6 +1,6 @@ { "parameters": { - "PrivateStoreId": "myPrivateStore", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", "api-version": "2020-01-01" }, "responses": { @@ -9,42 +9,41 @@ "nextLink": "", "value": [ { - "id": "marketplacetestthirdparty.md-test-third-party-2", - "displayName": "md-test-third-party-2", - "publisherDisplayName": "Marketplace Test Third Party", - "summary": "summary-md-test-third-party-2", - "longSummary": "longSummry-md-test-third-party-2", - "description": "description-longSummry-md-test-third-party-2", - "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", - "plans": [ - { - "planId": "0001", - "displayName": "Text IQ Deep Concept Analysis" - }, - { - "planId": "0002", - "displayName": "new-md-sku-4" - } - ] + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406/offers/marketplacetestthirdparty.md-test-third-party-2", + "type": "Microsoft.Marketplace/privateStores/offers", + "name": "marketplacetestthirdparty.md-test-third-party-2", + "properties": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", + "specificPlanIdsLimitation": [ + "0001", + "0002", + "0003" + ], + "createdDate": "05/29/2015 5:50", + "createdBy": "test@microsoft.com" + } }, { - "id": "marketplacetestthirdparty.md-test-third-party-3", - "displayName": "md-test-third-party-3", - "publisherDisplayName": "Marketplace Test Third Party", - "summary": "summary-md-test-third-party-3", - "longSummary": "longSummry-md-test-third-party-3", - "description": "description-longSummry-md-test-third-party-3", - "eTag": "\"9301f4fd-0000-0100-0304-5e248b350043\"", - "plans": [ - { - "planId": "0001", - "displayName": "test-planId" - }, - { - "planId": "0002", - "displayName": "new-md-sku-6" - } - ] + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406/offers/marketplacetestthirdparty.md-test-third-party-3", + "type": "Microsoft.Marketplace/privateStores/offers", + "name": "marketplacetestthirdparty.md-test-third-party-2", + "properties": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-3", + "offerDisplayName": "md-test-third-party-3", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0304-5e248b350043\"", + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "createdDate": "05/29/2015 5:50", + "createdBy": "test@microsoft.com" + } } ] } diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json index e1bc5b549c34..16988bb65256 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json @@ -8,12 +8,24 @@ "nextLink": "", "value": [ { - "name": "MyFirstPrivateStore", - "availability": "enabled" + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "type": "Microsoft.Marketplace/privateStores", + "name": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "properties": { + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "availability": "enabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350332\"" + } }, { - "name": "MySecondPrivateStore", - "availability": "disabled" + "id": "/providers/Microsoft.Marketplace/privateStores/f4528e55-98c4-4328-8e34-bb7ef7775345", + "type": "Microsoft.Marketplace/privateStores", + "name": "f4528e55-98c4-4328-8e34-bb7ef7775345", + "properties": { + "privateStoreId": "f4528e55-98c4-4328-8e34-bb7ef7775345", + "availability": "disabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e234b350345\"" + } } ] } diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json index 8a17d587cd60..35d6e2cd3bd2 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json @@ -1,20 +1,17 @@ { "parameters": { - "PrivateStoreId": "MyFirstPrivateStore", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", "api-version": "2020-01-01", - "parameters": { - "properties": { - "availability": "disabled", - "name": "MyNewFirstPrivateStore" + "PrivateStore": { + "parameters": { + "properties": { + "availability": "disabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350345\"" + } } } }, "responses": { - "200": { - "body": { - "name": "MyNewFirstPrivateStore", - "availability": "disabled" - } - } + "200": {} } } diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json index 69bf299abc9e..99ce60ce0ad2 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json @@ -1,34 +1,39 @@ { "parameters": { - "PrivateStoreId": "myPrivateStore", - "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "offerId": "marketplacetestthirdparty.md-test-third-party-2", "api-version": "2020-01-01", - "parameters": { - "properties": { - "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"" + "Offer": { + "parameters": { + "properties": { + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"" + } } } }, "responses": { "200": { "body": { - "id": "marketplacetestthirdparty.md-test-third-party-2", - "displayName": "md-test-third-party-2", - "publisherDisplayName": "Marketplace Test Third Party", - "summary": "summary-md-test-third-party-2", - "longSummary": "longSummry-md-test-third-party-2", - "description": "description-longSummry-md-test-third-party-2", - "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"", - "plans": [ - { - "planId": "0001", - "displayName": "Text IQ Deep Concept Analysis" - }, - { - "planId": "0002", - "displayName": "new-md-sku-4" - } - ] + "id": "/providers/Microsoft.Marketplace/privateStores/a0e28e55-90c4-41d8-8e34-bb7ef7775406/offers/marketplacetestthirdparty.md-test-third-party-2", + "type": "Microsoft.Marketplace/privateStores/offers", + "name": "marketplacetestthirdparty.md-test-third-party-2", + "properties": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"", + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "createdDate": "05/29/2015 5:50", + "createdBy": "test@microsoft.com" + } } } } diff --git a/specification/marketplace/resource-manager/readme.md b/specification/marketplace/resource-manager/readme.md index 31470a735b7f..4796a969e8cf 100644 --- a/specification/marketplace/resource-manager/readme.md +++ b/specification/marketplace/resource-manager/readme.md @@ -1,11 +1,20 @@ # marketplace > see https://aka.ms/autorest -This is the AutoRest configuration file for marketplace. + +This is the AutoRest configuration file for Marketplace. + +--- ## Getting Started -There is no SDK for this endpoint, this is used internaly for calling markeplaceRP from Ibiza. +To build the SDK for Marketplace, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` --- @@ -13,14 +22,19 @@ There is no SDK for this endpoint, this is used internaly for calling markeplace ### Basic Information -Make an HTTPs request from Ibiza to the endpoint in order to get the check if user is private or not +These are the global settings for the Marketplace API. + +``` yaml +openapi-type: arm +tag: package-2020-01-01 +``` ### Tag: package-2019-12-01 These settings apply only when `--tag=package-2019-12-01` is specified on the command line. -```yaml $(tag) == 'package-2019-12-01' +``` yaml $(tag) == 'package-2019-12-01' input-file: - Microsoft.Marketplace/stable/2019-12-01/Marketplace.json ``` @@ -29,11 +43,39 @@ input-file: These settings apply only when `--tag=package-2020-01-01` is specified on the command line. -```yaml $(tag) == 'package-2020-01-01' +``` yaml $(tag) == 'package-2020-01-01' input-file: - Microsoft.Marketplace/stable/2020-01-01/Marketplace.json ``` +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_marketplace'] +``` + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.Marketplace + output-folder: $(csharp-sdks-folder)/marketplace/Microsoft.Azure.Management.Marketplace/src/Generated + clear-output-folder: true +``` + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -58,4 +100,3 @@ uncomment the `exclude-file` section below and add the file paths. #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json index 8ffd3bd1f71a..a940d0c41995 100644 --- a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Azure Media Services", - "version": "2018-07-01" + "version": "2019-09-01-preview" }, "securityDefinitions": { "azure_auth": { diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json index 8ffd3bd1f71a..1745b2883a4b 100644 --- a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Azure Media Services", - "version": "2018-07-01" + "version": "2020-02-01-preview" }, "securityDefinitions": { "azure_auth": { diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-02-28-preview/examples/SpatialAnchorsAccount/Patch.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-02-28-preview/examples/SpatialAnchorsAccount/Patch.json index 1e0fc214422e..e8112ff12fab 100644 --- a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-02-28-preview/examples/SpatialAnchorsAccount/Patch.json +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-02-28-preview/examples/SpatialAnchorsAccount/Patch.json @@ -6,7 +6,8 @@ "spatialAnchorsAccountName": "MyAccount", "api-version": "2019-02-28-preview", "spatialAnchorsAccount": { - "Tags": { + "location": "eastus2euap", + "tags": { "heroine": "juliet", "hero": "romeo" } diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/remote-rendering/Patch.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/remote-rendering/Patch.json index a9f2fdb3f25a..5076bf958408 100644 --- a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/remote-rendering/Patch.json +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/remote-rendering/Patch.json @@ -6,7 +6,8 @@ "accountName": "MyAccount", "api-version": "2019-02-28-preview", "remoteRenderingAccount": { - "Tags": { + "location": "eastus2euap", + "tags": { "heroine": "juliet", "hero": "romeo" } diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/spatial-anchors/Patch.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/spatial-anchors/Patch.json index 7aef35795b68..abbb287a2a7c 100644 --- a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/spatial-anchors/Patch.json +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2019-12-02-preview/examples/spatial-anchors/Patch.json @@ -6,7 +6,8 @@ "accountName": "MyAccount", "api-version": "2019-02-28-preview", "spatialAnchorsAccount": { - "Tags": { + "location": "eastus2euap", + "tags": { "heroine": "juliet", "hero": "romeo" } diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/common.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/common.json new file mode 100644 index 000000000000..c80d0cacdc36 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/common.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider API", + "version": "2020-04-06-preview" + }, + "paths": {}, + "definitions": { + "AccountKeys": { + "description": "Developer Keys of account", + "type": "object", + "properties": { + "primaryKey": { + "description": "value of primary key.", + "readOnly": true, + "type": "string" + }, + "secondaryKey": { + "description": "value of secondary key.", + "readOnly": true, + "type": "string" + } + } + }, + "AccountKeyRegenerateRequest": { + "description": "Request for account key regeneration", + "type": "object", + "properties": { + "serial": { + "type": "integer", + "enum": [ + 1, + 2 + ], + "default": 1, + "x-ms-enum": { + "name": "Serial", + "values": [ + { + "value": 1, + "description": "The Primary Key", + "name": "Primary" + }, + { + "value": 2, + "description": "The Secondary Key", + "name": "Secondary" + } + ] + }, + "description": "serial of key to be regenerated" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An Error response." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Azure." + }, + "MixedRealityAccountProperties": { + "description": "Common Properties shared by Mixed Reality Accounts", + "type": "object", + "properties": { + "accountId": { + "description": "unique id of certain account.", + "readOnly": true, + "type": "string" + }, + "accountDomain": { + "description": "Correspond domain name of certain Spatial Anchors Account", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "accountKeyRegenerateParameter": { + "name": "regenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccountKeyRegenerateRequest" + }, + "x-ms-parameter-location": "method", + "description": "Required information for key regeneration." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Mixed Reality Account." + }, + "apiVersionParameter": { + "name": "api-version", + "description": "The API version to be used with the HTTP request.", + "in": "query", + "required": true, + "type": "string" + }, + "locationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "The location in which uniqueness will be verified." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)", + "in": "path", + "required": true, + "type": "string" + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json new file mode 100644 index 000000000000..8e276cf1f807 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "location": "eastus2euap", + "checkNameAvailability": { + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + }, + "api-version": " 2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "nameAvailable": "false", + "reason": "AlreadyExists", + "message": "..." + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/ExposingAvailableOperations.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/ExposingAvailableOperations.json new file mode 100644 index 000000000000..553835485f5f --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/proxy/ExposingAvailableOperations.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.MixedReality/register/action", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "Mixed Reality resource provider", + "operation": "Registers the Mixed Reality resource provider", + "description": "Registers a subscription for the Mixed Reality resource provider." + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/delete", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Delete Spatial Anchors Accounts", + "description": "Deletes the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/read", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Get Spatial Anchors Accounts", + "description": "Gets the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/write", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Update Spatial Anchors Accounts", + "description": "Updates the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Delete.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Delete.json new file mode 100644 index 000000000000..7ecc0880e495 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Get.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Get.json new file mode 100644 index 000000000000..1d3600b3776b --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetByResourceGroup.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetByResourceGroup.json new file mode 100644 index 000000000000..54e3bc2fcd2f --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetByResourceGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/alpha", + "name": "alpha", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + }, + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/omega", + "name": "omega", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + ], + "nextLink": "https://aka.ms/&^FDKKAR" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetBySubscription.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetBySubscription.json new file mode 100644 index 000000000000..8b5ae83f59ef --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/GetBySubscription.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/alpha", + "name": "alpha", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + }, + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/omega", + "name": "omega", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + ], + "nextLink": "https://aka.ms/&^FDKKAR" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/ListKeys.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/ListKeys.json new file mode 100644 index 000000000000..38846e39681b --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/ListKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview" + }, + "responses": { + "200": { + "body": { + "primaryKey": "vMAlcI/j25TwDs8hjTorto3JQkoiqZAXKsFq0rYnSNc=", + "secondaryKey": "N4umIGhJt8LgnMMMBpwFOxVOS9zpxHxSHy1TJhN3hU4=" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Patch.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Patch.json new file mode 100644 index 000000000000..1d785cefa9b6 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Patch.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview", + "remoteRenderingAccount": { + "location": "eastus2euap", + "tags": { + "heroine": "juliet", + "hero": "romeo" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": { + "heroine": "juliet", + "hero": "romeo" + }, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Put.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Put.json new file mode 100644 index 000000000000..a45bba86e6cf --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/Put.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview", + "remoteRenderingAccount": { + "location": "eastus2euap" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + }, + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/remoteRenderingAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/remoteRenderingAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/RegenerateKey.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/RegenerateKey.json new file mode 100644 index 000000000000..0dd4c314ab6a --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/examples/remote-rendering/RegenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-04-06-preview", + "regenerate": { + "serial": 1 + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "vMAlcI/j25TwDs8hjTorto3JQkoiqZAXKsFq0rYnSNc=", + "secondaryKey": "N4umIGhJt8LgnMMMBpwFOxVOS9zpxHxSHy1TJhN3hU4=" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json new file mode 100644 index 000000000000..d2c42198f72e --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json @@ -0,0 +1,254 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider Proxy API", + "version": "2020-04-06-preview", + "x-ms-code-generation-settings": { + "name": "MixedRealityClient" + } + }, + "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": { + "/providers/Microsoft.MixedReality/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Proxy" + ], + "description": "Exposing Available Operations", + "x-ms-examples": { + "List available operations": { + "$ref": "./examples/proxy/ExposingAvailableOperations.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MixedReality/locations/{location}/checkNameAvailability": { + "post": { + "operationId": "CheckNameAvailabilityLocal", + "tags": [ + "Proxy" + ], + "description": "Check Name Availability for local uniqueness", + "x-ms-examples": { + "CheckLocalNameAvailability": { + "$ref": "./examples/proxy/CheckNameAvailabilityForLocalUniqueness.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/checkNameAvailabilityParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityRequest": { + "description": "Check Name Availability Request", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "Resource Name To Verify", + "type": "string" + }, + "type": { + "description": "Fully qualified resource type which includes provider namespace", + "type": "string" + } + } + }, + "CheckNameAvailabilityResponse": { + "description": "Check Name Availability Response", + "type": "object", + "required": [ + "nameAvailable" + ], + "properties": { + "nameAvailable": { + "description": "if name Available", + "$ref": "#/definitions/NameAvailability" + }, + "reason": { + "description": "Resource Name To Verify", + "$ref": "#/definitions/NameUnavailableReason" + }, + "message": { + "description": "detail message", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "$ref": "#/definitions/OperationDisplay" + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "required": [ + "provider", + "resource", + "operation", + "description" + ], + "properties": { + "provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of operation", + "type": "string" + } + } + }, + "NameAvailability": { + "description": "Whether or not the name is available.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "NameAvailability", + "modelAsString": true + } + }, + "NameUnavailableReason": { + "description": "reason of name unavailable.", + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameUnavailableReason", + "modelAsString": true + } + }, + "OperationPage": { + "description": "Result of the request to list Resource Provider 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 operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "checkNameAvailabilityParameter": { + "name": "checkNameAvailability", + "description": "Check Name Availability Request.", + "in": "body", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json new file mode 100644 index 000000000000..aea8901583cf --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json @@ -0,0 +1,428 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider Remote Rendering Resource API", + "version": "2020-04-06-preview" + }, + "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.MixedReality/remoteRenderingAccounts": { + "get": { + "operationId": "RemoteRenderingAccounts_ListBySubscription", + "tags": [ + "Resource", + "Proxy" + ], + "description": "List Remote Rendering Accounts by Subscription", + "x-ms-examples": { + "List remote rendering accounts by subscription": { + "$ref": "./examples/remote-rendering/GetBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccountPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/remoteRenderingAccounts": { + "get": { + "operationId": "RemoteRenderingAccounts_ListByResourceGroup", + "tags": [ + "Resource" + ], + "description": "List Resources by Resource Group", + "x-ms-examples": { + "List remote rendering accounts by resource group": { + "$ref": "./examples/remote-rendering/GetByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccountPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/remoteRenderingAccounts/{accountName}": { + "delete": { + "operationId": "RemoteRenderingAccounts_Delete", + "tags": [ + "Resource" + ], + "description": "Delete a Remote Rendering Account.", + "x-ms-examples": { + "Delete remote rendering account": { + "$ref": "./examples/remote-rendering/Delete.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "get": { + "operationId": "RemoteRenderingAccounts_Get", + "tags": [ + "Resource" + ], + "description": "Retrieve a Remote Rendering Account.", + "x-ms-examples": { + "Get remote rendering account": { + "$ref": "./examples/remote-rendering/Get.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "operationId": "RemoteRenderingAccounts_Update", + "tags": [ + "Resource" + ], + "description": "Updating a Remote Rendering Account", + "x-ms-examples": { + "Update remote rendering account": { + "$ref": "./examples/remote-rendering/Patch.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/remoteRenderingAccountParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "RemoteRenderingAccounts_Create", + "tags": [ + "Resource" + ], + "description": "Creating or Updating a Remote Rendering Account.", + "x-ms-examples": { + "Create remote rendering account": { + "$ref": "./examples/remote-rendering/Put.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/remoteRenderingAccountParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccount" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/remoteRenderingAccounts/{accountName}/listKeys": { + "post": { + "operationId": "RemoteRenderingAccounts_ListKeys", + "tags": [ + "Key" + ], + "description": "List Both of the 2 Keys of a Remote Rendering Account", + "x-ms-examples": { + "List remote rendering account key": { + "$ref": "./examples/remote-rendering/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./common.json#/definitions/AccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/remoteRenderingAccounts/{accountName}/regenerateKeys": { + "post": { + "operationId": "RemoteRenderingAccounts_RegenerateKeys", + "tags": [ + "Key" + ], + "description": "Regenerate specified Key of a Remote Rendering Account", + "x-ms-examples": { + "Regenerate remote rendering account keys": { + "$ref": "./examples/remote-rendering/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountKeyRegenerateParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./common.json#/definitions/AccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "RemoteRenderingAccount": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "RemoteRenderingAccount Response.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Property bag.", + "$ref": "./common.json#/definitions/MixedRealityAccountProperties" + } + } + }, + "RemoteRenderingAccountPage": { + "description": "Result of the request to get resource collection. It contains a list of resources and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RemoteRenderingAccount" + }, + "description": "List of resources supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of resource list results if there are any." + } + } + } + }, + "parameters": { + "remoteRenderingAccountParameter": { + "name": "remoteRenderingAccount", + "description": "Remote Rendering Account parameter.", + "in": "body", + "schema": { + "$ref": "#/definitions/RemoteRenderingAccount" + }, + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/common.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/common.json new file mode 100644 index 000000000000..915b4cc8aae6 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/common.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider API", + "version": "2020-05-01" + }, + "paths": {}, + "definitions": { + "AccountKeys": { + "description": "Developer Keys of account", + "type": "object", + "properties": { + "primaryKey": { + "description": "value of primary key.", + "readOnly": true, + "type": "string" + }, + "secondaryKey": { + "description": "value of secondary key.", + "readOnly": true, + "type": "string" + } + } + }, + "AccountKeyRegenerateRequest": { + "description": "Request for account key regeneration", + "type": "object", + "properties": { + "serial": { + "type": "integer", + "enum": [ + 1, + 2 + ], + "default": 1, + "x-ms-enum": { + "name": "Serial", + "values": [ + { + "value": 1, + "description": "The Primary Key", + "name": "Primary" + }, + { + "value": 2, + "description": "The Secondary Key", + "name": "Secondary" + } + ] + }, + "description": "serial of key to be regenerated" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An Error response." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Azure." + }, + "MixedRealityAccountProperties": { + "description": "Common Properties shared by Mixed Reality Accounts", + "type": "object", + "properties": { + "accountId": { + "description": "unique id of certain account.", + "readOnly": true, + "type": "string" + }, + "accountDomain": { + "description": "Correspond domain name of certain Spatial Anchors Account", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "accountKeyRegenerateParameter": { + "name": "regenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccountKeyRegenerateRequest" + }, + "x-ms-parameter-location": "method", + "description": "Required information for key regeneration." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Mixed Reality Account." + }, + "apiVersionParameter": { + "name": "api-version", + "description": "The API version to be used with the HTTP request.", + "in": "query", + "required": true, + "type": "string" + }, + "locationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "The location in which uniqueness will be verified." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)", + "in": "path", + "required": true, + "type": "string" + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json new file mode 100644 index 000000000000..f7dc975be35d --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/CheckNameAvailabilityForLocalUniqueness.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "location": "eastus2euap", + "checkNameAvailability": { + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + }, + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "nameAvailable": "false", + "reason": "AlreadyExists", + "message": "..." + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/ExposingAvailableOperations.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/ExposingAvailableOperations.json new file mode 100644 index 000000000000..6e91f11e7489 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/proxy/ExposingAvailableOperations.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.MixedReality/register/action", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "Mixed Reality resource provider", + "operation": "Registers the Mixed Reality resource provider", + "description": "Registers a subscription for the Mixed Reality resource provider." + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/delete", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Delete Spatial Anchors Accounts", + "description": "Deletes the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/read", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Get Spatial Anchors Accounts", + "description": "Gets the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + }, + { + "name": "Microsoft.MixedReality/SpatialAnchorsAccounts/write", + "display": { + "provider": "Microsoft.MixedReality", + "resource": "SpatialAnchorsAccounts", + "operation": "Update Spatial Anchors Accounts", + "description": "Updates the resource for Microsoft.MixedReality/SpatialAnchorsAccounts" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Delete.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Delete.json new file mode 100644 index 000000000000..7e1516910713 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Get.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Get.json new file mode 100644 index 000000000000..eaa3018df30d --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetByResourceGroup.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetByResourceGroup.json new file mode 100644 index 000000000000..899fddb72ab4 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetByResourceGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/alpha", + "name": "alpha", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + }, + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/omega", + "name": "omega", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + ], + "nextLink": "https://aka.ms/&^FDKKAR" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetBySubscription.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetBySubscription.json new file mode 100644 index 000000000000..1e74a97d9e46 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/GetBySubscription.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/alpha", + "name": "alpha", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + }, + { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/omega", + "name": "omega", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + ], + "nextLink": "https://aka.ms/&^FDKKAR" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/ListKeys.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/ListKeys.json new file mode 100644 index 000000000000..75a805e0cd0e --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/ListKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01" + }, + "responses": { + "200": { + "body": { + "primaryKey": "vMAlcI/j25TwDs8hjTorto3JQkoiqZAXKsFq0rYnSNc=", + "secondaryKey": "N4umIGhJt8LgnMMMBpwFOxVOS9zpxHxSHy1TJhN3hU4=" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Patch.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Patch.json new file mode 100644 index 000000000000..390479971e22 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Patch.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01", + "spatialAnchorsAccount": { + "location": "eastus2euap", + "tags": { + "heroine": "juliet", + "hero": "romeo" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": { + "heroine": "juliet", + "hero": "romeo" + }, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Put.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Put.json new file mode 100644 index 000000000000..0ee5930a7060 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/Put.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01", + "spatialAnchorsAccount": { + "location": "eastus2euap" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + }, + "200": { + "body": { + "properties": { + "accountId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "accountDomain": "mixedreality.azure.com" + }, + "tags": {}, + "location": "eastus2euap", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.MixedReality/spatialAnchorsAccounts/MyAccount", + "name": "MyAccount", + "type": "Microsoft.MixedReality/spatialAnchorsAccounts" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/RegenerateKey.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/RegenerateKey.json new file mode 100644 index 000000000000..e96b4b0172fd --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/examples/spatial-anchors/RegenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "MyResourceGroup", + "accountName": "MyAccount", + "api-version": "2020-05-01", + "regenerate": { + "serial": 1 + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "vMAlcI/j25TwDs8hjTorto3JQkoiqZAXKsFq0rYnSNc=", + "secondaryKey": "N4umIGhJt8LgnMMMBpwFOxVOS9zpxHxSHy1TJhN3hU4=" + } + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/proxy.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/proxy.json new file mode 100644 index 000000000000..34a1c29036f5 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/proxy.json @@ -0,0 +1,254 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider Proxy API", + "version": "2020-05-01", + "x-ms-code-generation-settings": { + "name": "MixedRealityClient" + } + }, + "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": { + "/providers/Microsoft.MixedReality/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Proxy" + ], + "description": "Exposing Available Operations", + "x-ms-examples": { + "List available operations": { + "$ref": "./examples/proxy/ExposingAvailableOperations.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MixedReality/locations/{location}/checkNameAvailability": { + "post": { + "operationId": "CheckNameAvailabilityLocal", + "tags": [ + "Proxy" + ], + "description": "Check Name Availability for local uniqueness", + "x-ms-examples": { + "CheckLocalNameAvailability": { + "$ref": "./examples/proxy/CheckNameAvailabilityForLocalUniqueness.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/locationParameter" + }, + { + "$ref": "#/parameters/checkNameAvailabilityParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityRequest": { + "description": "Check Name Availability Request", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "Resource Name To Verify", + "type": "string" + }, + "type": { + "description": "Fully qualified resource type which includes provider namespace", + "type": "string" + } + } + }, + "CheckNameAvailabilityResponse": { + "description": "Check Name Availability Response", + "type": "object", + "required": [ + "nameAvailable" + ], + "properties": { + "nameAvailable": { + "description": "if name Available", + "$ref": "#/definitions/NameAvailability" + }, + "reason": { + "description": "Resource Name To Verify", + "$ref": "#/definitions/NameUnavailableReason" + }, + "message": { + "description": "detail message", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "$ref": "#/definitions/OperationDisplay" + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "required": [ + "provider", + "resource", + "operation", + "description" + ], + "properties": { + "provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of operation", + "type": "string" + } + } + }, + "NameAvailability": { + "description": "Whether or not the name is available.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "NameAvailability", + "modelAsString": true + } + }, + "NameUnavailableReason": { + "description": "reason of name unavailable.", + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameUnavailableReason", + "modelAsString": true + } + }, + "OperationPage": { + "description": "Result of the request to list Resource Provider 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 operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "checkNameAvailabilityParameter": { + "name": "checkNameAvailability", + "description": "Check Name Availability Request.", + "in": "body", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json new file mode 100644 index 000000000000..d5c4f1a4d3c7 --- /dev/null +++ b/specification/mixedreality/resource-manager/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json @@ -0,0 +1,428 @@ +{ + "swagger": "2.0", + "info": { + "title": "Mixed Reality", + "description": "Mixed Reality Resource Provider Spatial Anchors Resource API", + "version": "2020-05-01" + }, + "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.MixedReality/spatialAnchorsAccounts": { + "get": { + "operationId": "SpatialAnchorsAccounts_ListBySubscription", + "tags": [ + "Resource", + "Proxy" + ], + "description": "List Spatial Anchors Accounts by Subscription", + "x-ms-examples": { + "List spatial anchors accounts by subscription": { + "$ref": "./examples/spatial-anchors/GetBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccountPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/spatialAnchorsAccounts": { + "get": { + "operationId": "SpatialAnchorsAccounts_ListByResourceGroup", + "tags": [ + "Resource" + ], + "description": "List Resources by Resource Group", + "x-ms-examples": { + "List spatial anchor accounts by resource group": { + "$ref": "./examples/spatial-anchors/GetByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccountPage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/spatialAnchorsAccounts/{accountName}": { + "delete": { + "operationId": "SpatialAnchorsAccounts_Delete", + "tags": [ + "Resource" + ], + "description": "Delete a Spatial Anchors Account.", + "x-ms-examples": { + "Delete spatial anchors account": { + "$ref": "./examples/spatial-anchors/Delete.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "get": { + "operationId": "SpatialAnchorsAccounts_Get", + "tags": [ + "Resource" + ], + "description": "Retrieve a Spatial Anchors Account.", + "x-ms-examples": { + "Get spatial anchors account": { + "$ref": "./examples/spatial-anchors/Get.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "operationId": "SpatialAnchorsAccounts_Update", + "tags": [ + "Resource" + ], + "description": "Updating a Spatial Anchors Account", + "x-ms-examples": { + "Update spatial anchors account": { + "$ref": "./examples/spatial-anchors/Patch.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/spatialAnchorsAccountParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "SpatialAnchorsAccounts_Create", + "tags": [ + "Resource" + ], + "description": "Creating or Updating a Spatial Anchors Account.", + "x-ms-examples": { + "Create spatial anchor account": { + "$ref": "./examples/spatial-anchors/Put.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/spatialAnchorsAccountParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccount" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/spatialAnchorsAccounts/{accountName}/listKeys": { + "post": { + "operationId": "SpatialAnchorsAccounts_ListKeys", + "tags": [ + "Key" + ], + "description": "List Both of the 2 Keys of a Spatial Anchors Account", + "x-ms-examples": { + "List spatial anchor account key": { + "$ref": "./examples/spatial-anchors/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./common.json#/definitions/AccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MixedReality/spatialAnchorsAccounts/{accountName}/regenerateKeys": { + "post": { + "operationId": "SpatialAnchorsAccounts_RegenerateKeys", + "tags": [ + "Key" + ], + "description": "Regenerate specified Key of a Spatial Anchors Account", + "x-ms-examples": { + "Regenerate spatial anchors account keys": { + "$ref": "./examples/spatial-anchors/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./common.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "./common.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountNameParameter" + }, + { + "$ref": "./common.json#/parameters/accountKeyRegenerateParameter" + }, + { + "$ref": "./common.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./common.json#/definitions/AccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SpatialAnchorsAccount": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "SpatialAnchorsAccount Response.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Property bag.", + "$ref": "./common.json#/definitions/MixedRealityAccountProperties" + } + } + }, + "SpatialAnchorsAccountPage": { + "description": "Result of the request to get resource collection. It contains a list of resources and a URL link to get the next set of results.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SpatialAnchorsAccount" + }, + "description": "List of resources supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of resource list results if there are any." + } + } + } + }, + "parameters": { + "spatialAnchorsAccountParameter": { + "name": "spatialAnchorsAccount", + "description": "Spatial Anchors Account parameter.", + "in": "body", + "schema": { + "$ref": "#/definitions/SpatialAnchorsAccount" + }, + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mixedreality/resource-manager/readme.md b/specification/mixedreality/resource-manager/readme.md index 1cb78ccedaaf..1ec26ef0bb53 100644 --- a/specification/mixedreality/resource-manager/readme.md +++ b/specification/mixedreality/resource-manager/readme.md @@ -25,14 +25,44 @@ These are the global settings for the Mixed Reality Azure Resource Management Cl title: MixedRealityClient description: Mixed Reality Client openapi-type: arm -tag: package-2019-12-preview +tag: package-2020-05 +``` +### Tag: package-2020-05 + +These settings apply only when `--tag=package-2020-05` is specified on the command line. + +``` yaml $(tag) == 'package-2020-05' +input-file: +- Microsoft.MixedReality/stable/2020-05-01/proxy.json +- Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json +- Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json +``` + +### Tag: package-2020-05-01 + +These settings apply only when `--tag=package-2020-05-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-05-01' +input-file: +- Microsoft.MixedReality/stable/2020-05-01/proxy.json +- Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json +``` + +### Tag: package-2020-04-06-preview + +These settings apply only when `--tag=package-2020-04-06-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04-06-preview' +input-file: +- Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json +- Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json ``` ### Tag: package-2019-12-preview -These settings apply only when `--tag=package-2019-12-preview` is specified on the command line. +These settings apply only when `--tag=package-2019-12-02-preview` is specified on the command line. -``` yaml $(tag) == 'package-2019-12-preview' +``` yaml $(tag) == 'package-2019-12-02-preview' input-file: - Microsoft.MixedReality/preview/2019-12-02-preview/proxy.json - Microsoft.MixedReality/preview/2019-12-02-preview/remote-rendering.json @@ -123,6 +153,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.MixedReality/stable/2020-05-01/proxy.json + - $(this-folder)/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json + - $(this-folder)/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json + - $(this-folder)/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/proxy.json - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/remote-rendering.json - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/spatial-anchors.json diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json index 8758bf0153d8..d4dfb6f6e2a7 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json @@ -1,71 +1,71 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "name": "ds4", - "api-version": "2017-05-01-preview", - "parameters": { - "properties": { - "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "eventHubName": "myeventhub", - "logs": [ - { - "category": "Security", - "enabled": true - } - ] - } - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "location": "global", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "name": "ds4", + "api-version": "2017-05-01-preview", + "parameters": { + "properties": { + "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "eventHubName": "myeventhub", + "logs": [ + { + "category": "Security", + "enabled": true + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "location": "global", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json index de2d41d84c12..fb3a6d4ac89b 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json @@ -1,57 +1,57 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "name": "mysetting", - "api-version": "2017-05-01-preview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "location": "global", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "name": "mysetting", + "api-version": "2017-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "location": "global", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json index bcb42cf347fe..9123cfa0649c 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json @@ -1,59 +1,59 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "api-version": "2017-05-01-preview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "value": [ - { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - ] - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "api-version": "2017-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json index eeccf0af0225..06da44d826a0 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json @@ -1,341 +1,341 @@ { - "swagger": "2.0", - "info": { - "title": "MonitorManagementClient", - "x-ms-code-generation-settings": { - "name": "MonitorManagementClient" - }, - "version": "2017-05-01-preview" - }, - "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.insights/diagnosticSettings/{name}": { - "get": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_Get", - "description": "Gets the active subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to get more information about diagnostic setting.", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - } - } - }, - "x-ms-examples": { - "Gets the subscription diagnostic setting": { - "$ref": "./examples/getSubscriptionDiagnosticSetting.json" - } - } - }, - "put": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_CreateOrUpdate", - "description": "Creates or updates subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - }, - "description": "Parameters supplied to the operation." - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to create a subscription diagnostic setting", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - } - } - }, - "x-ms-examples": { - "Creates or Updates the subscription diagnostic setting": { - "$ref": "./examples/createOrUpdateSubscriptionDiagnosticSetting.json" - } - } - }, - "delete": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_Delete", - "description": "Deletes existing subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to remove a subscription diagnostic setting" - }, - "204": { - "description": "Successful request to remove a subscription diagnostic setting" - } - }, - "x-ms-examples": { - "Deletes the subscription diagnostic setting": { - "$ref": "./examples/deleteSubscriptionDiagnosticSetting.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/microsoft.insights/diagnosticSettings": { - "get": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_List", - "description": "Gets the active subscription diagnostic settings list for the specified subscriptionId.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to get more information about subscription diagnostic setting", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResourceCollection" - } - } - }, - "x-ms-examples": { - "Gets the subscription diagnostic setting": { - "$ref": "./examples/listSubscriptionDiagnosticSettings.json" - } - } - } - } - }, - "definitions": { - "SubscriptionProxyOnlyResource": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "Azure resource Id" - }, - "name": { - "type": "string", - "readOnly": true, - "description": "Azure resource name" - }, - "type": { - "type": "string", - "readOnly": true, - "description": "Azure resource type" - }, - "location": { - "type": "string", - "description": "Location of the resource" - } - }, - "x-ms-azure-resource": true, - "description": "A proxy only azure resource object" - }, - "SubscriptionLogSettings": { - "properties": { - "category": { - "type": "string", - "description": "Name of a Subscription Diagnostic Log category for a resource type this setting is applied to." - }, - "enabled": { - "type": "boolean", - "description": "a value indicating whether this log is enabled." - } - }, - "required": [ - "enabled" - ], - "description": "Part of Subscription diagnostic setting. Specifies the settings for a particular log." - }, - "SubscriptionDiagnosticSettings": { - "properties": { - "storageAccountId": { - "type": "string", - "description": "The resource ID of the storage account to which you would like to send Diagnostic Logs." - }, - "serviceBusRuleId": { - "type": "string", - "description": "The service bus rule Id of the diagnostic setting. This is here to maintain backwards compatibility." - }, - "eventHubAuthorizationRuleId": { - "type": "string", - "description": "The resource Id for the event hub authorization rule." - }, - "eventHubName": { - "type": "string", - "description": "The name of the event hub. If none is specified, the default event hub will be selected." - }, - "logs": { - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionLogSettings" - }, - "description": "The list of logs settings." - }, - "workspaceId": { - "type": "string", - "description": "The full ARM resource ID of the Log Analytics workspace to which you would like to send Diagnostic Logs. Example: /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" - } - }, - "description": "The subscription diagnostic settings." - }, - "SubscriptionDiagnosticSettingsResource": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/SubscriptionProxyOnlyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/SubscriptionDiagnosticSettings", - "description": "Properties of a Subscription Diagnostic Settings Resource." - } - }, - "description": "The subscription diagnostic setting resource." - }, - "SubscriptionDiagnosticSettingsResourceCollection": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - }, - "description": "The collection of subscription diagnostic settings resources." - } - }, - "description": "Represents a collection of subscription diagnostic settings resources." - }, - "ErrorResponse": { - "description": "Describes the format of Error response.", - "type": "object", - "properties": { - "code": { - "description": "Error code", - "type": "string" - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The subscription id.", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "NameParameter": { - "name": "name", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the diagnostic setting.", - "x-ms-parameter-location": "method" - } - } -} \ No newline at end of file + "swagger": "2.0", + "info": { + "title": "MonitorManagementClient", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + }, + "version": "2017-05-01-preview" + }, + "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.insights/diagnosticSettings/{name}": { + "get": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_Get", + "description": "Gets the active subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to get more information about diagnostic setting.", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + } + } + }, + "x-ms-examples": { + "Gets the subscription diagnostic setting": { + "$ref": "./examples/getSubscriptionDiagnosticSetting.json" + } + } + }, + "put": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_CreateOrUpdate", + "description": "Creates or updates subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + }, + "description": "Parameters supplied to the operation." + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to create a subscription diagnostic setting", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + } + } + }, + "x-ms-examples": { + "Creates or Updates the subscription diagnostic setting": { + "$ref": "./examples/createOrUpdateSubscriptionDiagnosticSetting.json" + } + } + }, + "delete": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_Delete", + "description": "Deletes existing subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to remove a subscription diagnostic setting" + }, + "204": { + "description": "Successful request to remove a subscription diagnostic setting" + } + }, + "x-ms-examples": { + "Deletes the subscription diagnostic setting": { + "$ref": "./examples/deleteSubscriptionDiagnosticSetting.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/microsoft.insights/diagnosticSettings": { + "get": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_List", + "description": "Gets the active subscription diagnostic settings list for the specified subscriptionId.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to get more information about subscription diagnostic setting", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResourceCollection" + } + } + }, + "x-ms-examples": { + "Gets the subscription diagnostic setting": { + "$ref": "./examples/listSubscriptionDiagnosticSettings.json" + } + } + } + } + }, + "definitions": { + "SubscriptionProxyOnlyResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Azure resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Location of the resource" + } + }, + "x-ms-azure-resource": true, + "description": "A proxy only azure resource object" + }, + "SubscriptionLogSettings": { + "properties": { + "category": { + "type": "string", + "description": "Name of a Subscription Diagnostic Log category for a resource type this setting is applied to." + }, + "enabled": { + "type": "boolean", + "description": "a value indicating whether this log is enabled." + } + }, + "required": [ + "enabled" + ], + "description": "Part of Subscription diagnostic setting. Specifies the settings for a particular log." + }, + "SubscriptionDiagnosticSettings": { + "properties": { + "storageAccountId": { + "type": "string", + "description": "The resource ID of the storage account to which you would like to send Diagnostic Logs." + }, + "serviceBusRuleId": { + "type": "string", + "description": "The service bus rule Id of the diagnostic setting. This is here to maintain backwards compatibility." + }, + "eventHubAuthorizationRuleId": { + "type": "string", + "description": "The resource Id for the event hub authorization rule." + }, + "eventHubName": { + "type": "string", + "description": "The name of the event hub. If none is specified, the default event hub will be selected." + }, + "logs": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionLogSettings" + }, + "description": "The list of logs settings." + }, + "workspaceId": { + "type": "string", + "description": "The full ARM resource ID of the Log Analytics workspace to which you would like to send Diagnostic Logs. Example: /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" + } + }, + "description": "The subscription diagnostic settings." + }, + "SubscriptionDiagnosticSettingsResource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SubscriptionProxyOnlyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionDiagnosticSettings", + "description": "Properties of a Subscription Diagnostic Settings Resource." + } + }, + "description": "The subscription diagnostic setting resource." + }, + "SubscriptionDiagnosticSettingsResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + }, + "description": "The collection of subscription diagnostic settings resources." + } + }, + "description": "Represents a collection of subscription diagnostic settings resources." + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription id.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "NameParameter": { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the diagnostic setting.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json index 9f56226b2f3e..75ade1086f4a 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json @@ -23,6 +23,17 @@ } } }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/scoped-resource-name", + "name": "scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/components/my-component", + "provisioningState": "Succeeded" + } + } + }, "202": {} } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json index 2797c844f60e..32c338344d10 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json @@ -21,6 +21,18 @@ "provisioningState": "Succeeded" } } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } } } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json index 3a979ca2b3ef..30a69e25e933 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json @@ -26,6 +26,20 @@ "provisioningState": "Succeeded" } } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "provisioningState": "Succeeded" + } + } } } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json index 73df0421c2b3..c2cc37e31689 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json @@ -1,7 +1,10 @@ { "swagger": "2.0", "info": { - "title": "Azure Monitor Private Link Scopes", + "title": "MonitorManagementClient", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + }, "description": "Azure Monitor API reference for Private Links Scopes management.", "version": "2019-10-17-preview" }, @@ -27,7 +30,7 @@ "type": "oauth2", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow.", + "description": "Azure Active Directory OAuth2 Flow", "scopes": { "user_impersonation": "impersonate your user account" } @@ -40,19 +43,13 @@ "operationId": "PrivateLinkScopes_List", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, "200": { "description": "A list containing 0 or more Azure Monitor PrivateLinkScope definitions.", "schema": { @@ -76,22 +73,16 @@ "operationId": "PrivateLinkScopes_ListByResourceGroup", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, "200": { "description": "A list containing 0 or more Azure Monitor PrivateLinkScope definitions.", "schema": { @@ -115,25 +106,19 @@ "operationId": "PrivateLinkScopes_Delete", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceNameParameter" + "$ref": "#/parameters/PrivateLinkScopeName" } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, "200": { "description": "Successful request when deleting a Azure Monitor PrivateLinkScope." }, @@ -156,25 +141,19 @@ "operationId": "PrivateLinkScopes_Get", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceNameParameter" + "$ref": "#/parameters/PrivateLinkScopeName" } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, "200": { "description": "An Azure Monitor PrivateLinkScope definition.", "schema": { @@ -193,16 +172,16 @@ "operationId": "PrivateLinkScopes_CreateOrUpdate", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceNameParameter" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "AzureMonitorPrivateLinkScopePayload", @@ -215,14 +194,14 @@ } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", + "200": { + "description": "Successful request when creating or updating a Azure Monitor PrivateLinkScope. The updated PrivateLinkScope is returned.", "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" } }, - "200": { - "description": "Successful request when creating or updating a Azure Monitor PrivateLinkScope. The updated PrivateLinkScope is returned.", + "201": { + "description": "Successful request when creating or updating a Azure Monitor PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", "schema": { "$ref": "#/definitions/AzureMonitorPrivateLinkScope" } @@ -242,16 +221,16 @@ "operationId": "PrivateLinkScopes_UpdateTags", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceNameParameter" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "PrivateLinkScopeTags", @@ -264,12 +243,6 @@ } ], "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, "200": { "description": "Updating the Azure Monitor PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", "schema": { @@ -305,13 +278,13 @@ "description": "The operation Id." }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -336,20 +309,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" } ], "responses": { @@ -376,20 +345,16 @@ "operationId": "PrivateLinkResources_Get", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "$ref": "#/parameters/GroupNameParameter" @@ -419,20 +384,16 @@ "operationId": "PrivateEndpointConnections_Get", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "privateEndpointConnectionName", @@ -464,20 +425,16 @@ "operationId": "PrivateEndpointConnections_CreateOrUpdate", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "privateEndpointConnectionName", @@ -521,20 +478,16 @@ "operationId": "PrivateEndpointConnections_Delete", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "privateEndpointConnectionName", @@ -572,20 +525,16 @@ "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" } ], "responses": { @@ -615,20 +564,16 @@ "operationId": "PrivateLinkScopedResources_Get", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "name", @@ -660,20 +605,16 @@ "operationId": "PrivateLinkScopedResources_CreateOrUpdate", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "name", @@ -693,7 +634,13 @@ ], "responses": { "200": { - "description": "Successfully scoped azure monitor resource in a private link scope.", + "description": "Successfully create or updated a new azure monitor scoped resource in a private link scope.", + "schema": { + "$ref": "#/definitions/ScopedResource" + } + }, + "201": { + "description": "Successfully created a new azure monitor scoped resource in a private link scope.", "schema": { "$ref": "#/definitions/ScopedResource" } @@ -717,20 +664,16 @@ "operationId": "PrivateLinkScopedResources_Delete", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" }, { "name": "name", @@ -768,20 +711,16 @@ "operationId": "PrivateLinkScopedResources_ListByPrivateLinkScope", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "scopeName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Azure Monitor PrivateLinkScope that will contain the datasource" + "$ref": "#/parameters/PrivateLinkScopeName" } ], "responses": { @@ -835,7 +774,7 @@ "error": { "type": "object", "description": "The error detail of the operation if any.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "$ref": "#/definitions/ErrorResponseCommon", "x-nullable": true } } @@ -914,6 +853,14 @@ "type": "string", "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", "readOnly": true + }, + "privateEndpointConnections": { + "readOnly": true, + "description": "List of private endpoint connections.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } } } }, @@ -1044,7 +991,6 @@ }, "PrivateEndpointConnection": { "description": "A private endpoint connection", - "x-ms-azure-resource": true, "type": "object", "allOf": [ { @@ -1099,7 +1045,6 @@ }, "ScopedResource": { "description": "A private link scoped resource", - "x-ms-azure-resource": true, "type": "object", "allOf": [ { @@ -1132,33 +1077,82 @@ "ProxyResource": { "properties": { "id": { - "readOnly": true, "type": "string", - "description": "Resource ID." + "readOnly": true, + "description": "Azure resource Id" }, "name": { + "type": "string", "readOnly": true, + "description": "Azure resource name" + }, + "type": { "type": "string", - "description": "Resource name." + "readOnly": true, + "description": "Azure resource type" + } + }, + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ErrorResponseCommon": { + "allOf": [ + { + "$ref": "#/definitions/ErrorResponse" + } + ], + "properties": { + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorResponseCommon" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "The resource management error response." + }, + "ErrorAdditionalInfo": { + "properties": { "type": { "readOnly": true, "type": "string", - "description": "Resource type." + "description": "The additional info type." }, - "tags": { + "info": { + "readOnly": true, "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Resource tags" + "description": "The additional info." } }, - "description": "Common properties of proxy resource." + "description": "The resource management error additional info." } }, "parameters": { - "ResourceNameParameter": { + "PrivateLinkScopeName": { "name": "scopeName", "in": "path", "required": true, @@ -1166,6 +1160,14 @@ "description": "The name of the Azure Monitor PrivateLinkScope resource.", "x-ms-parameter-location": "method" }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, "GroupNameParameter": { "name": "groupName", "in": "path", @@ -1173,6 +1175,20 @@ "required": true, "x-ms-parameter-location": "method", "type": "string" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription Id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." } } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json index f9d1e42c1f5e..0f5f7a89919c 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json @@ -38,7 +38,7 @@ "paths": { "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.insights/alertrules/{ruleName}": { "put": { - "description": "Creates or updates an alert rule.", + "description": "Creates or updates a classic metric alert rule.", "tags": [ "AlertRules" ], @@ -93,7 +93,7 @@ } }, "delete": { - "description": "Deletes an alert rule", + "description": "Deletes a classic metric alert rule", "tags": [ "AlertRules" ], @@ -127,7 +127,7 @@ } }, "get": { - "description": "Gets an alert rule", + "description": "Gets a classic metric alert rule", "tags": [ "AlertRules" ], @@ -161,7 +161,7 @@ } }, "patch": { - "description": "Updates an existing AlertRuleResource. To update other fields use the CreateOrUpdate method.", + "description": "Updates an existing classic metric AlertRuleResource. To update other fields use the CreateOrUpdate method.", "operationId": "AlertRules_Update", "parameters": [ { @@ -219,7 +219,7 @@ "AlertRules" ], "operationId": "AlertRules_ListByResourceGroup", - "description": "List the alert rules within a resource group.", + "description": "List the classic metric alert rules within a resource group.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -255,7 +255,7 @@ "AlertRules" ], "operationId": "AlertRules_ListBySubscription", - "description": "List the alert rules within a subscription.", + "description": "List the classic metric alert rules within a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json index 50712ab18981..9b2847370ee1 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json @@ -23,7 +23,6 @@ "windowSize": "PT5M", "timeAggregation": "Total" }, - "lastUpdatedTime": "2016-11-23T21:23:52.0221265Z", "actions": [] } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json index df5d714900ba..4c7dca8d33cf 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json @@ -24,7 +24,6 @@ "windowSize": "PT5M", "timeAggregation": "Total" }, - "lastUpdatedTime": "2016-11-23T21:23:52.0221265Z", "actions": [] } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json index f20f4baa2b79..e88efc9a9349 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json @@ -525,7 +525,7 @@ }, "autoMitigate": { "type": "boolean", - "description": "the flag that indicates whether the alert should be auto resolved or not." + "description": "the flag that indicates whether the alert should be auto resolved or not. The default is true." }, "actions": { "type": "array", @@ -693,6 +693,11 @@ "WebtestLocationAvailabilityCriteria": { "x-ms-discriminator-value": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MetricAlertCriteria" + } + ], "properties": { "webTestId": { "type": "string", @@ -967,4 +972,4 @@ "x-ms-parameter-location": "method" } } -} \ No newline at end of file +} diff --git a/specification/monitor/resource-manager/readme.cli.md b/specification/monitor/resource-manager/readme.cli.md index 14b7e77ee93c..c9fdaaa01b7c 100644 --- a/specification/monitor/resource-manager/readme.cli.md +++ b/specification/monitor/resource-manager/readme.cli.md @@ -12,71 +12,71 @@ cli: cli-directive: - select: 'choiceValue' where: - enum: 'comparison_operation_type' + enum: 'comparisonOperationType' value: 'equals' set: name: 'equal' - select: 'choiceValue' where: - enum: 'comparison_operation_type' - value: 'not_equals' + enum: 'comparisonOperationType' + value: 'notEquals' set: name: 'not_equal' - select: 'property' where: - schemaObject: 'activity_log_alert_leaf_condition' + schemaObject: 'activityLogAlertLeafCondition' property: 'equals' set: name: 'equal' - select: 'operationGroup' where: - operationGroup: 'metric_alerts_status' + operationGroup: 'metricAlertsStatus' set: name: 'metric_alert_status' - select: 'operation' where: - operationGroup: 'activity_log_alerts' + operationGroup: 'activityLogAlerts' operation: 'update' hidden: true - select: 'operation' where: - operationGroup: 'metric_alerts' - operation: '^(create_or_update|update)$' + operationGroup: 'metricAlerts' + operation: '^(createOrUpdate|update)$' hidden: true - select: 'parameter' where: - operationGroup: '^(metric_alerts|alert_rules|alert_rule_incidents)$' - parameter: 'rule_name' + operationGroup: '^(metricAlerts|alertRules|alertRuleIncidents)$' + parameter: 'ruleName' set: name: name - select: 'property' where: - objectSchema: '^(alert_rule_resource|alert_rule_resource_patch)$' - property: 'is_enabled' + objectSchema: '^(AlertRule)$' + property: 'isEnabled' set: name: 'enabled' - select: 'operation' where: - operationGroup: 'alert_rules' - operation: '^(create_or_update|delete|update)$' + operationGroup: 'alertRules' + operation: '^(createOrUpdate|delete|update)$' hidden: true - select: 'operation' where: - operationGroup: 'log_profiles' - operation: '^(create_or_update|update)$' + operationGroup: 'logProfiles' + operation: '^(createOrUpdate|update)$' hidden: true - select: 'property' where: - objectSchema: '^(autoscale_setting_resource|autoscale_setting_resource_patch)$' - property: 'target_resource_uri' + objectSchema: '^(AutoscaleSetting)$' + property: 'targetResourceUri' set: name: 'target_resource_id' - where: - objectSchema: '^(action_group|action_group_resource)$' - property: 'group_short_name' + objectSchema: '^(actionGroup)$' + property: 'groupShortName' name: 'short_name' - where: - operationGroup: 'action_groups' + operationGroup: 'actionGroups' operation: 'update' removed: true - where: @@ -85,23 +85,23 @@ cli: alias: time_grain - where: operationGroup: 'metrics' - parameter: 'resource_uri' + parameter: 'resourceUri' name: 'resource_id' - where: - operationGroup: 'metric_definitions' + operationGroup: 'metricDefinitions' operation: 'list' hidden: true - where: - operationGroup: 'scheduled_query_rules' - parameter: 'rule_name' + operationGroup: 'scheduledQueryRules' + parameter: 'ruleName' name: name - where: - operationGroup: 'scheduled_query_rules' - operation: '^(create_or_update|update)$' + operationGroup: 'scheduledQueryRules' + operation: '^(createOrUpdate|update)$' hidden: true - where: - operationGroup: 'diagnostic_settings_category' - parameter: 'resource_uri' + operationGroup: 'diagnosticSettingsCategory' + parameter: 'resourceUri' name: 'resource_id' - where: operationGroup: 'baselines' diff --git a/specification/monitor/resource-manager/readme.md b/specification/monitor/resource-manager/readme.md index 0d99f1806e8d..044ae1e3b1ec 100644 --- a/specification/monitor/resource-manager/readme.md +++ b/specification/monitor/resource-manager/readme.md @@ -31,6 +31,35 @@ openapi-type: arm tag: package-2019-06 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.Insights/stable/2015-04-01/autoscale_API.json +- Microsoft.Insights/stable/2015-04-01/operations_API.json +- Microsoft.Insights/stable/2016-03-01/alertRulesIncidents_API.json +- Microsoft.Insights/stable/2016-03-01/alertRules_API.json +- Microsoft.Insights/stable/2016-03-01/logProfiles_API.json +- Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettings_API.json +- Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettingsCategories_API.json +- Microsoft.Insights/stable/2019-06-01/actionGroups_API.json +- Microsoft.Insights/stable/2017-04-01/activityLogAlerts_API.json +- Microsoft.Insights/stable/2015-04-01/activityLogs_API.json +- Microsoft.Insights/stable/2015-04-01/eventCategories_API.json +- Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json +- Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json +- Microsoft.Insights/stable/2018-01-01/metrics_API.json +- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json +- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json +- Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json +- Microsoft.Insights/stable/2018-03-01/metricAlert_API.json +- Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json +- Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json +- Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json +- Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json +``` ### Tag: package-2019-11 @@ -63,6 +92,14 @@ input-file: - Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json ``` +### Tag: package-2019-10-17-preview-only + +These settings apply only when `--tag=package-2019-10-17-preview-only` is specified on the command line. + +```yaml $(tag) == 'package-2019-10-17-preview-only' +input-file: +- Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json +``` ### Tag: package-2019-06 @@ -93,7 +130,6 @@ input-file: - Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json ``` - ### Tag: package-2019-03 These settings apply only when `--tag=package-2019-03` is specified on the command line. @@ -570,7 +606,6 @@ input-file: - $(this-folder)/Microsoft.Insights/stable/2016-03-01/alertRules_API.json - $(this-folder)/Microsoft.Insights/stable/2016-03-01/logProfiles_API.json - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettings_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettingsCategories_API.json - $(this-folder)/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json - $(this-folder)/Microsoft.Insights/stable/2017-04-01/activityLogAlerts_API.json @@ -587,6 +622,7 @@ input-file: - $(this-folder)/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json - $(this-folder)/Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json + - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json - $(this-folder)/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json - $(this-folder)/Microsoft.Insights/stable/2018-09-01/actionGroups_API.json - $(this-folder)/Microsoft.Insights/stable/2018-03-01/actionGroups_API.json diff --git a/specification/monitor/resource-manager/readme.python.md b/specification/monitor/resource-manager/readme.python.md index 753cfc0a5965..b2c18e532fda 100644 --- a/specification/monitor/resource-manager/readme.python.md +++ b/specification/monitor/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -14,12 +14,23 @@ python: python-base-namespace: azure.mgmt.monitor ``` +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-eventhub +no-namespace-folders: true +python-base-folder: monitor/azure-mgmt-monitor/azure/mgmt/monitor +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: + - tag: package-2019-10-17-preview-only - tag: package-2019-06-01-only - tag: package-2019-03-01-only - tag: package-2018-11-27-preview-only @@ -39,13 +50,51 @@ batch: - tag: package-2015-04-01-only ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2019-10-17-preview-only + - tag: package-2019-06-01-only + - tag: package-2019-03-01-only + - tag: package-2018-11-27-preview-only + - tag: package-2018-09-01-only + - tag: package-2018-06-01-preview-only + - tag: package-2018-04-16-only + - tag: package-2018-03-01-only + - tag: package-2018-01-01-only + - tag: package-2017-12-01-preview-only + - tag: package-2017-11-01-preview-only + - tag: package-2017-05-01-preview-only + - tag: package-2017-04-01-only + - tag: package-2017-03-01-preview-only + - tag: package-2016-09-01-only + - tag: package-2016-03-01-only + - tag: package-2015-07-01-only + - tag: package-2015-04-01-only + - multiapiscript: true +``` + +### Tag: package-2019-10-17-preview-only and python + +These settings apply only when `--tag=package-2019-10-17-preview-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-10-17-preview-only' +namespace: $(python-base-namespace).v2019_10_17 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_10_17 +python: + namespace: $(python-base-namespace).v2019_10_17 + output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_10_17 +``` ### Tag: package-2019-06-01-only and python These settings apply only when `--tag=package-2019-06-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-06-01-only' && $(python) +``` yaml $(tag) == 'package-2019-06-01-only' +namespace: $(python-base-namespace).v2019_06_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_06_01 python: namespace: $(python-base-namespace).v2019_06_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_06_01 @@ -56,7 +105,9 @@ python: These settings apply only when `--tag=package-2019-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-03-01-only' && $(python) +``` yaml $(tag) == 'package-2019-03-01-only' +namespace: $(python-base-namespace).v2019_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_03_01 python: namespace: $(python-base-namespace).v2019_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_03_01 @@ -67,7 +118,9 @@ python: These settings apply only when `--tag=package-2018-11-27-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-11-27-preview-only' && $(python) +``` yaml $(tag) == 'package-2018-11-27-preview-only' +namespace: $(python-base-namespace).v2018_11_27_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_11_27_preview python: namespace: $(python-base-namespace).v2018_11_27_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_11_27_preview @@ -78,7 +131,9 @@ python: These settings apply only when `--tag=package-2018-09-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-09-01-only' && $(python) +``` yaml $(tag) == 'package-2018-09-01-only' +namespace: $(python-base-namespace).v2018_09_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_09_01 python: namespace: $(python-base-namespace).v2018_09_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_09_01 @@ -89,7 +144,9 @@ python: These settings apply only when `--tag=package-2018-06-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-06-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2018-06-01-preview-only' +namespace: $(python-base-namespace).v2018_06_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_06_01_preview python: namespace: $(python-base-namespace).v2018_06_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_06_01_preview @@ -100,7 +157,9 @@ python: These settings apply only when `--tag=package-2018-04-16-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-04-16-only' && $(python) +``` yaml $(tag) == 'package-2018-04-16-only' +namespace: $(python-base-namespace).v2018_04_16 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_04_16 python: namespace: $(python-base-namespace).v2018_04_16 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_04_16 @@ -111,7 +170,9 @@ python: These settings apply only when `--tag=package-2018-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-03-01-only' && $(python) +``` yaml $(tag) == 'package-2018-03-01-only' +namespace: $(python-base-namespace).v2018_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_03_01 python: namespace: $(python-base-namespace).v2018_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_03_01 @@ -122,7 +183,9 @@ python: These settings apply only when `--tag=package-2018-01-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-01-01-only' && $(python) +``` yaml $(tag) == 'package-2018-01-01-only' +namespace: $(python-base-namespace).v2018_01_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_01_01 python: namespace: $(python-base-namespace).v2018_01_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_01_01 @@ -133,7 +196,9 @@ python: These settings apply only when `--tag=package-2017-12-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-12-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-12-01-preview-only' +namespace: $(python-base-namespace).v2017_12_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_12_01_preview python: namespace: $(python-base-namespace).v2017_12_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_12_01_preview @@ -144,7 +209,9 @@ python: These settings apply only when `--tag=package-2017-11-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-11-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-11-01-preview-only' +namespace: $(python-base-namespace).v2017_11_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_11_01_preview python: namespace: $(python-base-namespace).v2017_11_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_11_01_preview @@ -155,7 +222,9 @@ python: These settings apply only when `--tag=package-2017-05-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-05-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-05-01-preview-only' +namespace: $(python-base-namespace).v2017_05_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_05_01_preview python: namespace: $(python-base-namespace).v2017_05_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_05_01_preview @@ -166,7 +235,9 @@ python: These settings apply only when `--tag=package-2017-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-04-01-only' && $(python) +``` yaml $(tag) == 'package-2017-04-01-only' +namespace: $(python-base-namespace).v2017_04_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_04_01 python: namespace: $(python-base-namespace).v2017_04_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_04_01 @@ -177,7 +248,9 @@ python: These settings apply only when `--tag=package-2017-03-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-03-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-03-01-preview-only' +namespace: $(python-base-namespace).v2017_03_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_03_01_preview python: namespace: $(python-base-namespace).v2017_03_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_03_01_preview @@ -188,7 +261,9 @@ python: These settings apply only when `--tag=package-2016-09-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-09-01-only' && $(python) +``` yaml $(tag) == 'package-2016-09-01-only' +namespace: $(python-base-namespace).v2016_09_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_09_01 python: namespace: $(python-base-namespace).v2016_09_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_09_01 @@ -199,7 +274,9 @@ python: These settings apply only when `--tag=package-2016-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-03-01-only' && $(python) +``` yaml $(tag) == 'package-2016-03-01-only' +namespace: $(python-base-namespace).v2016_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_03_01 python: namespace: $(python-base-namespace).v2016_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_03_01 @@ -210,7 +287,9 @@ python: These settings apply only when `--tag=package-2015-07-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-07-01-only' && $(python) +``` yaml $(tag) == 'package-2015-07-01-only' +namespace: $(python-base-namespace).v2015_07_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_07_01 python: namespace: $(python-base-namespace).v2015_07_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_07_01 @@ -221,8 +300,10 @@ python: These settings apply only when `--tag=package-2015-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-04-01-only' && $(python) +``` yaml $(tag) == 'package-2015-04-01-only' +namespace: $(python-base-namespace).v2015_04_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_04_01 python: namespace: $(python-base-namespace).v2015_04_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_04_01 -``` \ No newline at end of file +``` diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json index 1679c78a39fc..ff3322eea174 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json index 10dc27f86aaa..135fbf49ac61 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2017-12-01-preview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json index dd25d294395a..31ab520e440d 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json @@ -10,6 +10,7 @@ "administratorLogin": "cloudsa", "administratorLoginPassword": "pass$w0rd", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "storageProfile": { "storageMB": 128000, "backupRetentionDays": 7, @@ -46,6 +47,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00" diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json index dd1f7afc6158..44e194ea6cdc 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json @@ -23,6 +23,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json index ec45f333a798..9f0b8d612dfa 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json @@ -23,6 +23,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" @@ -48,6 +49,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_1", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" @@ -73,6 +75,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json index e59c1a6f7444..930457495d0e 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -1517,6 +1508,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -1576,13 +1676,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1615,6 +1737,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1671,6 +1813,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1918,6 +2064,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2517,7 +2667,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json index f7344538d931..ed8f6e376d6f 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json index 27789e74bf1d..8f4ce2396f81 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2018-06-01-privatepreview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json index 1f59ebc01b05..8addd2520a3d 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -2076,6 +2067,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -2135,13 +2235,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -2174,6 +2296,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -2477,6 +2619,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -3076,7 +3222,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json new file mode 100644 index 000000000000..54e6ad6f2f4e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01", + "properties": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json new file mode 100644 index 000000000000..6dca003e1580 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json new file mode 100644 index 000000000000..c5871e0045a9 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json new file mode 100644 index 000000000000..770172c5f3ef --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json index 2f315136b484..d2f64547f56a 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json @@ -28,7 +28,24 @@ "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", "replicationRole": "None", "masterServerId": "", - "replicaCapacity": 5 + "replicaCapacity": 5, + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "tags": { diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json index ea5765692f3d..30f53d481249 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json @@ -25,7 +25,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" + "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc1", @@ -50,7 +52,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" + "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2", @@ -75,7 +94,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" + "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforMySQL/servers/mysqltestsvc3", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json index 6e0256e1c27c..adc7717c66b3 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json index 5440c220cbfe..7f9bebd28eab 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json @@ -1072,6 +1072,193 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/Administrators/activeDirectory": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Get", + "x-ms-examples": { + "ServerAdministratorGet": { + "$ref": "./examples/ServerAdminGet.json" + } + }, + "description": "Gets information about a AAD server administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_CreateOrUpdate", + "x-ms-examples": { + "ServerAdministratorCreate": { + "$ref": "./examples/ServerAdminCreateUpdate.json" + } + }, + "description": "Creates or update active directory administrator on an existing server. The update action will overwrite the existing administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The required parameters for creating or updating an AAD server administrator." + } + ], + "responses": { + "200": { + "description": "Successfully updated the active directory administrator", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Delete", + "x-ms-examples": { + "ServerAdministratorsDelete": { + "$ref": "./examples/ServerAdminDelete.json" + } + }, + "description": "Deletes server active directory administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the active directory administrator" + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified Server active directory administrator does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_List", + "description": "Returns a list of server Administrators.", + "x-ms-examples": { + "get a list of server administrators": { + "$ref": "./examples/ServerAdminList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/performanceTiers": { "get": { "tags": [ @@ -1321,6 +1508,139 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "InfrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1359,13 +1679,27 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1398,6 +1732,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1454,6 +1800,18 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1595,8 +1953,41 @@ }, "description": "Billing information related properties of a server." }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "Server": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1616,6 +2007,10 @@ }, "ServerForCreate": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1645,6 +2040,10 @@ }, "ServerUpdateParameters": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1668,6 +2067,14 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2227,6 +2634,68 @@ } }, "description": "An error response from the Batch service." + }, + "ServerAdministratorProperties": { + "properties": { + "administratorType": { + "type": "string", + "description": "The type of administrator.", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorType" + } + }, + "login": { + "type": "string", + "description": "The server administrator login account name." + }, + "sid": { + "type": "string", + "description": "The server administrator Sid (Secure ID).", + "format": "uuid" + }, + "tenantId": { + "type": "string", + "description": "The server Active Directory Administrator tenant id.", + "format": "uuid" + } + }, + "required": [ + "tenantId", + "administratorType", + "login", + "sid" + ], + "description": "The properties of an server Administrator." + }, + "ServerAdministratorResource": { + "properties": { + "properties": { + "$ref": "#/definitions/ServerAdministratorProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server AAD administrator." + } + }, + "description": "Represents a and external administrator to be created.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "ServerAdministratorResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The list of server Active Directory Administrators for the server." + } + }, + "description": "The response to a list Active Directory Administrators request." } }, "parameters": { diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json new file mode 100644 index 000000000000..19611e41a08f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json @@ -0,0 +1,330 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files, encryption keys, active directory administrator and configurations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/keys": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a list of Server keys.", + "operationId": "ServerKeys_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of MySQL Server keys.", + "schema": { + "$ref": "#/definitions/ServerKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the keys for a MySQL Server.": { + "$ref": "./examples/ServerKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/keys/{keyName}": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a MySQL Server key.", + "operationId": "ServerKeys_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified MySQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get the MySQL Server key": { + "$ref": "./examples/ServerKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ServerKeys" + ], + "description": "Creates or updates a MySQL Server key.", + "operationId": "ServerKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be operated on (updated or created).", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested MySQL Server key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the MySQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a MySQL Server key": { + "$ref": "./examples/ServerKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerKeys" + ], + "description": "Deletes the MySQL Server key with the given name.", + "operationId": "ServerKeys_Delete", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the MySQL Server key." + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified MySQL Server key does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the MySQL Server key": { + "$ref": "./examples/ServerKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ServerKeyListResult": { + "description": "A list of MySQL Server keys.", + "type": "object", + "properties": { + "value": { + "description": "A list of MySQL Server keys.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKeyProperties": { + "description": "Properties for a key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyType": { + "description": "The key type like 'AzureKeyVault'.", + "enum": [ + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the key.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The key creation date.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKey": { + "description": "A MySQL Server key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector used to protect the key.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerKeyProperties", + "description": "Properties of the ServerKey Resource.", + "x-ms-client-flatten": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json new file mode 100644 index 000000000000..1738018661a5 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json new file mode 100644 index 000000000000..fea5fcac6929 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json new file mode 100644 index 000000000000..6c53c35e4e72 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json new file mode 100644 index 000000000000..0749b7db392e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/readme.go.md b/specification/mysql/resource-manager/readme.go.md index 62df079caf6b..1ce4bf29f208 100644 --- a/specification/mysql/resource-manager/readme.go.md +++ b/specification/mysql/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-01-01 - tag: package-2017-12-01-preview - tag: package-2017-12-01 ``` +### Tag: package-2020-01-01 and go + +These settings apply only when `--tag=package-2020-01-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) +``` + ### Tag: package-2017-12-01-preview and go These settings apply only when `--tag=package-2017-12-01-preview --go` is specified on the command line. diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index 881116360b4e..eff821babee7 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the MySql API. title: MySQLManagementClient description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model. openapi-type: arm -tag: package-2018-06-01 +tag: package-2020-01-01 ``` @@ -82,12 +82,25 @@ input-file: These settings apply only when `--tag=package-2020-01-01-privatepreview` is specified on the command line. - ``` yaml $(tag) == 'package-2020-01-01-privatepreview' input-file: - Microsoft.DBforMySQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json ``` +### Tag: package-2020-01-01 + +These settings apply only when `--tag=package-2020-01-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01-01' +input-file: +- Microsoft.DBforMySQL/stable/2017-12-01/mysql.json +- Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json +- Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json +- Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json +``` + --- # Code Generation @@ -180,6 +193,7 @@ input-file: - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json - $(this-folder)/Microsoft.DBforMySQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json + - $(this-folder)/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json ``` diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json index f425347d0c8a..954aab4737a0 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json @@ -1696,7 +1696,7 @@ "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json index c8e5eefd7b7e..99950385030e 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json @@ -1916,7 +1916,7 @@ "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json index db7c2b755791..9c7c055db2ff 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json @@ -1915,7 +1915,7 @@ "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json index bcf80758a9b5..a3a8d6aa40a1 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json @@ -1918,7 +1918,7 @@ "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } }, "volumeType": { diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json index 2eb278814ff1..6a0529befb33 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json @@ -2151,7 +2151,7 @@ "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } }, "volumeType": { diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json index f5923f38142e..d5e2a155ee23 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json @@ -2179,9 +2179,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } }, "volumeType": { @@ -2428,19 +2429,6 @@ } } }, - "mountTargetList": { - "description": "List of Mount Targets", - "type": "object", - "properties": { - "value": { - "description": "A list of Mount targets", - "type": "array", - "items": { - "$ref": "#/definitions/mountTarget" - } - } - } - }, "mountTarget": { "description": "Mount Target", "type": "object", @@ -2513,6 +2501,36 @@ "readOnly": true, "example": "1.2.3.4" }, + "subnet": { + "title": "subnet", + "type": "string", + "description": "The subnet", + "example": "1.2.3.4" + }, + "startIp": { + "title": "startIp", + "description": "The start of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "endIp": { + "title": "endIp", + "description": "The end of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "gateway": { + "title": "gateway", + "description": "The gateway of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "netmask": { + "title": "netmask", + "description": "The netmask of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "255.255.255.0" + }, "smbServerFqdn": { "title": "smbServerFQDN", "description": "The SMB server's Fully Qualified Domain Name, FQDN", diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index dc115cd7981d..4e5a285e4313 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -111,6 +111,7 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-go - repo: azure-sdk-for-java + - repo: azure-sdk-for-trenton ``` @@ -164,3 +165,17 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli-name: netapp + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: netapp + package-name: netapp + clear_output_folder: false +``` diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-01-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-01-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json index 4a78287c5fc3..e7eb7ea59bcc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-01-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-01-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -7,38 +7,45 @@ "200": { "body": { "value": [ - [ - { - "name": "AppGwSslPolicy20150501", - "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", - "properties": { - "cipherSuites": [ - "TLS_RSA_WITH_AES_128_CBC_SHA" - ], - "minProtocolVersion": "TLSv1_0" - } - }, - { - "name": "AppGwSslPolicy20170401", - "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", - "properties": { - "cipherSuites": [ - "TLS_RSA_WITH_AES_128_CBC_SHA" - ], - "minProtocolVersion": "TLSv1_1" - } - }, - { - "name": "AppGwSslPolicy20170401S", - "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", - "properties": { - "cipherSuites": [ - "TLS_RSA_WITH_AES_128_CBC_SHA" - ], - "minProtocolVersion": "TLSv1_2" - } + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ], + "minProtocolVersion": "TLSv1_0" } - ] + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } ] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/publicIpPrefix.json index 0e0962030c95..875aa09f3d4a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/publicIpPrefix.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/publicIpPrefix.json @@ -352,7 +352,7 @@ "ipTags": { "type": "array", "items": { - "$ref": "#/definitions/IpTag" + "$ref": "./publicIpAddress.json#/definitions/IpTag" }, "description": "The list of tags associated with the public IP prefix." }, @@ -434,19 +434,6 @@ }, "description": "Response for ListPublicIpPrefixes API service call." }, - "IpTag": { - "properties": { - "ipTagType": { - "type": "string", - "description": "Gets or sets the ipTag type: Example FirstPartyUsage." - }, - "tag": { - "type": "string", - "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" - } - }, - "description": "Contains the IpTag associated with the object" - }, "ReferencedPublicIpAddress": { "properties": { "id": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/publicIpPrefix.json index fa8721fc58d9..a4e5b63c45f5 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/publicIpPrefix.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/publicIpPrefix.json @@ -352,7 +352,7 @@ "ipTags": { "type": "array", "items": { - "$ref": "#/definitions/IpTag" + "$ref": "./publicIpAddress.json#/definitions/IpTag" }, "description": "The list of tags associated with the public IP prefix." }, @@ -434,19 +434,6 @@ }, "description": "Response for ListPublicIpPrefixes API service call." }, - "IpTag": { - "properties": { - "ipTagType": { - "type": "string", - "description": "Gets or sets the ipTag type: Example FirstPartyUsage." - }, - "tag": { - "type": "string", - "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" - } - }, - "description": "Contains the IpTag associated with the object" - }, "ReferencedPublicIpAddress": { "properties": { "id": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/publicIpPrefix.json index 407d94f441cc..e4c50b8a211a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/publicIpPrefix.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/publicIpPrefix.json @@ -352,7 +352,7 @@ "ipTags": { "type": "array", "items": { - "$ref": "#/definitions/IpTag" + "$ref": "./publicIpAddress.json#/definitions/IpTag" }, "description": "The list of tags associated with the public IP prefix." }, @@ -434,19 +434,6 @@ }, "description": "Response for ListPublicIpPrefixes API service call." }, - "IpTag": { - "properties": { - "ipTagType": { - "type": "string", - "description": "Gets or sets the ipTag type: Example FirstPartyUsage." - }, - "tag": { - "type": "string", - "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" - } - }, - "description": "Contains the IpTag associated with the object" - }, "ReferencedPublicIpAddress": { "properties": { "id": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/publicIpPrefix.json index 402e38c4c57a..f7ad1feadac6 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/publicIpPrefix.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/publicIpPrefix.json @@ -352,7 +352,7 @@ "ipTags": { "type": "array", "items": { - "$ref": "#/definitions/IpTag" + "$ref": "./publicIpAddress.json#/definitions/IpTag" }, "description": "The list of tags associated with the public IP prefix." }, @@ -434,19 +434,6 @@ }, "description": "Response for ListPublicIpPrefixes API service call." }, - "IpTag": { - "properties": { - "ipTagType": { - "type": "string", - "description": "Gets or sets the ipTag type: Example FirstPartyUsage." - }, - "tag": { - "type": "string", - "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" - } - }, - "description": "Contains the IpTag associated with the object" - }, "ReferencedPublicIpAddress": { "properties": { "id": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..411d05dc32b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "location": "eastus", + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..d54af3fda656 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..1db294284db9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..bc32b181c856 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..6e0d79dbbe3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..44fcb2c043e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..44fcb2c043e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..434148f3fdec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json new file mode 100644 index 000000000000..a8d8532ca25f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json @@ -0,0 +1,791 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-01" + }, + "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.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + } + }, + "definitions": { + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + } + }, + "required": [ + "source", + "destination" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated.", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "type": "string", + "description": "The monitoring status of the connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..ded55f8539ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "location": "eastus", + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..97baf9c8c858 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..e6a1c933ec0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..6cd21c098480 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..b23233964381 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..8a2556a89b8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..8a2556a89b8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..410634acc334 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json new file mode 100644 index 000000000000..c5fac632fe81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json @@ -0,0 +1,791 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-08-01" + }, + "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.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + } + }, + "definitions": { + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + } + }, + "required": [ + "source", + "destination" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated.", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "type": "string", + "description": "The monitoring status of the connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..dd3c653448ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "location": "eastus", + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..9af119f6dcf7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..c0e245be16d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..55f35935fd58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..eec8acc6262b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..e0ecf016a948 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..e0ecf016a948 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..2db7891c5cba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json new file mode 100644 index 000000000000..29245b6b2c00 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json @@ -0,0 +1,791 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-09-01" + }, + "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.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + } + }, + "definitions": { + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + } + }, + "required": [ + "source", + "destination" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated.", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "type": "string", + "description": "The monitoring status of the connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json index 6f11d92755cd..ee5347ac08ea 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json @@ -1569,7 +1569,7 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Reference to the FirewallPolicy resource." }, - "hostnames": { + "hostNames": { "type": "array", "items": { "type": "string" diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json new file mode 100644 index 000000000000..94c9648340e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json @@ -0,0 +1,2843 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..b7d9cb6a59b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json new file mode 100644 index 000000000000..2b9c329eb36a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json new file mode 100644 index 000000000000..b46b1617c955 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json new file mode 100644 index 000000000000..0f6b7317713c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json @@ -0,0 +1,1064 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..98a41345389b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json new file mode 100644 index 000000000000..d60afe9f6162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json new file mode 100644 index 000000000000..8625e0f4e7cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..6e2e1672657b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..8644d402b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json new file mode 100644 index 000000000000..bc18a85a9687 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..891b2762b1be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..76cb23520cea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..6201e2f63d4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..a5b866b70c5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..6684ec03aa5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..42a41ec168c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..e093487ed2af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..e605d530f168 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..546f77db5543 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..934609b5ff46 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,745 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..d1bb80926bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..5809f5bfcc88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,259 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..139076dbae05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..fac0214a1fc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..a422470dac13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..a422470dac13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..6aa6ab22415d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..40de58c947a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..39f82551839b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..b4aeb4b546a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..ec2cbbf1dc34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..478750ac412e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..0a45140a6c62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..166e81f66f16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..71172ee50e6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..d26c4fe503c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..e82ba76e7318 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..7b5a5a2fc6d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..f074874fd186 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..97d60f20cc49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..b6b60c643f86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..df081c05ed16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..793d233e3907 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..c87f737744aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..09f9180d4be4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..4f57293ced6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..fac0e16f1ba9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..5d1a0eba9317 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..c8c9051db441 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..a7fc25d6cdcd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..f17c4eae9ddf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..86d36cff145d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..aeeeca38daeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..3233e639db6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..3adf8f2b8683 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..2f947a45e61e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..5f2f369fa47b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..7bd532ad91e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..4c9e90bc106a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..2b3d4847fd84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..a4a72aca4796 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..1f209646b43b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..64ae93924d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..23b15b7ca9f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..f150dcb70b7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..fc69c76527ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..225c9fd034bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..c2e133844bd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..20d242f7e96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..d1cd2b0973e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..8142531c8f5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..59a9aef833fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..ef84d2397a11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..18983c2007a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..ec1ead2e4f1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..1a7c3103b23d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..56c4847b2547 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..bc710ef3dbb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..518309f25b88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..3dd3fd594ec1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..a7991927d862 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..600d95a3b96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..f9edebe36def --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..43a103387652 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..0b5a6b7e1a29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..1799e45dfec9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..3fc9e7582793 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..006fce6a8172 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..c481942146de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..72a960ec7252 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..628cd4c47d15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..0129e01fdc9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..ae841945de87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..a78f2c10ee1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..be627a4e3f04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..3f32257cd06e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..fbb0554bee80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..4380c59bdb23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..f4f1823a758e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..90271c98e31f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..9dab5d5acea8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..95a5229976bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..e262254dc69a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..04fbe7a44a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..be5d1826a86e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..fa53c90e9f47 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..b7289dc024e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..2ff072bce2c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..4677f6f433ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..90eef103be87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..11519c3e7dce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..558ae0235f3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..187aa0797aba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..dd2ba7ea0680 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..8691d744576a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..6d0c7488adcc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..ef7332304ed6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..65e7ae7ab942 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..317624f72c3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..416da5b1954b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..99a117d30a44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..59f56d5562e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..6dca4ff05f76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..3ec83c49917b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..12ab19e13182 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..a77d313ec846 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..9ccf49db2c05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..8c657ea891ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..14e15cd0d8c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..7e6f051eae0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..2b70feefae2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..42897c8da575 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..82f2e0b17317 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..5327ec53201f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..305aa02f5295 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..7bf815d3d308 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..b6434e4d082d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..199f964e8f6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..1d82902ed26f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..70ccdfd52ad2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..f4631688a51b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..b94411feb943 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..302e4e2dd2ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..459e7972d356 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..0d18b0ba3b59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..8bfab627e5ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..733d24edc635 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..5bf4e04bdb71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..175e6247e508 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..ba197f2f4917 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json new file mode 100644 index 000000000000..ad0029599886 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..cb6d0150f140 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..d6e68c137c4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..f7116f6bed2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..03029c4fa0a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..0e47eb413a43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..54e7cbc43b6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..e05a10077208 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..b9a6dbe984a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..9ae1fd1be45a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..992fe32acd2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..b67eca2d9990 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..bfb888322232 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..626d232ea24b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..60350aefb9b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..7a2f328c9bf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..56172c470873 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..3a9d83c1f3a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..2c69896e5aa1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..c78babcac5d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..45dc77bb282b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..1b5777f8095a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..5a4dea7e0c40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..1ee821cea779 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..a13fbd7e3e43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..abb2c8a274be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..1c81c8a2ee52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..60f5cd97e4bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..61c5d4cc7b88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..a6f6524a6c07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..f42e79e5270d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..a0d86e6111c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..c4c4167f6e1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..65f4a2ba55ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..746c37d648c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..4ebbb7003f1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..4e17946572dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..08c67a76db4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..7c6b110b9699 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..fe34b34cd854 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..482f006d75b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..d04db6052bbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..8bc4420f129e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..ae6d2184f862 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..311547789b39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..2ff0ad689de5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..098d71b376d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..fa70842aa06e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..eef3ca0dfedc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..dbd0149788ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..8ed4bd1eb66a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..3b687926a02a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..48133e88da50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..35483fcee216 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..a8b6e888b370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..9e4713c1cfeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..fb8e0f47da64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..9fc7bfb61a78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..871f1d6dc669 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..2f87eccb3108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-12-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..06e99a87e66a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..4204c4f3247c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..1568bbc537b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..988fe8f788bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..5c4fa5705434 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..6ba44e7b2d3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..d0af174c8e9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..ebc6f9bbd446 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..2c8d49a7873a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..a3bb855975fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..e2c6f25bd1a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..d4451a6c6985 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..cf3300e371e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..8fc51eb05f9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..aba1b22d17ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..6d24e90067fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..9067e82f2ec2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..5b18d62a6900 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..45d528deb1ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..35c5cf67c591 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..4796b326ac2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..71920e7bbddd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..314692db768d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..ecd0994b930b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..af6180050f4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..a5c7cc3538c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..bb8b3561e02b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..926d63810117 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..faed891d7e7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..7a5d982d5577 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..2483b42edfba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..1b309ebb0a91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..988a5eaaf008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..bc2097481238 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..029c614090d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..262f69b2aa83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..262f69b2aa83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..1a158b986b5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..35f73c16e19a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..38ed5b8077d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..d5a2c4382ad2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..685fff15d4ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..09e41cca3b12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..2170766fa7f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..df616ea28874 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..d7f512330ed5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..07a49eba7694 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..cf76963b5144 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..a2824acbf30b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..efeaf0d2cc8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..bc50b7e5d108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..9e5c4bb42ebb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..52295d349427 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..cb9490ce2ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..8b41d3ee0f28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..8cad566443c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..7fc1138cdb11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..36442bf33138 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..9b4d4b30c36f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..473f6aca489d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..2ca6880f4bf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..7710070dc344 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..d57e6d9fc036 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..8baa6fe93ec1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..bae2aee3918b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json new file mode 100644 index 000000000000..3e4387b3b437 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..668040e4e770 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..ffc23ba5445e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..4ce8ba71b735 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..f0f35d9cc330 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..272e92469179 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2019-12-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..e66e32eba943 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..c3bafa97f605 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..b385979b9b05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..81b593f49856 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..346221b906cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2019-12-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..fe0ac2cf8aa4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..f56d509c9cc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..e123a5fb4bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..a86be8bb0e3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..01992f62ce91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..c6eebdd541f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..b631b76a5d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..e58886c21bb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..1763674c18dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..02b3ef08fb77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..a180a12e114f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..cde83d5cf834 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..ee04a88c2e37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..d4ea25d2228c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..77fa66acfe17 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..9943e70aec58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..cf3ebea46af1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..2a3c5e7f9814 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..c2dd9d5eed5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..02ecf65c0def --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..30a14590a495 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..978b92192168 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..39e533f0bfeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..23f5655dd35e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..cefeb368b3f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..772bb0fd3cb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..3b0a951d6c30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..8b856d413015 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..c95bedf13e64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..d62a6fe4395b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..a0777bf4ec97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..b45913944fb6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..09a217a25de9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..382e8a1713cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..6cdbce486930 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..604140726a5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..2dd76d637dac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..6142b3991c5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..857b4c26f2cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..8c52a0e35751 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..9b550f23c52e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..165ce5075ff2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..3351b2e13af2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..dc3cb6ae2d7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..b41c7655be32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..a9e51f9ad619 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..255bff40aa22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json new file mode 100644 index 000000000000..98ce6e4420d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..17e77b64b84f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..3502c5f76467 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..ed226959b42e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..4e501ad752a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..a4de4b47c1b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..561512d78563 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..1177d15dcdc8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..bdde46f81f71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..625f193ba4de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..d6f0e06d8cb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..f1a8be9e5f01 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..78d0ec684d70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..b5a78ce63c0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..3ab84fb05e85 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..53ba4b525bf7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..ce8eb361a0de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..e42274544acc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..c4342aa7a1ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..1fee33d4f31c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..e8166d8f9bf0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..969258bccaa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..b422f578601a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..34d2d9c42e2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json new file mode 100644 index 000000000000..224b59e8fc13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..61d547443b51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json new file mode 100644 index 000000000000..7a9b567820c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..3c0429cd444e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..6a924973d27a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json new file mode 100644 index 000000000000..2817536edcb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..2d9679b4b636 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..6ecf6376f9d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..10549a0ef306 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..810ef5d8ab24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..0f2c24b3d45c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..159d83e1c8b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..d106895e1b91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..f16bfd05b02e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..9e711ff6d992 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..11357cec4d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..a969edebb9ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..be2a0c7f0cf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..60d3bd48b2bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..caddc76821fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..d70918d1a7fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..52f5cc073ac4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..4d207b980bde --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..211f537da795 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..a3aadfed64b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..16f50f4f7f02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..d8f599afd07c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..e648874b4724 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..a877b0b1ddbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..f055eaad6e12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..fbf6ab0b74d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..384c1845298d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..25ec1acc7e81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..d568f9660686 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..a50a4ff8e3a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..7d90ee0e7c0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..a4fd6036ea4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..c6a72b9af008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..0597b82b5929 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..2c287ecb04e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..280779da8e30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..3fbd9c4305f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..6545611f8c5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..253ee5b6be76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..2d78493c96ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..a8e72e8c1188 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..6545611f8c5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..877a94f2c64d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..15d12cf49fd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..9d57e56b94cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..f423d39b7110 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..d1461ea491ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..7b6a24b9acff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..98e26ce4eb42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..dd3574dc61d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..ad1aba788899 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,200 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "", + "aadAudience": "", + "aadIssuer": "" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..9c845217df0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..fb1777aed0e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..c37ce661da2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2019-12-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..48fec80b8df8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..48150ab34ce9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..73fdc456d79e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..11c446f98865 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..30f72983256e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..014cdb4f98b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..94997ee9bf5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..9ff5e580f121 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..96d54ba40b60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..fcd1fe76d871 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..7f35474538d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..0bdc3240dd6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..072e5a6658ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..77a39c6d1f63 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..645d61d8d43b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..dea2acf38d9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..1eda5cfa12d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..f612568abdaa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..a2a2a4cbffe9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..099b6973a9a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..94c5fe55d33f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..13baf1cb70e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..d8d174f764f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..f22edecd1cb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..a86095b2b32b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..b197abbaf990 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..a00994608c7d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..20ee20c0a284 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..59156a0dd732 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..fcc8e48ee761 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..e5c6769160c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..a4e005766b4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..7f2f0d934c3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..a14a6d20cfc0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..df0a1144e394 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..9620d5dc4fde --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..721d0be90cd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..881de0f5bfc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..3a8361a6e360 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..1dc45c9353be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..41a9695afd7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..c8901e6e4126 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..5e47e5839c6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..5e47e5839c6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..5d7086d8385f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..ecf8f2973d58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..690bcca6c5fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..437faa18b547 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..13702ff29ba8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..c2276b28833d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..940f9904d952 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..3385ece69db3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..ab2f5ce75dce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..2806bcafde15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..55370ab20087 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..84e27e7b128b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..cd22eb6bd506 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..bc873b213c97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..a04770dff4ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..3e7c4a01ffa6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..85fb2e3da71a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..27cdb83f5222 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..46b777bab267 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..4fe0afedcdee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..8f8ffba2b17d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..14f9873a6e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..8c0dcc5b978d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..1c5f5d3b9793 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..16635b5e1a1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json new file mode 100644 index 000000000000..025509802a3d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./expressRouteGateway.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..87af2c0ec860 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2019-12-01" + }, + "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.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json new file mode 100644 index 000000000000..835ccf3f23f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json @@ -0,0 +1,700 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json new file mode 100644 index 000000000000..8a6063bf97b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json new file mode 100644 index 000000000000..a3e4549b90fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json @@ -0,0 +1,1059 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + }, + "Get FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + }, + "Create FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + }, + "List all FirewallPolicyRuleGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition", + "NatRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NatRuleCondition": { + "description": "Rule condition of type nat.", + "x-ms-discriminator-value": "NatRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json new file mode 100644 index 000000000000..73c37ea7fd32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json new file mode 100644 index 000000000000..fcb08c01fa74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json @@ -0,0 +1,2058 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json new file mode 100644 index 000000000000..d5dcc4adb4cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json new file mode 100644 index 000000000000..aff82e46b28d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json new file mode 100644 index 000000000000..aab999a52db4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json new file mode 100644 index 000000000000..1900314c3e10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json new file mode 100644 index 000000000000..2303fa25946e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..22da0fa64757 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json new file mode 100644 index 000000000000..f3fb147ef045 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json @@ -0,0 +1,4446 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "integer", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json new file mode 100644 index 000000000000..c022689f9db2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network 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 Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json new file mode 100644 index 000000000000..53153e19c297 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json @@ -0,0 +1,572 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + } + }, + "description": "Properties of the private endpoint." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json new file mode 100644 index 000000000000..43c093cf8cb5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json new file mode 100644 index 000000000000..7a3c31b97d59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json @@ -0,0 +1,545 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json new file mode 100644 index 000000000000..fc0332bfef4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json new file mode 100644 index 000000000000..0bc39e856c28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json new file mode 100644 index 000000000000..34bcaf72dd74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json new file mode 100644 index 000000000000..6bf179cec6c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..0b9b1973a1d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json new file mode 100644 index 000000000000..1de428f46b79 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json new file mode 100644 index 000000000000..2751233e90dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "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": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json new file mode 100644 index 000000000000..e9ddb659f25d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json @@ -0,0 +1,1951 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..8df059f3686e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json @@ -0,0 +1,3680 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json new file mode 100644 index 000000000000..12c92544c6d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json new file mode 100644 index 000000000000..cf64b48da444 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json new file mode 100644 index 000000000000..d7f33c866517 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json @@ -0,0 +1,4608 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2019-12-01" + }, + "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.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json new file mode 100644 index 000000000000..5196a5c225db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "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 policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. 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/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "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" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group 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": "The managed rule group 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" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json new file mode 100644 index 000000000000..6c1aa3a2f805 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json @@ -0,0 +1,2847 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + }, + "forceFirewallPolicyAssociation": { + "type": "boolean", + "description": "If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..fd2a995b8969 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json new file mode 100644 index 000000000000..348270c664e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json new file mode 100644 index 000000000000..0bb1021b7c49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json new file mode 100644 index 000000000000..9865e7225956 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json @@ -0,0 +1,1071 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..f9dd37c9ab0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json new file mode 100644 index 000000000000..69b0dd930a15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json new file mode 100644 index 000000000000..e7ecc44f8b2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..df8f794729a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..57a88d24c474 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json new file mode 100644 index 000000000000..209aaf23d1f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..d926268dc4d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..b243000433ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..e6c28a181d25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..5e3d378dc9ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..76e0f585e5eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..0a12b30984f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..431f89fb217e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..c482064a50da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..ccab55f87e44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..5d547825cf9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,745 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..7836ebcfbc14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..5365b4014bad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,259 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..6e7aff728de5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..a3904587f150 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..d4cb6f10a481 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..d4cb6f10a481 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..3b32fb564df1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..3a0d33214f26 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..b5a3b2a764e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..713a847c6512 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..fa5806de0f2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..5990e74b6c75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..16a142fc6898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..3e6f4df03fd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..359e7556ba83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..2c1ae208cd77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..20894f01b703 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..c4f5938cb19d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..e70916514911 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..4c55da9d47ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..e584a5f4d7b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..08edaac039cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..65c6ada60e7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..fcb7204b5341 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..1333f6c761c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..5a5589801522 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..cad6320291c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..79a2d6e231a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..120c5e68660a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..32cac10ce0d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..6d86cef671a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..df68fb461819 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..236614acac99 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..53e151603744 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..4cb216b3787b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..66e9493f38c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..a4423f65d143 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..aefa8052ced0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..319dbcf20c11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..001552382dc4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..60d705c3bdda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..33c68df45aa4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..3dd04515acb4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..08596aa2b40b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..f7cf0a86c89b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..ce4234885a9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..22a39a57af8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..68c497bab39c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..8a4799272297 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..737a5872527e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..602967a1823f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..1bc94b196e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..b11154d743e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..d081dd2956a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..14ee19aee323 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..214e474bd60f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..911888d881b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..22ed0f07f4b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..e43ae9afb4b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..5cd9463acaab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..6fd1694b7c7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..fefb28dc478a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..53254b8af9ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..1f18a6bfcbc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..f71cde481179 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..8fcf7ef7ca1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..58d0f72cb048 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..c096827343dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..d2c0970b69cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..46f3ce64f632 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..3a65f9c94c4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..bf0c3f966cc5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..b0ace4805e53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..2cbe2d59f726 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..3593838ab989 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..abaa2fad12ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..e40636666015 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..0cd8e6b1f160 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..258c8bcf4687 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..9d608557a288 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..7b5808e4cd7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..853b7f24a3ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..c803a5dbe1c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..4e8d6053f27f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..47ca6cc93983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..04764169f203 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..ea85cd858887 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..88f06b1f1b3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..9f56d1b0c127 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..0feb69a53b4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..aad6a9f4a3a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..e43f8bf600b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..385c780e87a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..d4981a744e4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..fde215741756 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..fbb7f2ba5b33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..d8bd3414c541 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..0acf2d9b2cce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..26f5cc13e4a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..be405f27337e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..3c7411562c73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..8d251d3fa565 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..788da257db8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..46fdb9838e37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..f10567a10492 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..9efed44ebdca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..7b228a0a015d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..da410c89e09a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..80e0eb925780 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..a7223541dbac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..653525d86ada --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..1953805d06ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..cf09a8094cad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..4e2ec356123a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..2d948e4ce277 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..35fc35e0f35a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..ea0401d4edf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..e008b5aa0714 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..a7490eccb342 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..ad5805a628d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..3b56f2e02a7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..f8ae7f3cec8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..dccd1c0302a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..f8b11dd9ed14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..34cb7a728ebd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..5ae3482a24ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..4dd2d9ac6ecd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..7f0bf11682f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..c05058e3ded2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..ddbef1573d0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json new file mode 100644 index 000000000000..3be8dc7bed2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..2af3473ac790 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..bf1758cbf3aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..c2a371aa08b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..07627ec300c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..112fdbd70370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..04e05245d9f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..7e8f1bafb36c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..e14ad9319aac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..ccac2e565bc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json new file mode 100644 index 000000000000..6be0a996bd9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "parameters": { + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + }, + "201": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json new file mode 100644 index 000000000000..075792a983d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json new file mode 100644 index 000000000000..88375c6a027b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json new file mode 100644 index 000000000000..ab00ae175cbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json new file mode 100644 index 000000000000..a3a239bfc13f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json new file mode 100644 index 000000000000..eba83f6620e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "location": "centraluseuap", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..e9efceef3424 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..06f6b6a90cc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..33f247bfba2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..8f42a7eb9c2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..abec22333ff2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..facd8958f5bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..5c257bfaf635 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..a31a6f1beabd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..a76a6e1605c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..9b40f47080ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..6132246032c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..80b4a4774923 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..d085974f070e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..800183d0cc42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..6ff5cb69c8d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..a55bb5539b8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..165844d1ffca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..5e699df33310 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..e148a775fbd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..e7504148f141 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..7d6b92af532e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..61e7b4fa0abb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..b314f67d304a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..1941d98d8a50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..79cd6235eb75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..8dd38c985c15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..1e1cf9247b9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..d192173065d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..1b28bf359a4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..8de050152187 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..c261ec7206e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..197790205b0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..749e9f9c683c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..76f0ddd13e34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..9e457e05fb5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..0b0cf42656e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..5a1166c95180 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..6064af941cdb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..a5e407ce3f8c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..cf9132e1bb8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..8650a24daebd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..f5b46952ee48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..46bcd02daea6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..f982df9b1d81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..179a24dcd623 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..bb87c44917de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..41d47b3d78a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..4a4cd489076d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..c8f23986430d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..d5ab3645e1f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-03-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..5a58fbb8e2b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..30882ec01a81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..414e7a8c7c39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..1fbc75134de6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..17d269657079 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..f3830595a108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..4cac980adeeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..525d1fce720c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..36853c44be95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..c45130708176 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..7ea23c2b98a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..80453d062f4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..3ec4c8c156b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..b64e6dd81deb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..fdcdf5025691 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..5a31f4c9ca31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..73b7c139aa1e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..3d7c7d4c5249 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..de4da21d817c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..ae1412a4543e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..fce39f47edd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..e88aa062bb61 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..c2e3c6dc523a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..3bf49cc26cf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..4f10e51be6c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..e48e568454bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..112a6c5043f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..d9220dba93ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..a08372a686ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..1dd71f222186 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..c06df6804aad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..92e234223949 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..20672f1a15e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..35f98c8062da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..8566b869f399 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..f84f6adb97a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..f84f6adb97a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..9b919173f8ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..ef5849904b28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..317694350e1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..9092af1af11f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..3eed112aca0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..e6248d8dd930 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..bb552aeb0da3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..05c50b458353 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..6f32ddb28c43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..f247646b5263 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..d0fa06acfa1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..b20db695ef49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..7882564b1fe4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..6761f91f360e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..6a2650093e9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..7bd872226dae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..aea924034d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..6867c4d99db8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..f60c4cc80bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..99e75c37e9d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..03d765e6066a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..7540a8a34d3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..b621c584d14b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..567835759f7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..93ca3017408a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..ba4be3fa386a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..21ba5e65e2d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..482b0c28f4fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json new file mode 100644 index 000000000000..6ba7a660603a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..0f0185acf11e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..5a9841896642 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..f0a6c55d5657 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..0f5c653b7205 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..ebec1f1ebec9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2020-03-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..f3d7d2e25f6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..1b20cfe3bedd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..81e4c5a8444c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..98e0fad14b6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..f26e4e4a6d23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2020-03-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..3b3c282c9b74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..1c1ad7860bf2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..67f60c5df8b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..d2b96f87ef25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..ea11011c62b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json new file mode 100644 index 000000000000..6284ccb749ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup", + "parameters": { + "properties": { + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json new file mode 100644 index 000000000000..dfc949c5e2b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json new file mode 100644 index 000000000000..316ad45471c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + }, + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json new file mode 100644 index 000000000000..0a2508bc9b87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPdnsgroup1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup1", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + }, + { + "name": "testPdnsgroup2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup2", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc3", + "fqdn": "abc3.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc4", + "fqdn": "abc4.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..dcef18314bff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..0a7a2a20740a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..5b962c6b3802 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.7" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..d9cd39fa2658 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.5" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc5.cosmos2.com", + "ipAddresses": [ + "192.168.0.7" + ] + }, + { + "fqdn": "abc6.cosmos2.com", + "ipAddresses": [ + "192.168.0.8" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..a20ad6453f02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..8e64b54e506f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..9f715d76df0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..08c24447d4ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..5399bd2d084d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..5461e7737b3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..fd00055f763f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..be4ffc1d3912 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..002a03facac7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..82567508ac6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..8641e89096fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..0769aec02357 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..769e56dca162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..7a54510d952c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..53fefaa548e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..79056c1618de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..d7bfa657420e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..78541f252fc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..1e9f1dee5eee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..ac7aa094a508 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..07ce3988b876 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..fa208dcbae80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..0a7981719482 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..77807f1eff0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..e4315101f26b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..0e4c1480ad62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..579ec5c6ed57 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..9040a6cbc01c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..552477bd5d11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..900dd3ea2337 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..183ecfc0daec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..0ca132b2660e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..3e5877c09906 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..b804f02005dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..310f163d9e94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..2512aca60a65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..ff01899bf509 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..eda9bf016783 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json new file mode 100644 index 000000000000..8d59b45ac90b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..81bcb785097e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..8c1cec20a600 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..d465f75fcdc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..9d082a6fe483 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..4447ab6d8e0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..e84592b028d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json new file mode 100644 index 000000000000..83aaae089306 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json new file mode 100644 index 000000000000..bae4b1ed2164 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json new file mode 100644 index 000000000000..719331a51cd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json new file mode 100644 index 000000000000..90bf73e3d441 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json new file mode 100644 index 000000000000..52a13b32f2ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "201": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json new file mode 100644 index 000000000000..e88e0d7cd4f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..2b5c6c830d1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..ba0659a7bbf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..d524a60acf10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..70e9806b2d07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..82cc33974d3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..4c09829ed2dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..6dc5b6b7ebfb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..06d08cdcb6a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..0d319e63f7ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..46ad4fedb44f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..d82582890ecf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..85b0381dc652 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..0b1da9c30d80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..cea572f56b77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..d53a730e9c58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..6ceb2cde4904 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..27c96c386cc5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json new file mode 100644 index 000000000000..cf2130f43c50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..8b75e3d40702 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json new file mode 100644 index 000000000000..b0f94fc99ced --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..e1bf094918b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..2baaa822f8fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json new file mode 100644 index 000000000000..87708f8af869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..8a40c7de48af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..89c13fd9f024 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..2a11388071f7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..b724d9ab835a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..6f636f230db1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..1f6317c022ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..546be3c6417a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..f10aef76c383 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..79ddec6b60f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..b4f246af9d45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..a53b860c787e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..9cef24b0d89b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..ae170ee324fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..c03ac564f6c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..7a2a3698c33c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..75045cce7d92 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..92b14e78592e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..1889f8aa5008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..6e5756801f43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..a5134f99d2f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..c72c2238dabd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..0a6dc2785ef8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..547000adb03c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..78a548c2b327 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..3988dddc65fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..059c70ae6883 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..9d3e0e3f4935 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..2091d0c0e52b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..1ee5f21e4238 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..0d8917bd36fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..1a6305eaf296 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 20, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..65a5b960690b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..38c6a0fd5ee0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..6b3e1f269cf0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..5891e77c0cda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.1.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..a4f82c492917 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..e03de2746a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..4dd924b7fa3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..1bac4371a998 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..ee56d4b675b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..e03de2746a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..3088e2ec40b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..c73c001880d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..96604094cfea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..40afe588a987 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..623ce36f9f35 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..7750b979796f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..3cdaeb8023d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..caf509473007 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..bbe5756da3cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20, + "radiusServerSecret": "radiusServerSecret" + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..03e95aa7c83a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..d2b9d77c5622 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..49a90c45406f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2020-03-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..a578020ac710 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..1d4843696d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..8abc34f2f3b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..f5c4030922c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..0e6fb0f836c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..3fca8e5556db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..77c4cbd4ef9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..d38aea292276 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..97498890f720 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..589065ff061e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..ca8a40017af4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..cbc4ea6eb73d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..e059b08bb886 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..75fcf6903664 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..0a2c7c63c7ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..ef651a47ab15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..75e7205af2da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..fc3648782abd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..cbc63fe1d28f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..7dde52e427e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..809097521f95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..feefb4d890ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..0453dfa5b176 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..32b4c1e92586 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..f872f4a7740e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..20a380d3b5e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..09c82a8417cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..d71f127d5be9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..fa00168276dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..0540b19f4d4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..ef022f839f3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..a8bf47037ad1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..5c8047f0f93a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..d54104e39bec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..6a1ddb0a8820 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..8d15e63694d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..7c0a1cc34818 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..1af377b71e8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..18fe54362685 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..a2cc75e39a65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..c42a9e7d0827 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..12a15e5497bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..646b4ae350c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..646b4ae350c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..362850145cf8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..a13c6268d32e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..643992e3edbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..a247b7fbc018 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..4e3c723b5292 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..6986640ea350 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..b7dc338d8b40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..3841a4867212 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25, + "radiusServerSecret": "radiusServerSecret" + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..959b2e8b88e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..647a312b8b55 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..550d5511a863 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..df1af5662b04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..dac3b9dc3e7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..2454e29be8d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..435cd81519da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..023eb6e79689 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..8904ee230e80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..d6bacb1c438c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..a20a52d6adf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..c13596ff2cd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..debeb557a21f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..7b036ae74e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..47c1034c45b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..bfa961b31840 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..45e9ca124858 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json new file mode 100644 index 000000000000..46911567803f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./virtualWan.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..3f17e9395d32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2020-03-01" + }, + "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.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json new file mode 100644 index 000000000000..a95480410be3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json new file mode 100644 index 000000000000..856ee28bbed1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json @@ -0,0 +1,1075 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + }, + "Get FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + }, + "Create FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + }, + "List all FirewallPolicyRuleGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + }, + "intrusionSystemMode": { + "description": "The operation mode for Intrusion system.", + "$ref": "#/definitions/FirewallPolicyIntrusionSystemMode" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition", + "NatRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NatRuleCondition": { + "description": "Rule condition of type nat.", + "x-ms-discriminator-value": "NatRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + }, + "FirewallPolicyIntrusionSystemMode": { + "type": "string", + "description": "The operation mode for Intrusion system mode.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionSystemMode", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json new file mode 100644 index 000000000000..e4474da6cc33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json @@ -0,0 +1,454 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/IpAllocations/{ipAllocationName}": { + "delete": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Delete", + "description": "Deletes the specified IpAllocation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete IpAllocation": { + "$ref": "./examples/IpAllocationDelete.json" + } + } + }, + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Get", + "description": "Gets the specified IpAllocation by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get IpAllocation": { + "$ref": "./examples/IpAllocationGet.json" + } + } + }, + "put": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_CreateOrUpdate", + "description": "Creates or updates an IpAllocation in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create IpAllocation": { + "$ref": "./examples/IpAllocationCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_UpdateTags", + "description": "Updates a IpAllocation tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update IpAllocation tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/IpAllocationUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_List", + "description": "Gets all IpAllocations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all IpAllocations": { + "$ref": "./examples/IpAllocationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_ListByResourceGroup", + "description": "Gets all IpAllocations in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List IpAllocations in resource group": { + "$ref": "./examples/IpAllocationListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpAllocationPropertiesFormat": { + "properties": { + "subnet": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet that using the prefix of this IpAllocation resource." + }, + "virtualNetwork": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualNetwork that using the prefix of this IpAllocation resource." + }, + "type": { + "$ref": "#/definitions/IpAllocationType", + "description": "The type for the IpAllocation." + }, + "prefix": { + "type": "string", + "description": "The address prefix for the IpAllocation." + }, + "prefixLength": { + "type": "integer", + "x-nullable": true, + "default": 0, + "description": "The address prefix length for the IpAllocation." + }, + "prefixType": { + "$ref": "./network.json#/definitions/IPVersion", + "default": null, + "description": "The address prefix Type for the IpAllocation." + }, + "ipamAllocationId": { + "type": "string", + "description": "The IPAM allocation ID." + }, + "allocationTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IpAllocation tags." + } + }, + "description": "Properties of the IpAllocation." + }, + "IpAllocation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpAllocationPropertiesFormat", + "description": "Properties of the IpAllocation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "IpAllocation resource." + }, + "IpAllocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "A list of IpAllocation resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListIpAllocations API service call." + }, + "IpAllocationType": { + "type": "string", + "description": "IpAllocation type.", + "enum": [ + "Undefined", + "Hypernet" + ], + "x-ms-enum": { + "name": "IpAllocationType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json new file mode 100644 index 000000000000..f0ce3d5449c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json new file mode 100644 index 000000000000..224f5871e9db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json @@ -0,0 +1,2058 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json new file mode 100644 index 000000000000..dbabf6ed23ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json new file mode 100644 index 000000000000..95976775e19a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json new file mode 100644 index 000000000000..4d35e6d0bba8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json new file mode 100644 index 000000000000..9056b3d64c9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json new file mode 100644 index 000000000000..f1561ab06c7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..670275ae115a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json new file mode 100644 index 000000000000..96be9bca3812 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json @@ -0,0 +1,4446 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "integer", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json new file mode 100644 index 000000000000..48fb2e6cf606 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network 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 Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json new file mode 100644 index 000000000000..4a14e3c84031 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json @@ -0,0 +1,963 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups/{privateDnsZoneGroupName}": { + "delete": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Delete", + "description": "Deletes the specified private dns zone group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Get", + "description": "Gets the private dns zone group resource by specified private dns zone group name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting privateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_CreateOrUpdate", + "description": "Creates or updates a private dns zone group in the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "Parameters supplied to the create or update private dns zone group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups": { + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_List", + "description": "Gets all private dns zone groups in a private endpoint.", + "parameters": [ + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private dns zone group resources.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroupListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + }, + "customDnsConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomDnsConfigPropertiesFormat" + }, + "description": "An array of custom dns configurations." + } + }, + "description": "Properties of the private endpoint." + }, + "CustomDnsConfigPropertiesFormat": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of private ip addresses of the private endpoint." + } + }, + "description": "Contains custom Dns resolution configuration from customer." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "PrivateDnsZoneGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "A list of private dns zone group resources in a private endpoint." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateDnsZoneGroups API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + }, + "PrivateDnsZoneGroup": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZoneGroupPropertiesFormat", + "description": "Properties of the private dns zone group." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private dns zone group resource." + }, + "PrivateDnsZoneGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private dns zone group resource." + }, + "privateDnsZoneConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneConfig" + }, + "description": "A collection of private dns zone configurations of the private dns zone group." + } + }, + "description": "Properties of the private dns zone group." + }, + "PrivateDnsZoneConfig": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZonePropertiesFormat", + "description": "Properties of the private dns zone configuration." + } + }, + "description": "PrivateDnsZoneConfig resource." + }, + "PrivateDnsZonePropertiesFormat": { + "properties": { + "privateDnsZoneId": { + "type": "string", + "description": "The resource id of the private dns zone." + }, + "recordSets": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "A collection of information regarding a recordSet, holding information to identify private resources." + } + }, + "description": "Properties of the private dns zone configuration resource." + }, + "RecordSet": { + "properties": { + "recordType": { + "type": "string", + "description": "Resource record type." + }, + "recordSetName": { + "type": "string", + "description": "Recordset name." + }, + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the recordset." + }, + "ttl": { + "type": "integer", + "description": "Recordset time to live." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private ip address of the private endpoint." + } + }, + "description": "A collective group of information about the record set information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json new file mode 100644 index 000000000000..d0fc0aba4b5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json new file mode 100644 index 000000000000..06226cad617f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json @@ -0,0 +1,545 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json new file mode 100644 index 000000000000..d9ddc457448a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json new file mode 100644 index 000000000000..5418f063905f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json new file mode 100644 index 000000000000..716093c1e8a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json new file mode 100644 index 000000000000..b502ae0724c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/securityPartnerProviders/{securityPartnerProviderName}": { + "delete": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Delete", + "description": "Deletes the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Get", + "description": "Gets the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_CreateOrUpdate", + "description": "Creates or updates the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "Parameters supplied to the create or update Security Partner Provider operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_UpdateTags", + "description": "Updates tags of a Security Partner Provider resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update Security Partner Provider tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Security Partner Provider Tags": { + "$ref": "./examples/SecurityPartnerProviderUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_ListByResourceGroup", + "description": "Lists all Security Partner Providers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given resource group": { + "$ref": "./examples/SecurityPartnerProviderListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_List", + "description": "Gets all the Security Partner Providers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given subscription": { + "$ref": "./examples/SecurityPartnerProviderListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SecurityPartnerProviderPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Security Partner Provider resource." + }, + "securityProviderName": { + "description": "The security provider name.", + "$ref": "#/definitions/SecurityPartnerProvidersecurityProviderName" + }, + "connectionStatus": { + "readOnly": true, + "description": "The connection status with the Security Partner Provider.", + "$ref": "#/definitions/SecurityPartnerProviderConnectionStatus" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the Security Partner Provider belongs." + } + }, + "description": "Properties of the Security Partner Provider." + }, + "SecurityPartnerProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPartnerProviderPropertiesFormat", + "description": "Properties of the Security Partner Provider." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Security Partner Provider resource." + }, + "SecurityPartnerProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "List of Security Partner Providers in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListSecurityPartnerProviders API service call." + }, + "SecurityPartnerProvidersecurityProviderName": { + "type": "string", + "description": "The Security Providers.", + "enum": [ + "ZScaler", + "IBoss", + "Checkpoint" + ], + "x-ms-enum": { + "name": "SecurityProviderName", + "modelAsString": true + } + }, + "SecurityPartnerProviderConnectionStatus": { + "type": "string", + "description": "The current state of the connection with Security Partner Provider.", + "readOnly": true, + "enum": [ + "Unknown", + "PartiallyConnected", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "SecurityPartnerProviderConnectionStatus", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json new file mode 100644 index 000000000000..b3cbee57eca1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..ac84eb485283 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json new file mode 100644 index 000000000000..68343be3accd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json new file mode 100644 index 000000000000..48be72e754ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "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": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json new file mode 100644 index 000000000000..1be3eab44861 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json @@ -0,0 +1,1965 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..7e9d30992a04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json @@ -0,0 +1,3713 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "RadiusServer": { + "properties": { + "radiusServerAddress": { + "type": "string", + "description": "The address of this radius server." + }, + "radiusServerScore": { + "type": "integer", + "format": "int64", + "description": "The initial score assigned to this radius server." + }, + "radiusServerSecret": { + "type": "string", + "description": "The secret used for this radius server." + } + }, + "required": [ + "radiusServerAddress" + ], + "description": "Radius Server Settings." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "#/definitions/RadiusServer" + }, + "description": "The radiusServers property for multiple radius server configuration." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout of this connection in seconds." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json new file mode 100644 index 000000000000..52b6ea41c262 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json new file mode 100644 index 000000000000..29757ec60959 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json new file mode 100644 index 000000000000..5936650661dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json @@ -0,0 +1,5284 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2020-03-01" + }, + "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.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "securityPartnerProvider": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The securityPartnerProvider associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout for a vpn connection in seconds." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/RadiusServer" + }, + "description": "Multiple Radius Server configuration for VpnServerConfiguration." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + }, + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json new file mode 100644 index 000000000000..ea8c20a8b2c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "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 policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. 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/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "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" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group 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": "The managed rule group 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" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json new file mode 100644 index 000000000000..905502f0f3dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationGateway.json @@ -0,0 +1,2847 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + }, + "forceFirewallPolicyAssociation": { + "type": "boolean", + "description": "If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..f81723251c2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableDelegations.json new file mode 100644 index 000000000000..7ac87e5c751a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json new file mode 100644 index 000000000000..5874d8e2ec17 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewall.json new file mode 100644 index 000000000000..8d4bc4cc0cde --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewall.json @@ -0,0 +1,1072 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..aada8aaca526 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/bastionHost.json new file mode 100644 index 000000000000..3dcefbb8735f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json new file mode 100644 index 000000000000..f108a1b91b42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..44ec67029db0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..a70565425a1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/endpointService.json new file mode 100644 index 000000000000..04e669021e9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..777435cf1f07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..c47d2909d537 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..516e39c43082 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..041b2ca9db36 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..eed8e776c6dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..fc35ceb5828a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..e12694c8ea77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..e81e2f57a189 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..b9d9cca0408e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..f39f199c180f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,745 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..454083d67c3a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..75696ffb019f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,259 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..2115e8ef2e1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..5128a5763a3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..61e193e82009 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..61e193e82009 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..cb92f1492f12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..d554e33eb296 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..e63acf070467 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..22f7e8ecb855 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..7ecdc8e07363 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..3362d931e6f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..e666b326cc10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..78a0fa26e162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..ec7f51acf134 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..2f4861d18242 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..b92915e655eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..633ba4cc6ca2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..a3ffe32194c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..9c7935acf6b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..7c092ef63228 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..ed842ad5f591 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..e4c52299eeb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..ae6bae3ce57b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..7e6384be5251 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..9e9f33810603 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..3d03b0655c63 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..9ad4f9e4ffba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..b05138181a5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..e397fdc2085b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..260078127c4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..c264159b0ddb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..1f7993955f21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..f57d5d7fd22f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..9cb09618e4d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..2bcf0ae69873 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..d6083f86f19c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..af68bfb6de18 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..4a2521fb9a83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..fb9548f1769b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..dcea1c387b56 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..bcdfb89be195 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..d8922a4827f7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..f66e77a06b9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..6a5cae57d379 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..5eea7990b6e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..8aecf20f82d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..0a9b50372823 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..695f10456142 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..982f94e780c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..4d7ccd121fca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..f89e44ad8b38 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..c25653ebbc83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..5c04637c0e8c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..917908a06372 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..217ea1aa0710 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..7701ba0b9493 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..ec5dab628cfc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..eaa65418f67c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..3a7532171ffa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..4d2b5e5e1df3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..d9e8f7fbb357 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..11833922fdf4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..a1f8e3eefa38 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..c8e7c9cc8da7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..5ae88fe8fc01 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..fcd8028e9274 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..d3d5fe4ddd36 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..460b64210afc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..e6fbccc746f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..7f2d95114b64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..b98e84566697 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..70eb9ae08ee3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..e9211056765e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..a5cb03d5b472 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..e4e9d0d1ab93 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..f385cd080d57 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..197fb4d3b2ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..3b423af3ee7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..d9cd6ac93cc5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..3e4c608b9f65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..1cdb3944d381 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..670613b0ebbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..923c9e30cd7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..dedc1a498387 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..273f22fe6f86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..a39f5260ea2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..2d6f1b38be2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..e17b6dc1f940 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..282057cb67bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..34545e245bbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..887851d8201b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..d9ea3cc02e2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..30385fcc348b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..f9225d693cca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..f62a1aa82563 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..147876b2d723 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..3906bf856fbf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..7b0606223327 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..60ec8ecfaca3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..dd47761ea9db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..136413579eee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..37fb24d5c66d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..6da444f3aba9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-04-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..dd6964ce18ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..259f2e276c78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..9f3ef7b8ede9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..97dff763334f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..63c9cdafbad9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..2022a2b91b99 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..cc357ec8a5b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..4f9ad8383818 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..a224600c44ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..cfb980c46385 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..3909f4fc111d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..de5302cc8333 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..9fe12e60b040 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..47f2351be537 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..c72ff8ebd9ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..8a421824c56a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..56eaf31f0a3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..3e875746a5a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..2e88afffbc7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..029a12c66d91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..2bd4cd7764cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyPut.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..bb6ea2861c79 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..20ff78afa014 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..77387a16a419 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..80255afbeb05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..804922700943 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json new file mode 100644 index 000000000000..37ab5e2c100f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..0b0bc9744e71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..e886de7bedc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..fa42cf4add9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableDelete.json new file mode 100644 index 000000000000..f7079e041429 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableGet.json new file mode 100644 index 000000000000..c2bc243e9467 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableList.json new file mode 100644 index 000000000000..097cd3fd2f9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTableList.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "hubRouteTable1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1a", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + }, + { + "name": "hubRouteTable2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route2a", + "destinationType": "CIDR", + "destinations": [ + "40.0.0.0/8", + "50.0.0.0/8", + "60.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubVirtualNetworkConnections/vn1" + } + ], + "labels": [ + "label3" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn4" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn2", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn1" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTablePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTablePut.json new file mode 100644 index 000000000000..70a2bb93a795 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubRouteTablePut.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "routeTableParameters": { + "properties": { + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..385982149f78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..72c316de766e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..13e441bcdd7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..0ecc580393c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..e1dc641fe68f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..5f9d6794c9ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationCreate.json new file mode 100644 index 000000000000..b0c25aa85281 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "parameters": { + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + }, + "201": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationDelete.json new file mode 100644 index 000000000000..bf61c3a5d6f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationGet.json new file mode 100644 index 000000000000..0cddc5ed4898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationList.json new file mode 100644 index 000000000000..e6413829b0a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationListByResourceGroup.json new file mode 100644 index 000000000000..311703162294 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationUpdateTags.json new file mode 100644 index 000000000000..c07d1b711535 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpAllocationUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "location": "centraluseuap", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..e39cbb4a9817 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..fb7c7d860b5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..49185c6c5a1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..cbf9da2cae53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..effa799a2931 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..57290f4ac609 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-04-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json new file mode 100644 index 000000000000..669f9596cc67 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json new file mode 100644 index 000000000000..b5046815c4fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json new file mode 100644 index 000000000000..e22d438644be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-04-01", + "parameters": { + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + }, + "201": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPutWithNICIPConfiguration.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPutWithNICIPConfiguration.json new file mode 100644 index 000000000000..a4adbda522a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LBBackendAddressPoolWithBackendAddressesPutWithNICIPConfiguration.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-04-01", + "parameters": { + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig1" + } + } + }, + { + "name": "address2", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig2" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig1" + } + } + }, + { + "name": "address2", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig2" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig1" + } + } + }, + { + "name": "address2", + "properties": { + "networkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/vnetlb/ipConfigurations/ipconfig2" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolDelete.json new file mode 100644 index 000000000000..9521fbc5da0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..1aa9eeb5e950 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..6f220cade1c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..51da6ec91a03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..c83f54083aea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..77815067469b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..8b96231a1984 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..3b81ff21f8f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..ff5aea264625 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..b76367a15c73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..15b74871ba8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..58ddc351d010 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..6fb5082d420e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..a2e9f519eda2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..3dc0a3e4fe66 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..890eda23e48d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..190d5a63b327 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..962faa8af169 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..9870e7593850 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..4d6e061b22b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..c44fc5b86a3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..0d36b49eb6c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..9544856406cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..1e6878d13b8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..e2b6eabc9815 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..b1a2b24cb46f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..14500c20f4b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..d594fa1e6b16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..34d1d8adf226 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..706571fa4e5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..5dcbbc9756c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..3909b7f80d28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..5a9fda1c761c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..c7efbd9244ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..234cd4b867cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..1118e2497188 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..3df46ca87d37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..ba75989ddbf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..c44ecdc39c5f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..c07d77871443 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..7e920ec47a30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..ee678bb145b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..81756067a2eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..f2be09f82b0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..3a2482cc2111 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-04-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..4bdf40de0b6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..0911c60a1ecd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..0e9429c4f436 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..6e30429a4e8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..388e5d37a13b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..157a9dedb828 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..aa199329b4da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..f4a713b49c6a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..eb79186504e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..6fc979124d51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..06e42cc0eb00 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..22ade19a4040 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..67029e20d49d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..2bb834154c45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..28aa774b7eda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..9d25036f9838 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..963c6fc30ef4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..099b57d0d435 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..0c181ef14ee6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..342a59b67d07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..85013fa86745 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..fc7645c73ccb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..97feae136b9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..998f5fc75a93 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..d02d5bd4b85d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..da7b17e06895 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..95dad2180398 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..75c888c5818b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..36b97be99690 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..18d18471a7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..c5ddfe8cd918 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..b117ecd00b61 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..38a260ff3ed7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..501421ad613e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..2113f8bd378c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..78ef211c1439 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..78ef211c1439 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..24d917428802 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..0359fd12d6a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..87be46cb4596 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..eba9e6d30303 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..fdca4135051e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..21929cbf8979 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..9381efe60179 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..c0b1f7999f42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..a377cae5e0ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..a1f1fea36b8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..5e17625c2444 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..625e185b0afa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..24d7df889543 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..2e249f5ba6bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..a5f90608b8ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..58b0fc5613a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..7839c2c5b02f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..3fde0234b3f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..62eb12b93a58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..e8ce49e9cfd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..c15522716e06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..fef676370b5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..2c4913cb30c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..59b5d0feb572 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..58601a30335b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..d5b7c02de7a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..06ba512963f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..fedc3bb9c0e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/OperationList.json new file mode 100644 index 000000000000..6c79011d1870 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..f4def299d86c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..9e61cfeb306c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..25ab4422254f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..89134a563d71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..547339943920 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2020-04-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..51239a91c833 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..20c154092c86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..3770a9117566 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..0b971bd908c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..cf22b77f390c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2020-04-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..10462b162c04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..612afc261a00 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..29c81d222b01 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..c1717434c10e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..2dd1d99a1aa4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupCreate.json new file mode 100644 index 000000000000..fb6a2ddc02d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupCreate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup", + "parameters": { + "properties": { + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupDelete.json new file mode 100644 index 000000000000..01c315411754 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupGet.json new file mode 100644 index 000000000000..44c50a031557 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + }, + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupList.json new file mode 100644 index 000000000000..f18fd05c89b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointDnsZoneGroupList.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPdnsgroup1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup1", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + }, + { + "name": "testPdnsgroup2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup2", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc3", + "fqdn": "abc3.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc4", + "fqdn": "abc4.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..7e76c51a283b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..a3a9effcbdfe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..7adc55df8e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointList.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.7" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..69ed126fd24b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.5" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc5.cosmos2.com", + "ipAddresses": [ + "192.168.0.7" + ] + }, + { + "fqdn": "abc6.cosmos2.com", + "ipAddresses": [ + "192.168.0.8" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..b596b50c5904 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..79b36df6a117 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..7565d408f79f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..28edc51f1d5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..dd3c36f63637 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..fd6b0df77bda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..96a64394dc3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..6e097ee62e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..256508df74a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..d806c1ed618b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..958b04da8dbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..b2b65f5055b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..540ae0822d0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..b046e26c3d75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..ff524a38c579 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..9f796fff54dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..1172c72c7078 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..1a31ef712db0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..c12161513664 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..2b13de376fd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..7bac94d209a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..e3bd8899c93a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..2aacdfab7af9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..7fdf2e3722ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..04ff92eebf47 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..5fb0bcfa14d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..b35f267cd475 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..fc770b855b59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..dc754e7c9305 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..62f911653e16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..ed0320afa245 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..d76d37251a8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..a692fbbc8fa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..71d2af52db4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..6e172b703a0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..183c9d773a75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..046a3082da0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..307ab2052d8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableList.json new file mode 100644 index 000000000000..1e13db7fb7a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..c68fe60618d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..89fc98d82ef9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..8476a81401cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..6438de58baae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..5e2ccde28fef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..57ddcd3b41d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderDelete.json new file mode 100644 index 000000000000..6d0f519cee44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderGet.json new file mode 100644 index 000000000000..6e78e1dfa65c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListByResourceGroup.json new file mode 100644 index 000000000000..04bcf4c482e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListByResourceGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListBySubscription.json new file mode 100644 index 000000000000..f090a6104e09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderListBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderPut.json new file mode 100644 index 000000000000..bc9e73d4b3f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "201": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderUpdateTags.json new file mode 100644 index 000000000000..47ddadecca9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SecurityPartnerProviderUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..0193b207c7c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..00c5e00f281f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..1d1809e0862b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..ccc486e0724d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..23064c565fd3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..788d979d135b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..c8a4304c8133 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..00087534d0c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..255ef69faf89 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..512b05b3ae30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..4d6dbe9603c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..ec0ddad4a2a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..eaf817c127d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..db35c0772581 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..dbd379348c34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..d8b729f0b855 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..798a1255e46f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGet.json new file mode 100644 index 000000000000..1272f1479a6a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..97143e866f42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetList.json new file mode 100644 index 000000000000..e5be4f6236d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..fcea394fba90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..bcf057f75927 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageList.json new file mode 100644 index 000000000000..4d209e7dbaca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..d71424c8ec14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..5803d4a3871b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..b47023358c3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..05f3967272d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubList.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..eb97f16ee7f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,221 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..724d2090a1a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..ce37c18f1719 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..407e687096f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..20a5b4fdee0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..46a82b7940e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..a9792b169096 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..9043189f1add --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..803f0f4a3fba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..0570cf51c13b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..b7ca84cc1d86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..e730a428336f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..ccbdbeee73cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..016edca482dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..55ccfbcc5497 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..977479aa23d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..85622574c898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..8d3ef14ef995 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..f688b1681cd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..26e67bbb93d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..30018b66e8b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..94ab644fcf12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..2c60c8953fd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..786a28244bf4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..1d7bd168fa2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..02be2968855f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..b259dd7c3065 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 20, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..6f5ea20bf06c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..38ed9d91854b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..f79cc3c4c567 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..d1a81751b88b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.1.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..040cbc8dc418 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..0fb9f1b8811f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..061b56b1c1fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..6646cecb62a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..14e82f84fa3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..0fb9f1b8811f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..2c310b70e2b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..7b5b01b84389 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..276bbc04fb5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..9f597ebb3874 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..657acbdc4762 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..69528e445129 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..d6ebedb15815 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..1268ff41e660 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..ba6494950eb4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20, + "radiusServerSecret": "radiusServerSecret" + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..0a961a06d24e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..aa028def6c28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..7fb03c1d7698 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2020-04-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..cf7ce2e8d37a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..60659506c1ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..d2abf8e7b8af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..46d29e968be0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..3d8b83972193 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..d7dbcdd97088 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..d22f91049e90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..158fb6d2b77e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..45d25a6a70df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..7e9d301a8eac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..395bdfb00fd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..4cc16944c40d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..bda27625e540 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..6e988ed8147d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..5f707de223d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..c378619a1fbf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..78eb7f867735 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..5090b857c91b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..5a8e16a70231 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..a4ce667844f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..8fee88465929 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..a0df0b747714 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..4ba0bfa496e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..69f00e30e06d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..2eb45df8fb58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..c8b34a26299d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..9e4de3997ee5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..cb9b29f3c482 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..1a3589f9c50a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..4046b51e27a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..ce489f1a4daa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..7196ac8894ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..9759fec48ae6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..f4a6608865a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..2bed5debdb8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..fed204043593 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..ae8439072307 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..62d2cbc4069b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionGet.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..678ac086f27d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionList.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..b7e52922aa6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnConnectionPut.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..84fe7eefc58e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..3d5f4b9e7aa0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayGet.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..62867369a3f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayList.json @@ -0,0 +1,187 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..62867369a3f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,187 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..61bcb523d660 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayPut.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..fd470c59e9e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayReset.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..95f5d695fa28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..72239d97fa79 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..fb7b5ede2026 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..8fc2f58e3f42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..319616f3a717 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..9e37c6f766ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25, + "radiusServerSecret": "radiusServerSecret" + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..7b6130abb187 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..255a71bb93e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..3f9e2f7e5c82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..21fe8740db46 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..36b8c55e57ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..84b4dbf1a785 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..dcfcaa05b9fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..5b2805440b02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..3cdab3ee5ddf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..a6f02855708a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitePut.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..0aff8b4ccf02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..6d7ad791f919 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..ec4583470696 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..35196abc8da0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..c378d8f673fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..fbb29b09b644 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..61148786db69 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2020-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json new file mode 100644 index 000000000000..852bec8dc831 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./virtualWan.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..40cef29badf0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2020-04-01" + }, + "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.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRoutePort.json new file mode 100644 index 000000000000..569aa287f4ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/expressRoutePort.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/firewallPolicy.json new file mode 100644 index 000000000000..e411a402a296 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/firewallPolicy.json @@ -0,0 +1,1188 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + }, + "Get FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + }, + "Create FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + }, + "List all FirewallPolicyRuleGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the firewall policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + }, + "threatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "$ref": "#/definitions/FirewallPolicyThreatIntelWhitelist" + }, + "intrusionSystemMode": { + "description": "The operation mode for Intrusion system.", + "$ref": "#/definitions/FirewallPolicyIntrusionSystemMode" + }, + "transportSecurity": { + "description": "TLS Configuration definition.", + "$ref": "#/definitions/FirewallPolicyTransportSecurity" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyTransportSecurity": { + "properties": { + "certificateAuthority": { + "$ref": "#/definitions/FirewallPolicyCertificateAuthority", + "description": "The CA used for intermediate CA generation." + }, + "excludedDomains": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of domains which are excluded from TLS termination." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyTrustedRootCertificate", + "description": "A list of certificates which are to be trusted by the firewall." + }, + "description": "Certificates which are to be trusted by the firewall." + } + }, + "description": "Configuration needed to perform TLS termination & initiation." + }, + "FirewallPolicyTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyTrustedRootCertificatePropertiesFormat", + "description": "Properties of the trusted root authorities." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within a firewall policy." + } + }, + "description": "Trusted Root certificates of a firewall policy." + }, + "FirewallPolicyTrustedRootCertificatePropertiesFormat": { + "properties": { + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) the public certificate data stored in KeyVault." + } + }, + "description": "Trusted Root certificates properties for tls." + }, + "FirewallPolicyCertificateAuthority": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyCertificateAuthorityPropertiesFormat", + "description": "Properties of the certificate authority." + }, + "name": { + "type": "string", + "description": "Name of the CA certificate." + } + }, + "description": "Trusted Root certificates properties for tls." + }, + "FirewallPolicyCertificateAuthorityPropertiesFormat": { + "properties": { + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + } + }, + "description": "Trusted Root certificates properties for tls." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition", + "NatRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetUrls": { + "type": "array", + "description": "List of Urls for this rule condition.", + "items": { + "type": "string" + } + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NatRuleCondition": { + "description": "Rule condition of type nat.", + "x-ms-discriminator-value": "NatRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "terminateTLS": { + "type": "boolean", + "description": "Terminate TLS connections for this rule." + } + } + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + }, + "FirewallPolicyIntrusionSystemMode": { + "type": "string", + "description": "The operation mode for Intrusion system mode.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionSystemMode", + "modelAsString": true + } + }, + "FirewallPolicyThreatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "x-ms-discriminator-value": "FirewallPolicyThreatIntelWhitelist", + "properties": { + "ipAddresses": { + "type": "array", + "description": "List of IP addresses for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + }, + "fqdns": { + "type": "array", + "description": "List of FQDNs for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipAllocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipAllocation.json new file mode 100644 index 000000000000..8d4e5f3f89cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipAllocation.json @@ -0,0 +1,454 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/IpAllocations/{ipAllocationName}": { + "delete": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Delete", + "description": "Deletes the specified IpAllocation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete IpAllocation": { + "$ref": "./examples/IpAllocationDelete.json" + } + } + }, + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Get", + "description": "Gets the specified IpAllocation by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get IpAllocation": { + "$ref": "./examples/IpAllocationGet.json" + } + } + }, + "put": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_CreateOrUpdate", + "description": "Creates or updates an IpAllocation in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create IpAllocation": { + "$ref": "./examples/IpAllocationCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_UpdateTags", + "description": "Updates a IpAllocation tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update IpAllocation tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/IpAllocationUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_List", + "description": "Gets all IpAllocations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all IpAllocations": { + "$ref": "./examples/IpAllocationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_ListByResourceGroup", + "description": "Gets all IpAllocations in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List IpAllocations in resource group": { + "$ref": "./examples/IpAllocationListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpAllocationPropertiesFormat": { + "properties": { + "subnet": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet that using the prefix of this IpAllocation resource." + }, + "virtualNetwork": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualNetwork that using the prefix of this IpAllocation resource." + }, + "type": { + "$ref": "#/definitions/IpAllocationType", + "description": "The type for the IpAllocation." + }, + "prefix": { + "type": "string", + "description": "The address prefix for the IpAllocation." + }, + "prefixLength": { + "type": "integer", + "x-nullable": true, + "default": 0, + "description": "The address prefix length for the IpAllocation." + }, + "prefixType": { + "$ref": "./network.json#/definitions/IPVersion", + "default": null, + "description": "The address prefix Type for the IpAllocation." + }, + "ipamAllocationId": { + "type": "string", + "description": "The IPAM allocation ID." + }, + "allocationTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IpAllocation tags." + } + }, + "description": "Properties of the IpAllocation." + }, + "IpAllocation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpAllocationPropertiesFormat", + "description": "Properties of the IpAllocation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "IpAllocation resource." + }, + "IpAllocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "A list of IpAllocation resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListIpAllocations API service call." + }, + "IpAllocationType": { + "type": "string", + "description": "IpAllocation type.", + "enum": [ + "Undefined", + "Hypernet" + ], + "x-ms-enum": { + "name": "IpAllocationType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipGroups.json new file mode 100644 index 000000000000..0aab5646efda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/loadBalancer.json new file mode 100644 index 000000000000..1fc7d526fa52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/loadBalancer.json @@ -0,0 +1,2242 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + }, + "Load balancer with BackendAddressPool containing BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + }, + "LoadBalancer with BackendAddressPool with BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_CreateOrUpdate", + "description": "Creates or updates a load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Parameters supplied to the create or update load balancer backend address pool operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer backend pool with backend addresses containing virtual network and IP address.": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesPut.json" + }, + "Update load balancer backend pool with backend addresses containing virtual network and IP address defined in network interfaces.": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesPutWithNICIPConfiguration.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Delete", + "description": "Deletes the specified load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "BackendAddressPoolDelete": { + "$ref": "./examples/LoadBalancerBackendAddressPoolDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "LoadBalancerBackendAddressPropertiesFormat": { + "properties": { + "virtualNetwork": { + "$ref": "./virtualNetwork.json#/definitions/VirtualNetwork", + "description": "Reference to an existing virtual network." + }, + "ipAddress": { + "type": "string", + "description": "IP Address belonging to the referenced virtual network.", + "x-ms-azure-resource": false + }, + "networkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP address defined in network interfaces." + } + }, + "description": "Properties of the load balancer backend addresses." + }, + "LoadBalancerBackendAddress": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerBackendAddressPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address." + } + }, + "description": "Load balancer backend addresses." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancerBackendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerBackendAddress" + }, + "description": "An array of backend addresses." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/natGateway.json new file mode 100644 index 000000000000..55308337e3df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/network.json new file mode 100644 index 000000000000..193f61f6f252 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkInterface.json new file mode 100644 index 000000000000..b1d28cae15bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkProfile.json new file mode 100644 index 000000000000..3b816a5b6734 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json new file mode 100644 index 000000000000..f88b65dba7ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..f94cf1dac492 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkWatcher.json new file mode 100644 index 000000000000..67cffe6f8488 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/networkWatcher.json @@ -0,0 +1,4446 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "number", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/operation.json new file mode 100644 index 000000000000..fd5dc846a197 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network 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 Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateEndpoint.json new file mode 100644 index 000000000000..01b0643da66e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateEndpoint.json @@ -0,0 +1,963 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups/{privateDnsZoneGroupName}": { + "delete": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Delete", + "description": "Deletes the specified private dns zone group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Get", + "description": "Gets the private dns zone group resource by specified private dns zone group name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting privateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_CreateOrUpdate", + "description": "Creates or updates a private dns zone group in the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "Parameters supplied to the create or update private dns zone group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups": { + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_List", + "description": "Gets all private dns zone groups in a private endpoint.", + "parameters": [ + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private dns zone group resources.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroupListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + }, + "customDnsConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomDnsConfigPropertiesFormat" + }, + "description": "An array of custom dns configurations." + } + }, + "description": "Properties of the private endpoint." + }, + "CustomDnsConfigPropertiesFormat": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of private ip addresses of the private endpoint." + } + }, + "description": "Contains custom Dns resolution configuration from customer." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "PrivateDnsZoneGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "A list of private dns zone group resources in a private endpoint." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateDnsZoneGroups API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + }, + "PrivateDnsZoneGroup": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZoneGroupPropertiesFormat", + "description": "Properties of the private dns zone group." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private dns zone group resource." + }, + "PrivateDnsZoneGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private dns zone group resource." + }, + "privateDnsZoneConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneConfig" + }, + "description": "A collection of private dns zone configurations of the private dns zone group." + } + }, + "description": "Properties of the private dns zone group." + }, + "PrivateDnsZoneConfig": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZonePropertiesFormat", + "description": "Properties of the private dns zone configuration." + } + }, + "description": "PrivateDnsZoneConfig resource." + }, + "PrivateDnsZonePropertiesFormat": { + "properties": { + "privateDnsZoneId": { + "type": "string", + "description": "The resource id of the private dns zone." + }, + "recordSets": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "A collection of information regarding a recordSet, holding information to identify private resources." + } + }, + "description": "Properties of the private dns zone configuration resource." + }, + "RecordSet": { + "properties": { + "recordType": { + "type": "string", + "description": "Resource record type." + }, + "recordSetName": { + "type": "string", + "description": "Recordset name." + }, + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the recordset." + }, + "ttl": { + "type": "integer", + "description": "Recordset time to live." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private ip address of the private endpoint." + } + }, + "description": "A collective group of information about the record set information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateLinkService.json new file mode 100644 index 000000000000..9af7deeed685 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpAddress.json new file mode 100644 index 000000000000..beab7f587408 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpAddress.json @@ -0,0 +1,545 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json new file mode 100644 index 000000000000..4a4d0acc2fc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeFilter.json new file mode 100644 index 000000000000..ca4d8440ef33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeTable.json new file mode 100644 index 000000000000..37a95c9b0c0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json new file mode 100644 index 000000000000..1fab0ec03613 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/securityPartnerProviders/{securityPartnerProviderName}": { + "delete": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Delete", + "description": "Deletes the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Get", + "description": "Gets the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_CreateOrUpdate", + "description": "Creates or updates the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "Parameters supplied to the create or update Security Partner Provider operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_UpdateTags", + "description": "Updates tags of a Security Partner Provider resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update Security Partner Provider tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Security Partner Provider Tags": { + "$ref": "./examples/SecurityPartnerProviderUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_ListByResourceGroup", + "description": "Lists all Security Partner Providers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given resource group": { + "$ref": "./examples/SecurityPartnerProviderListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_List", + "description": "Gets all the Security Partner Providers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given subscription": { + "$ref": "./examples/SecurityPartnerProviderListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SecurityPartnerProviderPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Security Partner Provider resource." + }, + "securityProviderName": { + "description": "The security provider name.", + "$ref": "#/definitions/SecurityPartnerProvidersecurityProviderName" + }, + "connectionStatus": { + "readOnly": true, + "description": "The connection status with the Security Partner Provider.", + "$ref": "#/definitions/SecurityPartnerProviderConnectionStatus" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the Security Partner Provider belongs." + } + }, + "description": "Properties of the Security Partner Provider." + }, + "SecurityPartnerProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPartnerProviderPropertiesFormat", + "description": "Properties of the Security Partner Provider." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Security Partner Provider resource." + }, + "SecurityPartnerProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "List of Security Partner Providers in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListSecurityPartnerProviders API service call." + }, + "SecurityPartnerProvidersecurityProviderName": { + "type": "string", + "description": "The Security Providers.", + "enum": [ + "ZScaler", + "IBoss", + "Checkpoint" + ], + "x-ms-enum": { + "name": "SecurityProviderName", + "modelAsString": true + } + }, + "SecurityPartnerProviderConnectionStatus": { + "type": "string", + "description": "The current state of the connection with Security Partner Provider.", + "readOnly": true, + "enum": [ + "Unknown", + "PartiallyConnected", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "SecurityPartnerProviderConnectionStatus", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceCommunity.json new file mode 100644 index 000000000000..70c8a298218a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..facfa761da72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceTags.json new file mode 100644 index 000000000000..89889f76ecdc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/usage.json new file mode 100644 index 000000000000..8d4366345b37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "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": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetwork.json new file mode 100644 index 000000000000..c10781c98fd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetwork.json @@ -0,0 +1,1965 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..dc1f5ba92faf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json @@ -0,0 +1,3717 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "RadiusServer": { + "properties": { + "radiusServerAddress": { + "type": "string", + "description": "The address of this radius server." + }, + "radiusServerScore": { + "type": "integer", + "format": "int64", + "description": "The initial score assigned to this radius server." + }, + "radiusServerSecret": { + "type": "string", + "description": "The secret used for this radius server." + } + }, + "required": [ + "radiusServerAddress" + ], + "description": "Radius Server Settings." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "#/definitions/RadiusServer" + }, + "description": "The radiusServers property for multiple radius server configuration." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int64", + "readOnly": true, + "minimum": 0, + "maximum": 4294967295, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout of this connection in seconds." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json new file mode 100644 index 000000000000..abe1f1be36d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualRouter.json new file mode 100644 index 000000000000..a6564f141830 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-04-01" + }, + "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.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualWan.json new file mode 100644 index 000000000000..3062c1da736d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/virtualWan.json @@ -0,0 +1,5722 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2020-04-01" + }, + "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.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables/{routeTableName}": { + "put": { + "operationId": "HubRouteTables_CreateOrUpdate", + "x-ms-examples": { + "RouteTablePut": { + "$ref": "./examples/HubRouteTablePut.json" + } + }, + "description": "Creates a RouteTable resource if it doesn't exist else updates the existing RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "routeTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "Parameters supplied to create or update RouteTable." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "operationId": "HubRouteTables_Get", + "x-ms-examples": { + "RouteTableGet": { + "$ref": "./examples/HubRouteTableGet.json" + } + }, + "description": "Retrieves the details of a RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable retrieved.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "HubRouteTables_Delete", + "x-ms-examples": { + "RouteTableDelete": { + "$ref": "./examples/HubRouteTableDelete.json" + } + }, + "description": "Deletes a RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the RouteTable." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. RouteTable deleted." + }, + "202": { + "description": "Request received successfully. RouteTable deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No RouteTables exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables": { + "get": { + "operationId": "HubRouteTables_List", + "x-ms-examples": { + "RouteTableList": { + "$ref": "./examples/HubRouteTableList.json" + } + }, + "description": "Retrieves the details of all RouteTables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the RouteTables for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubRouteTablesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "securityPartnerProvider": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The securityPartnerProvider associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout for a vpn connection in seconds." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubRouteTableProperties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/HubRoute" + } + }, + "labels": { + "type": "array", + "description": "List of labels associated with this route table.", + "items": { + "type": "string" + } + }, + "associatedConnections": { + "type": "array", + "description": "List of all connections associated with this route table.", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "propagatingConnections": { + "type": "array", + "description": "List of all connections that advertise to this route table.", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the RouteTable resource." + } + }, + "description": "Parameters for RouteTable." + }, + "HubRouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubRouteTableProperties", + "description": "Properties of the RouteTable resource." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "RouteTable resource in a virtual hub." + }, + "HubRoute": { + "required": [ + "name", + "destinationType", + "destinations", + "nextHopType", + "nextHop" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the Route that is unique within a RouteTable. This name can be used to access this route." + }, + "destinationType": { + "type": "string", + "description": "The type of destinations (eg: CIDR, ResourceId, Service)." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hop (eg: ResourceId)." + }, + "nextHop": { + "type": "string", + "description": "NextHop resource ID." + } + }, + "description": "RouteTable route." + }, + "ListHubRouteTablesResult": { + "description": "List of RouteTables and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "List of RouteTables." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/RadiusServer" + }, + "description": "Multiple Radius Server configuration for VpnServerConfiguration." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + }, + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + }, + "RoutingConfiguration": { + "description": "Routing Configuration indicating the associated and propagated route tables for this connection.", + "properties": { + "associatedRouteTable": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The resource id RouteTable associated with this RoutingConfiguration." + }, + "propagatedRouteTables": { + "$ref": "#/definitions/PropagatedRouteTable", + "description": "The list of RouteTables to advertise the routes to." + }, + "vnetRoutes": { + "$ref": "#/definitions/VnetRoute", + "description": "List of routes that control routing from VirtualHub into a virtual network connection." + } + } + }, + "PropagatedRouteTable": { + "description": "The list of RouteTables to advertise the routes to.", + "properties": { + "labels": { + "type": "array", + "description": "The list of labels.", + "items": { + "type": "string" + } + }, + "ids": { + "type": "array", + "description": "The list of resource ids of all the RouteTables.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + } + }, + "VnetRoute": { + "description": "List of routes that control routing from VirtualHub into a virtual network connection.", + "properties": { + "staticRoutes": { + "type": "array", + "description": "List of all Static Routes.", + "items": { + "$ref": "#/definitions/StaticRoute" + } + } + } + }, + "StaticRoute": { + "description": "List of all Static Routes.", + "properties": { + "name": { + "type": "string", + "description": "The name of the StaticRoute that is unique within a VnetRoute." + }, + "addressPrefixes": { + "type": "array", + "description": "List of all address prefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "The ip address of the next hop." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json new file mode 100644 index 000000000000..64f860dba111 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "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 policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. 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/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "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" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group 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": "The managed rule group 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" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.go.md b/specification/network/resource-manager/readme.go.md index 462ea5427069..a1304cfb2ee8 100644 --- a/specification/network/resource-manager/readme.go.md +++ b/specification/network/resource-manager/readme.go.md @@ -13,6 +13,8 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 + - tag: package-2019-12 - tag: package-2019-11 - tag: package-2019-09 - tag: package-2019-08 @@ -43,6 +45,33 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2020-04 and go + +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-01/$(namespace) +``` + +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + +### Tag: package-2019-12 and go + +These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(namespace) +``` + ### Tag: package-2019-11 and go These settings apply only when `--tag=package-2019-11 --go` is specified on the command line. diff --git a/specification/network/resource-manager/readme.java.md b/specification/network/resource-manager/readme.java.md index 605a36c2ce86..2c46f72efaf5 100644 --- a/specification/network/resource-manager/readme.java.md +++ b/specification/network/resource-manager/readme.java.md @@ -16,6 +16,8 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-network ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04 + - tag: package-2020-03 - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 @@ -24,6 +26,32 @@ batch: - tag: package-2019-02 ``` +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/network/mgmt-v2020_04_01 + regenerate-manager: true + generate-interface: true +``` + +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/network/mgmt-v2020_03_01 + regenerate-manager: true + generate-interface: true +``` + ### Tag: package-2019-09 and java These settings apply only when `--tag=package-2019-09 --java` is specified on the command line. diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index a82785fb784f..d1b7dc95d0ab 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,172 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2019-11 +tag: package-2020-04 ``` +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +```yaml $(tag) == 'package-2020-04' +input-file: + - Microsoft.Network/stable/2020-04-01/applicationGateway.json + - Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2020-04-01/availableDelegations.json + - Microsoft.Network/stable/2020-04-01/availableServiceAliases.json + - Microsoft.Network/stable/2020-04-01/azureFirewall.json + - Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2020-04-01/bastionHost.json + - Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json + - Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2020-04-01/endpointService.json + - Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json + - Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2020-04-01/expressRoutePort.json + - Microsoft.Network/stable/2020-04-01/firewallPolicy.json + - Microsoft.Network/stable/2020-04-01/ipAllocation.json + - Microsoft.Network/stable/2020-04-01/ipGroups.json + - Microsoft.Network/stable/2020-04-01/loadBalancer.json + - Microsoft.Network/stable/2020-04-01/natGateway.json + - Microsoft.Network/stable/2020-04-01/network.json + - Microsoft.Network/stable/2020-04-01/networkInterface.json + - Microsoft.Network/stable/2020-04-01/networkProfile.json + - Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json + - Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2020-04-01/networkWatcher.json + - Microsoft.Network/stable/2020-04-01/operation.json + - Microsoft.Network/stable/2020-04-01/privateEndpoint.json + - Microsoft.Network/stable/2020-04-01/privateLinkService.json + - Microsoft.Network/stable/2020-04-01/publicIpAddress.json + - Microsoft.Network/stable/2020-04-01/publicIpPrefix.json + - Microsoft.Network/stable/2020-04-01/routeFilter.json + - Microsoft.Network/stable/2020-04-01/routeTable.json + - Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json + - Microsoft.Network/stable/2020-04-01/serviceCommunity.json + - Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2020-04-01/serviceTags.json + - Microsoft.Network/stable/2020-04-01/usage.json + - Microsoft.Network/stable/2020-04-01/virtualNetwork.json + - Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json + - Microsoft.Network/stable/2020-04-01/virtualRouter.json + - Microsoft.Network/stable/2020-04-01/virtualWan.json + - Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json +``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.Network/stable/2020-03-01/applicationGateway.json + - Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2020-03-01/availableDelegations.json + - Microsoft.Network/stable/2020-03-01/availableServiceAliases.json + - Microsoft.Network/stable/2020-03-01/azureFirewall.json + - Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2020-03-01/bastionHost.json + - Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json + - Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2020-03-01/endpointService.json + - Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json + - Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2020-03-01/expressRoutePort.json + - Microsoft.Network/stable/2020-03-01/firewallPolicy.json + - Microsoft.Network/stable/2020-03-01/ipAllocation.json + - Microsoft.Network/stable/2020-03-01/ipGroups.json + - Microsoft.Network/stable/2020-03-01/loadBalancer.json + - Microsoft.Network/stable/2020-03-01/natGateway.json + - Microsoft.Network/stable/2020-03-01/network.json + - Microsoft.Network/stable/2020-03-01/networkInterface.json + - Microsoft.Network/stable/2020-03-01/networkProfile.json + - Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json + - Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2020-03-01/networkWatcher.json + - Microsoft.Network/stable/2020-03-01/operation.json + - Microsoft.Network/stable/2020-03-01/privateEndpoint.json + - Microsoft.Network/stable/2020-03-01/privateLinkService.json + - Microsoft.Network/stable/2020-03-01/publicIpAddress.json + - Microsoft.Network/stable/2020-03-01/publicIpPrefix.json + - Microsoft.Network/stable/2020-03-01/routeFilter.json + - Microsoft.Network/stable/2020-03-01/routeTable.json + - Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json + - Microsoft.Network/stable/2020-03-01/serviceCommunity.json + - Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2020-03-01/serviceTags.json + - Microsoft.Network/stable/2020-03-01/usage.json + - Microsoft.Network/stable/2020-03-01/virtualNetwork.json + - Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json + - Microsoft.Network/stable/2020-03-01/virtualRouter.json + - Microsoft.Network/stable/2020-03-01/virtualWan.json + - Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json +``` + +### Tag: package-2019-12 + +These settings apply only when `--tag=package-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12' +input-file: + - Microsoft.Network/stable/2019-12-01/applicationGateway.json + - Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2019-12-01/availableDelegations.json + - Microsoft.Network/stable/2019-12-01/availableServiceAliases.json + - Microsoft.Network/stable/2019-12-01/azureFirewall.json + - Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2019-12-01/bastionHost.json + - Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json + - Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2019-12-01/endpointService.json + - Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json + - Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2019-12-01/expressRouteGateway.json + - Microsoft.Network/stable/2019-12-01/expressRoutePort.json + - Microsoft.Network/stable/2019-12-01/firewallPolicy.json + - Microsoft.Network/stable/2019-12-01/ipGroups.json + - Microsoft.Network/stable/2019-12-01/loadBalancer.json + - Microsoft.Network/stable/2019-12-01/natGateway.json + - Microsoft.Network/stable/2019-12-01/network.json + - Microsoft.Network/stable/2019-12-01/networkInterface.json + - Microsoft.Network/stable/2019-12-01/networkProfile.json + - Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json + - Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2019-12-01/networkWatcher.json + - Microsoft.Network/stable/2019-12-01/operation.json + - Microsoft.Network/stable/2019-12-01/privateEndpoint.json + - Microsoft.Network/stable/2019-12-01/privateLinkService.json + - Microsoft.Network/stable/2019-12-01/publicIpAddress.json + - Microsoft.Network/stable/2019-12-01/publicIpPrefix.json + - Microsoft.Network/stable/2019-12-01/routeFilter.json + - Microsoft.Network/stable/2019-12-01/routeTable.json + - Microsoft.Network/stable/2019-12-01/serviceCommunity.json + - Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2019-12-01/serviceTags.json + - Microsoft.Network/stable/2019-12-01/usage.json + - Microsoft.Network/stable/2019-12-01/virtualNetwork.json + - Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json + - Microsoft.Network/stable/2019-12-01/virtualRouter.json + - Microsoft.Network/stable/2019-12-01/virtualWan.json + - Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json +``` + ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.Network/stable/2019-11-01/applicationGateway.json - Microsoft.Network/stable/2019-11-01/applicationSecurityGroup.json @@ -82,6 +239,7 @@ input-file: - Microsoft.Network/stable/2019-11-01/vmssPublicIpAddress.json - Microsoft.Network/stable/2019-11-01/webapplicationfirewall.json ``` + ### Tag: package-2019-09 These settings apply only when `--tag=package-2019-09` is specified on the command line. @@ -112,7 +270,7 @@ input-file: - Microsoft.Network/stable/2019-09-01/networkProfile.json - Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json - Microsoft.Network/stable/2019-09-01/networkWatcher.json - - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json - Microsoft.Network/stable/2019-09-01/operation.json - Microsoft.Network/stable/2019-09-01/privateEndpoint.json - Microsoft.Network/stable/2019-09-01/privateLinkService.json @@ -163,7 +321,7 @@ input-file: - Microsoft.Network/stable/2019-08-01/networkProfile.json - Microsoft.Network/stable/2019-08-01/networkSecurityGroup.json - Microsoft.Network/stable/2019-08-01/networkWatcher.json - - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json - Microsoft.Network/stable/2019-08-01/operation.json - Microsoft.Network/stable/2019-08-01/privateEndpoint.json - Microsoft.Network/stable/2019-08-01/privateLinkService.json @@ -213,7 +371,7 @@ input-file: - Microsoft.Network/stable/2019-07-01/networkProfile.json - Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json - Microsoft.Network/stable/2019-07-01/networkWatcher.json - - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json - Microsoft.Network/stable/2019-07-01/operation.json - Microsoft.Network/stable/2019-07-01/privateEndpoint.json - Microsoft.Network/stable/2019-07-01/privateLinkService.json @@ -1195,6 +1353,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: networkSecurityGroup.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: networkVirtualAppliance.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: networkWatcher.json reason: name, id and type properties are inherited from the upper level @@ -1213,6 +1374,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: routeTable.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: securityPartnerProvider.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: serviceCommunity.json reason: name, id and type properties are inherited from the upper level @@ -1328,6 +1492,9 @@ directive: - suppress: GetInOperationName where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders"].get.operationId reason: Customized verb is used for API + - suppress: RequiredPropertiesMissingInResourceModel + from: ipAllocation.json + reason: name, id and type properties are inherited from the upper level ``` --- @@ -1380,6 +1547,9 @@ directive: from: networkwatcher.json where: $.definitions.ConnectionMonitorHttpConfiguration.properties.preferHTTPS reason: Accidentally shipped with wrong casing - however fixing the casing is introducing a breaking change which is worse than living with the naming violation + - suppress: RequiredPropertiesMissingInResourceModel + from: ipAllocation.json + reason: name, id and type properties are inherited from the upper level ``` ## Go @@ -1402,6 +1572,140 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/ipAllocation.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/ipGroups.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/ipAllocation.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/ipGroups.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/ipGroups.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/network.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/applicationGateway.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/applicationSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/availableDelegations.json @@ -1469,7 +1773,7 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkProfile.json - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json - $(this-folder)/Microsoft.Network/stable/2019-09-01/operation.json - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateEndpoint.json - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateLinkService.json @@ -1512,6 +1816,7 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkProfile.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/operation.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateEndpoint.json - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateLinkService.json @@ -1553,6 +1858,7 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkProfile.json - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json - $(this-folder)/Microsoft.Network/stable/2019-07-01/operation.json - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateEndpoint.json - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateLinkService.json @@ -1594,6 +1900,7 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkProfile.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/operation.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/privateEndpoint.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/privateLinkService.json diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md index e059b98a608e..b76eb2ba5ee4 100644 --- a/specification/network/resource-manager/readme.python.md +++ b/specification/network/resource-manager/readme.python.md @@ -2,22 +2,34 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 + license-header: MICROSOFT_MIT_NO_VERSION package-name: azure-mgmt-network clear-output-folder: true no-namespace-folders: true ``` +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-network +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: + - tag: package-2020-04 + - tag: package-2020-03 + - tag: package-2019-12 - tag: package-2019-11 - tag: package-2019-09 - tag: package-2019-08 @@ -45,12 +57,93 @@ batch: - tag: package-2015-06split ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2020-04 + - tag: package-2020-03 + - tag: package-2019-12 + - tag: package-2019-11 + - tag: package-2019-09 + - tag: package-2019-08 + - tag: package-2019-07 + - tag: package-2019-06 + - tag: package-2019-04 + - tag: package-2019-02 + - tag: package-2018-12 + - tag: package-2018-11 + - tag: package-2018-10 + - tag: package-2018-08 + - tag: package-2018-07 + - tag: package-2018-06 + - tag: package-2018-04 + - tag: package-2018-02 + - tag: package-2018-01 + - tag: package-2017-11 + - tag: package-2017-10 + - tag: package-2017-09 + - tag: package-2017-08 + - tag: package-2017-06 + - tag: package-2017-03 + - tag: package-2016-12 + - tag: package-2016-09 + - tag: package-2015-06split + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/ +clear-output-folder: false +perform-load: false +``` + +### Tag: package-2020-04 and python + +These settings apply only when `--tag=package-2020-04 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' +namespace: azure.mgmt.network.v2020_04_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2020_04_01 +python: + namespace: azure.mgmt.network.v2020_04_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2020_04_01 +``` + +### Tag: package-2020-03 and python + +These settings apply only when `--tag=package-2020-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03' +namespace: azure.mgmt.network.v2020_03_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2020_03_01 +python: + namespace: azure.mgmt.network.v2020_03_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2020_03_01 +``` + +### Tag: package-2019-12 and python + +These settings apply only when `--tag=package-2019-12 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-12' +namespace: azure.mgmt.network.v2019_12_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_12_01 +python: + namespace: azure.mgmt.network.v2019_12_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_12_01 +``` + ### Tag: package-2019-11 and python These settings apply only when `--tag=package-2019-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-11' && $(python) +``` yaml $(tag) == 'package-2019-11' +namespace: azure.mgmt.network.v2019_11_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_11_01 python: namespace: azure.mgmt.network.v2019_11_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_11_01 @@ -61,7 +154,9 @@ python: These settings apply only when `--tag=package-2019-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-09' && $(python) +``` yaml $(tag) == 'package-2019-09' +namespace: azure.mgmt.network.v2019_09_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01 python: namespace: azure.mgmt.network.v2019_09_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01 @@ -72,7 +167,9 @@ python: These settings apply only when `--tag=package-2019-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-08' && $(python) +``` yaml $(tag) == 'package-2019-08' +namespace: azure.mgmt.network.v2019_08_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_08_01 python: namespace: azure.mgmt.network.v2019_08_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_08_01 @@ -83,7 +180,9 @@ python: These settings apply only when `--tag=package-2019-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-07' && $(python) +``` yaml $(tag) == 'package-2019-07' +namespace: azure.mgmt.network.v2019_07_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_07_01 python: namespace: azure.mgmt.network.v2019_07_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_07_01 @@ -94,7 +193,9 @@ python: These settings apply only when `--tag=package-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-06' && $(python) +``` yaml $(tag) == 'package-2019-06' +namespace: azure.mgmt.network.v2019_06_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_06_01 python: namespace: azure.mgmt.network.v2019_06_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_06_01 @@ -105,7 +206,9 @@ python: These settings apply only when `--tag=package-2019-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-04' && $(python) +``` yaml $(tag) == 'package-2019-04' +namespace: azure.mgmt.network.v2019_04_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_04_01 python: namespace: azure.mgmt.network.v2019_04_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_04_01 @@ -116,7 +219,9 @@ python: These settings apply only when `--tag=package-2019-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-02' && $(python) +``` yaml $(tag) == 'package-2019-02' +namespace: azure.mgmt.network.v2019_02_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_02_01 python: namespace: azure.mgmt.network.v2019_02_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_02_01 @@ -127,7 +232,9 @@ python: These settings apply only when `--tag=package-2018-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-12' && $(python) +``` yaml $(tag) == 'package-2018-12' +namespace: azure.mgmt.network.v2018_12_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_12_01 python: namespace: azure.mgmt.network.v2018_12_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_12_01 @@ -138,7 +245,9 @@ python: These settings apply only when `--tag=package-2018-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-11' && $(python) +``` yaml $(tag) == 'package-2018-11' +namespace: azure.mgmt.network.v2018_11_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_11_01 python: namespace: azure.mgmt.network.v2018_11_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_11_01 @@ -149,7 +258,9 @@ python: These settings apply only when `--tag=package-2018-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-10' && $(python) +``` yaml $(tag) == 'package-2018-10' +namespace: azure.mgmt.network.v2018_10_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_10_01 python: namespace: azure.mgmt.network.v2018_10_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_10_01 @@ -160,7 +271,9 @@ python: These settings apply only when `--tag=package-2018-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-08' && $(python) +``` yaml $(tag) == 'package-2018-08' +namespace: azure.mgmt.network.v2018_08_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_08_01 python: namespace: azure.mgmt.network.v2018_08_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_08_01 @@ -171,7 +284,9 @@ python: These settings apply only when `--tag=package-2018-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-07' && $(python) +``` yaml $(tag) == 'package-2018-07' +namespace: azure.mgmt.network.v2018_07_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_07_01 python: namespace: azure.mgmt.network.v2018_07_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_07_01 @@ -182,7 +297,9 @@ python: These settings apply only when `--tag=package-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-06' && $(python) +``` yaml $(tag) == 'package-2018-06' +namespace: azure.mgmt.network.v2018_06_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_06_01 python: namespace: azure.mgmt.network.v2018_06_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_06_01 @@ -193,7 +310,9 @@ python: These settings apply only when `--tag=package-2018-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-04' && $(python) +``` yaml $(tag) == 'package-2018-04' +namespace: azure.mgmt.network.v2018_04_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_04_01 python: namespace: azure.mgmt.network.v2018_04_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_04_01 @@ -204,7 +323,9 @@ python: These settings apply only when `--tag=package-2018-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-02' && $(python) +``` yaml $(tag) == 'package-2018-02' +namespace: azure.mgmt.network.v2018_02_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_02_01 python: namespace: azure.mgmt.network.v2018_02_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_02_01 @@ -215,7 +336,9 @@ python: These settings apply only when `--tag=package-2018-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-01' && $(python) +``` yaml $(tag) == 'package-2018-01' +namespace: azure.mgmt.network.v2018_01_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_01_01 python: namespace: azure.mgmt.network.v2018_01_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2018_01_01 @@ -226,7 +349,9 @@ python: These settings apply only when `--tag=package-2017-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-11' && $(python) +``` yaml $(tag) == 'package-2017-11' +namespace: azure.mgmt.network.v2017_11_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_11_01 python: namespace: azure.mgmt.network.v2017_11_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_11_01 @@ -237,7 +362,9 @@ python: These settings apply only when `--tag=package-2017-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-10' && $(python) +``` yaml $(tag) == 'package-2017-10' +namespace: azure.mgmt.network.v2017_10_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_10_01 python: namespace: azure.mgmt.network.v2017_10_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_10_01 @@ -248,7 +375,9 @@ python: These settings apply only when `--tag=package-2017-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-09' && $(python) +``` yaml $(tag) == 'package-2017-09' +namespace: azure.mgmt.network.v2017_09_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_09_01 python: namespace: azure.mgmt.network.v2017_09_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_09_01 @@ -259,7 +388,9 @@ python: These settings apply only when `--tag=package-2017-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-08' && $(python) +``` yaml $(tag) == 'package-2017-08' +namespace: azure.mgmt.network.v2017_08_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_08_01 python: namespace: azure.mgmt.network.v2017_08_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_08_01 @@ -270,7 +401,9 @@ python: These settings apply only when `--tag=package-2017-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-06' && $(python) +``` yaml $(tag) == 'package-2017-06' +namespace: azure.mgmt.network.v2017_06_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_06_01 python: namespace: azure.mgmt.network.v2017_06_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_06_01 @@ -281,7 +414,9 @@ python: These settings apply only when `--tag=package-2017-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-03' && $(python) +``` yaml $(tag) == 'package-2017-03' +namespace: azure.mgmt.network.v2017_03_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_03_01 python: namespace: azure.mgmt.network.v2017_03_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2017_03_01 @@ -292,7 +427,9 @@ python: These settings apply only when `--tag=package-2016-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-12' && $(python) +``` yaml $(tag) == 'package-2016-12' +namespace: azure.mgmt.network.v2016_12_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2016_12_01 python: namespace: azure.mgmt.network.v2016_12_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2016_12_01 @@ -303,7 +440,9 @@ python: These settings apply only when `--tag=package-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-09' && $(python) +``` yaml $(tag) == 'package-2016-09' +namespace: azure.mgmt.network.v2016_09_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2016_09_01 python: namespace: azure.mgmt.network.v2016_09_01 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2016_09_01 @@ -314,7 +453,9 @@ python: These settings apply only when `--tag=package-2015-06split --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-06split' && $(python) +``` yaml $(tag) == 'package-2015-06split' +namespace: azure.mgmt.network.v2015_06_15 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2015_06_15 python: namespace: azure.mgmt.network.v2015_06_15 output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2015_06_15 diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json new file mode 100644 index 000000000000..3cfe38dc5c86 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json @@ -0,0 +1,325 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2015-11-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linked services." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace." + } + }, + "required": [ + "resourceId" + ], + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container.", + "x-ms-azure-resource": true + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "Gets or sets a list of linked service instances." + } + }, + "description": "The list linked service operation response." + }, + "ProxyResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "description": "Common properties of proxy resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json index 9d47ed4d361a..ff3f6fe86d1a 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json @@ -34,201 +34,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { - "put": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesCreate": { - "$ref": "./examples/LinkedServicesCreate.json" - } - }, - "operationId": "LinkedServices_CreateOrUpdate", - "description": "Create or update a linked service.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linkedServices resource" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/LinkedService" - }, - "description": "The parameters required to create or update a linked service." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - }, - "201": { - "description": "Created response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - } - } - }, - "delete": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesDelete": { - "$ref": "./examples/LinkedServicesDelete.json" - } - }, - "operationId": "LinkedServices_Delete", - "description": "Deletes a linked service instance.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linked service." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition." - }, - "204": { - "description": "NoContent response definition." - } - } - }, - "get": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesGet": { - "$ref": "./examples/LinkedServicesGet.json" - } - }, - "operationId": "LinkedServices_Get", - "description": "Gets a linked service instance.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linked service." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { - "get": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesListByWorkspace": { - "$ref": "./examples/LinkedServicesListByWorkspace.json" - } - }, - "operationId": "LinkedServices_ListByWorkspace", - "description": "Gets the linked services instances in a workspace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linked services." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedServiceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataSources/{dataSourceName}": { "put": { "tags": [ @@ -991,288 +796,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateLinkResources": { - "get": { - "tags": [ - "PrivateLinkResources" - ], - "description": "Gets the private link resources that need to be created for a Log Analytics Workspace.", - "operationId": "PrivateLinkResources_ListByWorkspace", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved private link resources.", - "schema": { - "$ref": "#/definitions/PrivateLinkResourceListResult" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/WorkspacePrivateLinkResourceListGet.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateLinkResources/{groupName}": { - "get": { - "tags": [ - "PrivateLinkResources" - ], - "description": "Gets the private link resources that need to be created for a Log Analytics Workspace.", - "operationId": "PrivateLinkResources_Get", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "$ref": "#/parameters/GroupNameParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved a specified private link resource.", - "schema": { - "$ref": "#/definitions/PrivateLinkResource" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/WorkspacePrivateLinkResourceGet.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { - "get": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Gets a private endpoint connection.", - "operationId": "PrivateEndpointConnections_Get", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved a specified private endpoint connection.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/PrivateEndpointConnectionGet.json" - } - } - }, - "put": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Approve or reject a private endpoint connection with a given name.", - "operationId": "PrivateEndpointConnections_CreateOrUpdate", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - } - ], - "responses": { - "200": { - "description": "Successfully approved or rejected private endpoint connection.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Approve or reject a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionUpdate.json" - } - } - }, - "delete": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Deletes a private endpoint connection with a given name.", - "operationId": "PrivateEndpointConnections_Delete", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successfully deleted private endpoint connection." - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "Private endpoint connection does not exist." - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Deletes a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionDelete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateEndpointConnections": { - "get": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Gets all private endpoint connections on a workspace.", - "operationId": "PrivateEndpointConnections_ListByWorkspace", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved private endpoint connections.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnectionListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Gets list of private endpoint connections on a workspace.": { - "$ref": "./examples/PrivateEndpointConnectionList.json" - } - } - } - }, "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/locations/{location}/operationStatuses/{asyncOperationId}": { "get": { "x-ms-examples": { @@ -1362,49 +885,6 @@ } } }, - "LinkedServiceProperties": { - "properties": { - "resourceId": { - "type": "string", - "description": "The resource id of the resource that will be linked to the workspace." - } - }, - "required": [ - "resourceId" - ], - "description": "Linked service properties." - }, - "LinkedService": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/LinkedServiceProperties", - "description": "The properties of the linked service." - } - }, - "required": [ - "properties" - ], - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "description": "The top level Linked service resource container.", - "x-ms-azure-resource": true - }, - "LinkedServiceListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/LinkedService" - }, - "description": "Gets or sets a list of linked service instances." - } - }, - "description": "The list linked service operation response." - }, "DataSourceKind": { "type": "string", "enum": [ @@ -1797,149 +1277,6 @@ }, "description": "Common properties of proxy resource." }, - "PrivateLinkResourceListResult": { - "description": "A list of private link resources", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/PrivateLinkResource" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateLinkResource": { - "description": "A private link resource", - "type": "object", - "properties": { - "properties": { - "$ref": "#/definitions/PrivateLinkResourceProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ] - }, - "PrivateLinkResourceProperties": { - "description": "Properties of a private link resource.", - "type": "object", - "properties": { - "groupId": { - "description": "The private link resource group id.", - "type": "string", - "readOnly": true - }, - "requiredMembers": { - "description": "The private link resource required member names.", - "type": "array", - "items": { - "type": "string" - }, - "readOnly": true - } - } - }, - "PrivateEndpointConnectionProperties": { - "description": "Properties of a private endpoint connection.", - "type": "object", - "properties": { - "privateEndpoint": { - "$ref": "#/definitions/PrivateEndpointProperty", - "description": "Private endpoint which the connection belongs to." - }, - "privateLinkServiceConnectionState": { - "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", - "description": "Connection state of the private endpoint connection." - }, - "provisioningState": { - "description": "State of the private endpoint connection.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateEndpointProperty": { - "description": "Private endpoint which the connection belongs to.", - "type": "object", - "properties": { - "id": { - "description": "Resource id of the private endpoint.", - "type": "string" - } - }, - "x-ms-azure-resource": true - }, - "PrivateLinkServiceConnectionStateProperty": { - "description": "State of the private endpoint connection.", - "type": "object", - "required": [ - "status", - "description" - ], - "properties": { - "status": { - "description": "The private link service connection status.", - "type": "string" - }, - "description": { - "description": "The private link service connection description.", - "type": "string" - }, - "actionsRequired": { - "description": "The actions required for private link service connection.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateEndpointConnection": { - "description": "A private endpoint connection", - "x-ms-azure-resource": true, - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/PrivateEndpointConnectionProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - } - }, - "PrivateEndpointConnectionListResult": { - "description": "A list of private endpoint connections.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/PrivateEndpointConnection" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, "ErrorResponse": { "description": "Describes the format of Error response.", "type": "object", @@ -2011,14 +1348,6 @@ "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 - }, - "GroupNameParameter": { - "name": "groupName", - "in": "path", - "description": "The name of the private link resource.", - "required": true, - "x-ms-parameter-location": "method", - "type": "string" } } } diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json deleted file mode 100644 index c1056b274ca4..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": {}, - "202": {}, - "204": {} - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json deleted file mode 100644 index 5f47b5967dd9..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Auto-approved", - "actionsRequired": "None" - } - } - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json deleted file mode 100644 index 7eb0f56d6d96..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name-2", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Auto-approved", - "actionsRequired": "None" - } - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name-2", - "name": "private-endpoint-connection-name-2", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" - }, - "privateLinkServiceConnectionState": { - "status": "Pending", - "description": "Please approve my connection.", - "actionsRequired": "None" - } - } - } - ] - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json deleted file mode 100644 index cb0dcdc32e4a..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview", - "parameters": { - "properties": { - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Approved by johndoe@contoso.com" - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Approved by johndoe@contoso.com", - "actionsRequired": "None" - } - } - } - }, - "202": {} - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json deleted file mode 100644 index b9448d3f6e99..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview", - "groupName": "workspace" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateLinkResources/workspace", - "name": "workspace", - "type": "Microsoft.OperationalInsights/workspaces/privateLinkResources", - "properties": { - "groupId": "workspace", - "requiredMembers": [ - "oms", - "agent", - "ods" - ] - } - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json deleted file mode 100644 index fa14310f3ad7..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateLinkResources/workspace", - "name": "workspace", - "type": "Microsoft.OperationalInsights/workspaces/privateLinkResources", - "properties": { - "groupId": "workspace", - "requiredMembers": [ - "oms", - "agent", - "ods" - ] - } - } - ], - "nextLink": null - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json index 80c78abf7074..197cfe9edba2 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json @@ -162,17 +162,8 @@ } ], "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "201": { - "description": "Created response definition.", - "schema": { - "$ref": "#/definitions/Cluster" - } + "202": { + "description": "Accepted response definition." }, "default": { "description": "Error response describing why the operation failed.", @@ -370,9 +361,9 @@ "modelAsString": true } }, - "encryptionKeyUri": { - "type": "string", - "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." } }, "description": "Cluster properties." @@ -409,9 +400,9 @@ }, "ClusterPatchProperties": { "properties": { - "encryptionKeyUri": { - "type": "string", - "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." } }, "description": "Log Analytics cluster patch properties." @@ -423,6 +414,10 @@ "$ref": "#/definitions/ClusterPatchProperties", "description": "Log Analytics cluster properties." }, + "sku": { + "$ref": "#/definitions/sku", + "description": "The sku properties." + }, "tags": { "type": "object", "additionalProperties": { @@ -440,6 +435,10 @@ "$ref": "#/definitions/Identity", "description": "The identity of the resource." }, + "sku": { + "$ref": "#/definitions/sku", + "description": "The sku properties." + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ClusterProperties", @@ -470,6 +469,42 @@ }, "description": "The list clusters operation response." }, + "keyVaultProperties": { + "properties": { + "keyVaultUri": { + "description": "The Key Vault uri which holds they key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyName": { + "description": "The name of the key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyVersion": { + "description": "The version of the key associated with the Log Analytics cluster.", + "type": "string" + } + } + }, + "sku": { + "properties": { + "capacity": { + "description": "The capacity value", + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "CapacityReservation" + ], + "x-ms-enum": { + "name": "SkuNameEnum", + "modelAsString": true + } + } + } + }, "Identity": { "properties": { "principalId": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json new file mode 100644 index 000000000000..745bc549f03b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json @@ -0,0 +1,326 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2019-08-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linked services." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access" + }, + "writeAccessResourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access" + } + }, + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container.", + "x-ms-azure-resource": true + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The list of linked service instances" + } + }, + "description": "The list linked service operation response." + }, + "ProxyResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "description": "Common properties of proxy resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json index 27f0fc9b1475..2a01a76827ae 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json @@ -268,7 +268,7 @@ "in": "path", "required": true, "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the resource" + "description": "Name of the Log Analytics Workspace that will contain the resource." }, { "$ref": "#/parameters/DataSourceTypeParameter" @@ -318,7 +318,7 @@ "in": "path", "required": true, "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + "description": "Name of the Log Analytics Workspace that will contain the resource." }, { "$ref": "#/parameters/DataSourceTypeParameter" @@ -356,7 +356,7 @@ "in": "path", "required": true, "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + "description": "Name of the Log Analytics Workspace that will contain the resource." }, { "$ref": "#/parameters/DataSourceTypeParameter" @@ -400,12 +400,12 @@ "in": "path", "required": true, "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" + "description": "Name of the Log Analytics Workspace that will contain the resource." } ], "responses": { "200": { - "description": "Successfully retrieved linked storage accounts.", + "description": "OK response definition.", "schema": { "$ref": "#/definitions/LinkedStorageAccountsListResult" } @@ -578,8 +578,9 @@ "type": "object", "properties": { "dataSourceType": { - "description": "linked storage accounts type.", + "description": "Linked storage accounts type.", "type": "string", + "readOnly": true, "enum": [ "CustomLogs", "AzureWatson" @@ -590,7 +591,7 @@ } }, "storageAccountIds": { - "description": "linked storage accounts resource ids.", + "description": "Linked storage accounts resources ids.", "type": "array", "items": { "type": "string" @@ -677,7 +678,7 @@ "name": "DataSourceType", "modelAsString": false }, - "description": "Linked storage account type.", + "description": "Linked storage accounts type.", "x-ms-parameter-location": "method" } } diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json index 7b1b0ca8bda4..253b026facb6 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json @@ -4,7 +4,15 @@ "clusterName": "oiautorest6685", "parameters": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "location": "australiasoutheast", "tags": { @@ -15,47 +23,6 @@ "subscriptionId": "00000000-0000-0000-0000-00000000000" }, "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", - "identity": { - "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", - "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", - "type": "SystemAssigned" - }, - "name": "AzTest2170", - "type": "Microsoft.OperationalInsights/clusters", - "location": "australiasoutheast", - "tags": { - "tag1": "val1" - }, - "properties": { - "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", - "provisioningState": "Creating", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", - "identity": { - "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", - "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", - "type": "SystemAssigned" - }, - "name": "AzTest2170", - "type": "Microsoft.OperationalInsights/clusters", - "location": "australiasoutheast", - "tags": { - "tag1": "val1" - }, - "properties": { - "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", - "provisioningState": "Creating", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" - } - } - } + "202": {} } } diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json index bbbd3287a60c..d8791aaa5d3b 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json @@ -10,9 +10,13 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { @@ -20,15 +24,23 @@ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", "type": "SystemAssigned" }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, "name": "TestResourceLock", "type": "Microsoft.OperationalInsights/clusters", "location": "eastus" }, { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/clusters/southukws", "identity": { @@ -36,6 +48,10 @@ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", "type": "SystemAssigned" }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, "name": "SouthUKWS", "type": "Microsoft.OperationalInsights/clusters", "location": "East US" diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json index a1ff7a25d694..cfbe90c48e13 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json @@ -9,9 +9,17 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json index 1e7b4fe07231..c4162fadc385 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json @@ -8,9 +8,17 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json index 35a4720af359..023cdae25644 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json @@ -4,7 +4,15 @@ "clusterName": "oiautorest6685", "parameters": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "tags": { "tag1": "val1" @@ -17,7 +25,17 @@ "200": { "body": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "1c3f2afc-9ec1-4e74-bfe8-022b83bcd7b1" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "location": "australiasoutheast", "tags": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json new file mode 100644 index 000000000000..ea1a94a6bca8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "TestLinkWS/Cluster", + "parameters": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluster" + } + }, + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluste" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "201": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluste" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json new file mode 100644 index 000000000000..99f07e2aaa74 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "linkedServiceName": "TestLinkWS/Cluster", + "workspaceName": "TestLinkWS", + "resourceGroupName": "rg1", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json new file mode 100644 index 000000000000..84de0356b24a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "TestLinkWS/Cluster", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/Clusters/TestCluster" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json new file mode 100644 index 000000000000..5f5492ad56c8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.Automation/automationAccounts/TestAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/automation", + "name": "TestLinkWS/Automation", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + }, + { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/TestCluster" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json new file mode 100644 index 000000000000..5d5a288fc4ba --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json @@ -0,0 +1,138 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/availableServiceTiers": { + "get": { + "tags": [ + "AvailableServiceTiers" + ], + "x-ms-examples": { + "AvailableServiceTiers": { + "$ref": "./examples/WorkspacesAvailableServiceTiers.json" + } + }, + "operationId": "Workspaces_AvailableServiceTiers", + "description": "Gets the available service tiers for the workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceTier" + } + } + } + } + } + } + }, + "definitions": { + "AvailableServiceTier": { + "description": "Service Tier details.", + "properties": { + "serviceTier": { + "readOnly": true, + "type": "string", + "description": "The name of the Service Tier.", + "enum": [ + "Free", + "Standard", + "Premium", + "PerNode", + "PerGB2018", + "Standalone", + "CapacityReservation" + ], + "x-ms-enum": { + "name": "SkuNameEnum", + "modelAsString": true + } + }, + "enabled": { + "readOnly": true, + "type": "boolean", + "description": "True if the Service Tier is enabled for the workspace." + }, + "minimumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum retention for the Service Tier, in days." + }, + "maximumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum retention for the Service Tier, in days." + }, + "defaultRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default retention for the Service Tier, in days." + }, + "capacityReservationLevel": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The capacity reservation level in GB per day. Returned for the Capacity Reservation Service Tier." + }, + "lastSkuUpdate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Time when the sku was last updated for the workspace. Returned for the Capacity Reservation Service Tier." + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json new file mode 100644 index 000000000000..91082fab8381 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json @@ -0,0 +1,521 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersListByResourceGroup.json" + } + }, + "operationId": "Clusters_ListByResourceGroup", + "description": "Gets Log Analytics clusters in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersSubscriptionList": { + "$ref": "./examples/ClustersSubscriptionList.json" + } + }, + "operationId": "Clusters_List", + "description": "Gets the Log Analytics clusters in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/clusters/{clusterName}": { + "put": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersCreate": { + "$ref": "./examples/ClustersCreate.json" + } + }, + "operationId": "Clusters_CreateOrUpdate", + "description": "Create or update a Log Analytics cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the Log Analytics cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The parameters required to create or update a Log Analytics cluster." + } + ], + "responses": { + "202": { + "description": "Accepted response definition." + }, + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersDelete": { + "$ref": "./examples/ClustersDelete.json" + } + }, + "operationId": "Clusters_Delete", + "description": "Deletes a cluster instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersGet.json" + } + }, + "operationId": "Clusters_Get", + "description": "Gets a Log Analytics cluster instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersPatch": { + "$ref": "./examples/ClustersUpdate.json" + } + }, + "operationId": "Clusters_Update", + "description": "Updates a Log Analytics cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPatch" + }, + "description": "The parameters required to patch a Log Analytics cluster." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing cluster was successfully updated. Check provisioningStatus to see detailed status.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "clusterId": { + "type": "string", + "readOnly": true, + "description": "The ID associated with the cluster." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the cluster.", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "ClusterEntityStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." + } + }, + "description": "Cluster properties." + }, + "ClusterErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "ClusterPatchProperties": { + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." + } + }, + "description": "Log Analytics cluster patch properties." + }, + "ClusterPatch": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPatchProperties", + "description": "Log Analytics cluster properties." + }, + "sku": { + "$ref": "#/definitions/ClusterSku", + "description": "The sku properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "description": "The top level Log Analytics cluster resource container.", + "x-ms-azure-resource": true + }, + "Cluster": { + "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "sku": { + "$ref": "#/definitions/ClusterSku", + "description": "The sku properties." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "Log Analytics cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The top level Log Analytics cluster resource container." + }, + "ClusterListResult": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "A list of Log Analytics clusters." + } + }, + "description": "The list clusters operation response." + }, + "keyVaultProperties": { + "description": "The key vault properties.", + "properties": { + "keyVaultUri": { + "description": "The Key Vault uri which holds they key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyName": { + "description": "The name of the key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyVersion": { + "description": "The version of the key associated with the Log Analytics cluster.", + "type": "string" + } + } + }, + "ClusterSku": { + "description": "The cluster sku definition.", + "properties": { + "capacity": { + "description": "The capacity value", + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "CapacityReservation" + ], + "x-ms-enum": { + "name": "ClusterSkuNameEnum", + "modelAsString": true + } + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json new file mode 100644 index 000000000000..b458c89226a6 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json @@ -0,0 +1,368 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/dataExports": { + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportListByWorkspace.json" + } + }, + "operationId": "DataExports_ListByWorkspace", + "description": "Lists the data export instances within a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataExports/{dataExportName}": { + "put": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportCreate": { + "$ref": "./examples/DataExportCreateOrUpdate.json" + } + }, + "operationId": "DataExports_CreateOrUpdate", + "description": "Create or update a data export.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataExport" + }, + "description": "The parameters required to create or update a data export." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportGet.json" + } + }, + "operationId": "DataExports_Get", + "description": "Gets a data export instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportDelete": { + "$ref": "./examples/DataExportDelete.json" + } + }, + "operationId": "DataExports_Delete", + "description": "Deletes the specified data export in a given workspace..", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + } + } + } + }, + "definitions": { + "DataExport": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DataExportProperties", + "description": "data export properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level data export resource container.", + "x-ms-azure-resource": true + }, + "DataExportListResult": { + "description": "Result of the request to list data exports.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataExport" + }, + "description": "List of data export instances within a workspace.." + } + } + }, + "DataExportProperties": { + "properties": { + "dataExportId": { + "type": "string", + "description": "The data export rule ID." + }, + "allTables": { + "type": "boolean", + "description": "When ‘true’, all workspace's tables are exported." + }, + "tableNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of tables to export, for example: [“Heartbeat, SecurityEvent”]." + }, + "destination": { + "$ref": "#/definitions/Destination", + "description": "destination properties.", + "x-ms-client-flatten": true + }, + "enable": { + "type": "boolean", + "description": "Active when enabled." + }, + "createdDate": { + "type": "string", + "description": "The latest data export rule modification time." + }, + "lastModifiedDate": { + "type": "string", + "description": "Date and time when the export was last modified." + } + }, + "description": "Data Export properties." + }, + "Destination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The destination resource ID. This can be copied from the Properties entry of the destination resource in Azure." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The type of the destination resource", + "enum": [ + "StorageAccount", + "EventHub" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + } + }, + "metaData": { + "$ref": "#/definitions/DestinationMetaData", + "description": "destination meta data.", + "x-ms-client-flatten": true + } + }, + "required": [ + "resourceId" + ], + "description": "Destination properties." + }, + "DestinationMetaData": { + "properties": { + "eventHubName": { + "type": "string", + "description": "Optional. Allows to define an Event Hub name. Not applicable when destination is Storage Account." + } + }, + "description": "Destination meta data." + }, + "DataExportErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json new file mode 100644 index 000000000000..7f2126d9ea7c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json @@ -0,0 +1,344 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/dataSources/{dataSourceName}": { + "put": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesCreate": { + "$ref": "./examples/DataSourcesCreate.json" + } + }, + "operationId": "DataSources_CreateOrUpdate", + "description": "Create or update a data source.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The parameters required to create or update a datasource." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesDelete": { + "$ref": "./examples/DataSourcesDelete.json" + } + }, + "operationId": "DataSources_Delete", + "description": "Deletes a data source instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the datasource." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesGet": { + "$ref": "./examples/DataSourcesGet.json" + } + }, + "operationId": "DataSources_Get", + "description": "Gets a datasource instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the datasource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataSources": { + "get": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesListByWorkspace": { + "$ref": "./examples/DataSourcesListByWorkspace.json" + } + }, + "operationId": "DataSources_ListByWorkspace", + "description": "Gets the first page of data source instances in a workspace with the link to the next page.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$skiptoken", + "in": "query", + "required": false, + "type": "string", + "description": "Starting point of the collection of data source instances." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSourceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DataSourceFilter" + } + } + }, + "definitions": { + "DataSourceKind": { + "type": "string", + "enum": [ + "WindowsEvent", + "WindowsPerformanceCounter", + "IISLogs", + "LinuxSyslog", + "LinuxSyslogCollection", + "LinuxPerformanceObject", + "LinuxPerformanceCollection", + "CustomLog", + "CustomLogCollection", + "AzureAuditLog", + "AzureActivityLog", + "GenericDataSource", + "ChangeTrackingCustomPath", + "ChangeTrackingPath", + "ChangeTrackingServices", + "ChangeTrackingDataTypeConfiguration", + "ChangeTrackingDefaultRegistry", + "ChangeTrackingRegistry", + "ChangeTrackingLinuxPath", + "LinuxChangeTrackingPath", + "ChangeTrackingContentLocation", + "WindowsTelemetry", + "Office365", + "SecurityWindowsBaselineConfiguration", + "SecurityCenterSecurityWindowsBaselineConfiguration", + "SecurityEventCollectionConfiguration", + "SecurityInsightsSecurityEventCollectionConfiguration", + "ImportComputerGroup", + "NetworkMonitoring", + "Itsm", + "DnsAnalytics", + "ApplicationInsights", + "SqlDataClassification" + ], + "x-ms-enum": { + "name": "DataSourceKind", + "modelAsString": true + }, + "description": "The kind of the DataSource." + }, + "DataSource": { + "properties": { + "properties": { + "$ref": "#/definitions/Object", + "description": "The data source properties in raw json format, each kind of data source have it's own schema." + }, + "eTag": { + "type": "string", + "description": "The ETag of the data source." + }, + "kind": { + "$ref": "#/definitions/DataSourceKind" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "kind", + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Datasources under OMS Workspace." + }, + "DataSourceFilter": { + "properties": { + "kind": { + "$ref": "#/definitions/DataSourceKind" + } + }, + "description": "DataSource filter. Right now, only filter by kind is supported." + }, + "DataSourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataSource" + }, + "description": "A list of datasources." + }, + "nextLink": { + "type": "string", + "description": "The link (url) to the next page of datasources." + } + }, + "description": "The list data source by workspace operation response." + }, + "Object": { + "type": "object", + "properties": {}, + "description": "JSON object" + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json new file mode 100644 index 000000000000..5e517eabe747 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json @@ -0,0 +1,85 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/gateways/{gatewayId}": { + "delete": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "DeleteGateways": { + "$ref": "./examples/WorkspacesGatewaysDelete.json" + } + }, + "operationId": "Gateways_Delete", + "description": "Delete a Log Analytics gateway.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/GatewayIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The specified gateway was deleted successfully." + } + } + } + } + }, + "definitions": {}, + "parameters": { + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "The Log Analytics gateway Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json new file mode 100644 index 000000000000..252c8eff5956 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json @@ -0,0 +1,180 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/intelligencePacks/{intelligencePackName}/Disable": { + "post": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksDisable": { + "$ref": "./examples/WorkspacesDisableIntelligencePack.json" + } + }, + "operationId": "IntelligencePacks_Disable", + "description": "Disables an intelligence pack for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "intelligencePackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the intelligence pack to be disabled." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/intelligencePacks/{intelligencePackName}/Enable": { + "post": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksEnable": { + "$ref": "./examples/WorkspacesEnableIntelligencePack.json" + } + }, + "operationId": "IntelligencePacks_Enable", + "description": "Enables an intelligence pack for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "intelligencePackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the intelligence pack to be enabled." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/intelligencePacks": { + "get": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksList": { + "$ref": "./examples/WorkspacesListIntelligencePacks.json" + } + }, + "operationId": "IntelligencePacks_List", + "description": "Lists all the intelligence packs possible and whether they are enabled or disabled for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/IntelligencePack" + } + } + } + } + } + } + }, + "definitions": { + "IntelligencePack": { + "properties": { + "name": { + "type": "string", + "description": "The name of the intelligence pack." + }, + "enabled": { + "type": "boolean", + "description": "The enabled boolean for the intelligence pack." + }, + "displayName": { + "type": "string", + "description": "The display name of the intelligence pack." + } + }, + "description": "Intelligence Pack containing a string name and boolean indicating if it's enabled." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json new file mode 100644 index 000000000000..d6d0f5e422ba --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json @@ -0,0 +1,294 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "204": { + "description": "NoContent response definition." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access" + }, + "writeAccessResourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access" + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the linked service.", + "enum": [ + "Succeeded", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "LinkedServiceEntityStatus", + "modelAsString": true + } + } + }, + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container." + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The list of linked service instances" + } + }, + "description": "The list linked service operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json new file mode 100644 index 000000000000..98315365228a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json @@ -0,0 +1,272 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts/{dataSourceType}": { + "put": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsCreate": { + "$ref": "./examples/LinkedStorageAccountsCreate.json" + } + }, + "operationId": "LinkedStorageAccounts_CreateOrUpdate", + "description": "Create or Update a link relation between current workspace and a group of storage accounts of a specific data source type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + }, + "description": "The parameters required to create or update linked storage accounts." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + } + } + } + }, + "delete": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsDelete": { + "$ref": "./examples/LinkedStorageAccountsDelete.json" + } + }, + "operationId": "LinkedStorageAccounts_Delete", + "description": "Deletes all linked storage accounts of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + }, + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsGet": { + "$ref": "./examples/LinkedStorageAccountsGet.json" + } + }, + "operationId": "LinkedStorageAccounts_Get", + "description": "Gets all linked storage account of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts": { + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "description": "Gets all linked storage accounts associated with the specified workspace, storage accounts will be sorted by their data source type.", + "operationId": "LinkedStorageAccounts_ListByWorkspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of linked storage accounts on a workspace.": { + "$ref": "./examples/LinkedStorageAccountsListByWorkspace.json" + } + } + } + } + }, + "definitions": { + "LinkedStorageAccountsProperties": { + "description": "Linked storage accounts properties.", + "type": "object", + "properties": { + "dataSourceType": { + "description": "Linked storage accounts type.", + "type": "string", + "readOnly": true, + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + } + }, + "storageAccountIds": { + "description": "Linked storage accounts resources ids.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LinkedStorageAccountsResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedStorageAccountsProperties", + "description": "Linked storage accounts properties." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Linked storage accounts top level resource container." + }, + "LinkedStorageAccountsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + }, + "description": "A list of linked storage accounts instances." + } + }, + "description": "The list linked storage accounts service operation response." + } + }, + "parameters": { + "DataSourceTypeParameter": { + "name": "dataSourceType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + }, + "description": "Linked storage accounts type.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json new file mode 100644 index 000000000000..f3c1f1609c50 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json @@ -0,0 +1,142 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/managementGroups": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesListManagementGroups": { + "$ref": "./examples/WorkspacesListManagementGroups.json" + } + }, + "operationId": "ManagementGroups_List", + "description": "Gets a list of management groups connected to a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListManagementGroupsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ManagementGroupProperties": { + "properties": { + "serverCount": { + "type": "integer", + "format": "int32", + "description": "The number of servers connected to the management group." + }, + "isGateway": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the management group is a gateway." + }, + "name": { + "type": "string", + "description": "The name of the management group." + }, + "id": { + "type": "string", + "description": "The unique ID of the management group." + }, + "created": { + "type": "string", + "format": "date-time", + "description": "The datetime that the management group was created." + }, + "dataReceived": { + "type": "string", + "format": "date-time", + "description": "The last datetime that the management group received data." + }, + "version": { + "type": "string", + "description": "The version of System Center that is managing the management group." + }, + "sku": { + "type": "string", + "description": "The SKU of System Center that is managing the management group." + } + }, + "description": "Management group properties." + }, + "ManagementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupProperties", + "description": "The properties of the management group." + } + }, + "description": "A management group that is connected to a workspace" + }, + "WorkspaceListManagementGroupsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroup" + }, + "description": "Gets or sets a list of management groups attached to the workspace." + } + }, + "description": "The list workspace management groups operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json new file mode 100644 index 000000000000..f7dc59e089a1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json @@ -0,0 +1,116 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/locations/{location}/operationStatuses/{asyncOperationId}": { + "get": { + "x-ms-examples": { + "Get specific operation status": { + "$ref": "./examples/OperationStatusesGet.json" + } + }, + "tags": [ + "asyncOperations" + ], + "operationId": "OperationStatuses_Get", + "description": "Get the status of a long running azure asynchronous operation.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The region name of operation." + }, + { + "name": "asyncOperationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Operation status.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "description": "The status of operation.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The operation Id." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "startTime": { + "type": "string", + "description": "The start time of the operation." + }, + "endTime": { + "type": "string", + "description": "The end time of the operation." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "error": { + "type": "object", + "description": "The error detail of the operation if any.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json new file mode 100644 index 000000000000..bf8e587b7eab --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json @@ -0,0 +1,118 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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": { + "/providers/Microsoft.OperationalInsights/operations": { + "get": { + "x-ms-examples": { + "Get specific operation status": { + "$ref": "./examples/OperationsListByTenant.json" + } + }, + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available OperationalInsights Rest API operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list solution operations.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of solution operations supported by the OperationsManagement resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Supported operation of OperationalInsights resource provider.", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft OperationsManagement.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json new file mode 100644 index 000000000000..ed78f8a3c0a7 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json @@ -0,0 +1,293 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference.", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/savedSearches/{savedSearchId}": { + "delete": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesDelete": { + "$ref": "./examples/WorkspacesDeleteSavedSearches.json" + } + }, + "operationId": "SavedSearches_Delete", + "description": "Deletes the specified saved search in a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + }, + "put": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchCreateOrUpdate": { + "$ref": "./examples/WorkspacesSavedSearchesCreateOrUpdate.json" + } + }, + "operationId": "SavedSearches_CreateOrUpdate", + "description": "Creates or updates a saved search for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SavedSearch" + }, + "description": "The parameters required to save a search." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SavedSearch" + } + } + } + }, + "get": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesGet": { + "$ref": "./examples/WorkspacesSavedSearchesGet.json" + } + }, + "operationId": "SavedSearches_Get", + "description": "Gets the specified saved search for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SavedSearch" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/savedSearches": { + "get": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesList": { + "$ref": "./examples/SavedSearchesListByWorkspace.json" + } + }, + "operationId": "SavedSearches_ListByWorkspace", + "description": "Gets the saved searches for a given Log Analytics Workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the list of saved searches for the given Log Analytics Workspace.", + "schema": { + "$ref": "#/definitions/SavedSearchesListResult" + } + } + } + } + } + }, + "definitions": { + "Tag": { + "properties": { + "name": { + "type": "string", + "description": "The tag name." + }, + "value": { + "type": "string", + "description": "The tag value." + } + }, + "required": [ + "name", + "value" + ], + "description": "A tag of a saved search." + }, + "SavedSearchProperties": { + "properties": { + "category": { + "type": "string", + "description": "The category of the saved search. This helps the user to find a saved search faster. " + }, + "displayName": { + "type": "string", + "description": "Saved search display name." + }, + "query": { + "type": "string", + "description": "The query expression for the saved search. Please see https://docs.microsoft.com/en-us/azure/log-analytics/log-analytics-search-reference for reference." + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version number of the query language. The current version is 2 and is the default." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "description": "The tags attached to the saved search." + } + }, + "required": [ + "category", + "displayName", + "query" + ], + "description": "Value object for saved search results." + }, + "SavedSearch": { + "properties": { + "eTag": { + "type": "string", + "description": "The ETag of the saved search." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SavedSearchProperties", + "description": "The properties of the saved search." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Value object for saved search results." + }, + "SavedSearchesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SavedSearch" + }, + "description": "The array of result values." + } + }, + "description": "The saved search list operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json new file mode 100644 index 000000000000..78167e673b9f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json @@ -0,0 +1,274 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/schema": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesGetSchema": { + "$ref": "./examples/SavedSearchesGetSchema.json" + } + }, + "operationId": "Schema_Get", + "description": "Gets the schema for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SearchGetSchemaResponse" + } + } + } + } + } + }, + "definitions": { + "CoreSummary": { + "properties": { + "status": { + "type": "string", + "description": "The status of a core summary." + }, + "numberOfDocuments": { + "type": "integer", + "format": "int64", + "description": "The number of documents of a core summary." + } + }, + "required": [ + "numberOfDocuments" + ], + "description": "The core summary of a search." + }, + "SearchSort": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field the search query is sorted on." + }, + "order": { + "type": "string", + "description": "The sort order of the search.", + "enum": [ + "asc", + "desc" + ], + "x-ms-enum": { + "name": "SearchSortEnum", + "modelAsString": true + } + } + }, + "description": "The sort parameters for search." + }, + "SearchMetadataSchema": { + "properties": { + "name": { + "type": "string", + "description": "The name of the metadata schema." + }, + "version": { + "type": "integer", + "format": "int32", + "description": "The version of the metadata schema." + } + }, + "description": "Schema metadata for search." + }, + "SearchMetadata": { + "properties": { + "requestId": { + "x-ms-client-name": "SearchId", + "type": "string", + "description": "The request id of the search." + }, + "resultType": { + "type": "string", + "description": "The search result type." + }, + "total": { + "type": "integer", + "format": "int64", + "description": "The total number of search results." + }, + "top": { + "type": "integer", + "format": "int64", + "description": "The number of top search results." + }, + "id": { + "type": "string", + "description": "The id of the search results request." + }, + "coreSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/CoreSummary" + }, + "description": "The core summaries." + }, + "status": { + "type": "string", + "description": "The status of the search results." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the search." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "The time of last update." + }, + "eTag": { + "type": "string", + "description": "The ETag of the search results." + }, + "sort": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchSort" + }, + "description": "How the results are sorted." + }, + "requestTime": { + "type": "integer", + "format": "int64", + "description": "The request time." + }, + "aggregatedValueField": { + "type": "string", + "description": "The aggregated value field." + }, + "aggregatedGroupingFields": { + "type": "string", + "description": "The aggregated grouping fields." + }, + "sum": { + "type": "integer", + "format": "int64", + "description": "The sum of all aggregates returned in the result set." + }, + "max": { + "type": "integer", + "format": "int64", + "description": "The max of all aggregates returned in the result set." + }, + "schema": { + "$ref": "#/definitions/SearchMetadataSchema", + "description": "The schema." + } + }, + "description": "Metadata for search results." + }, + "SearchSchemaValue": { + "properties": { + "name": { + "type": "string", + "description": "The name of the schema." + }, + "displayName": { + "type": "string", + "description": "The display name of the schema." + }, + "type": { + "type": "string", + "description": "The type." + }, + "indexed": { + "type": "boolean", + "description": "The boolean that indicates the field is searchable as free text." + }, + "stored": { + "type": "boolean", + "description": "The boolean that indicates whether or not the field is stored." + }, + "facet": { + "type": "boolean", + "description": "The boolean that indicates whether or not the field is a facet." + }, + "ownerType": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The array of workflows containing the field." + } + }, + "required": [ + "facet", + "stored", + "indexed" + ], + "description": "Value object for schema results." + }, + "SearchGetSchemaResponse": { + "properties": { + "metadata": { + "x-ms-client-name": "Metadata", + "$ref": "#/definitions/SearchMetadata", + "description": "The metadata from search results." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchSchemaValue" + }, + "description": "The array of result values." + } + }, + "description": "The get schema operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json new file mode 100644 index 000000000000..de255fae52af --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json @@ -0,0 +1,126 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/sharedKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "SharedKeysList": { + "$ref": "./examples/WorkspacesGetSharedKeys.json" + } + }, + "operationId": "SharedKeys_GetSharedKeys", + "description": "Gets the shared keys for a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SharedKeys" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/regenerateSharedKey": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "RegenerateSharedKeys": { + "$ref": "./examples/WorkspacesRegenerateSharedKeys.json" + } + }, + "operationId": "SharedKeys_Regenerate", + "description": "Regenerates the shared keys for a Log Analytics Workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Returns the new shared keys associated with the Log Analytics Workspace.", + "schema": { + "$ref": "#/definitions/SharedKeys" + } + } + } + } + } + }, + "definitions": { + "SharedKeys": { + "properties": { + "primarySharedKey": { + "type": "string", + "description": "The primary shared key of a workspace." + }, + "secondarySharedKey": { + "type": "string", + "description": "The secondary shared key of a workspace." + } + }, + "description": "The shared keys for a workspace." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json new file mode 100644 index 000000000000..eb2f1f4426d2 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json @@ -0,0 +1,340 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference.", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/storageInsightConfigs/{storageInsightName}": { + "put": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsCreate": { + "$ref": "./examples/StorageInsightsCreateOrUpdate.json" + } + }, + "operationId": "StorageInsightConfigs_CreateOrUpdate", + "description": "Create or update a storage insight.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageInsight" + }, + "description": "The parameters required to create or update a storage insight." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + }, + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + } + } + }, + "get": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsGet": { + "$ref": "./examples/StorageInsightsGet.json" + } + }, + "operationId": "StorageInsightConfigs_Get", + "description": "Gets a storage insight instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + } + } + }, + "delete": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsDelete": { + "$ref": "./examples/StorageInsightsDelete.json" + } + }, + "operationId": "StorageInsightConfigs_Delete", + "description": "Deletes a storageInsightsConfigs resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/storageInsightConfigs": { + "get": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsList": { + "$ref": "./examples/StorageInsightsListByWorkspace.json" + } + }, + "operationId": "StorageInsightConfigs_ListByWorkspace", + "description": "Lists the storage insight instances within a workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsightListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + } + } + } + }, + "definitions": { + "StorageAccount": { + "properties": { + "id": { + "type": "string", + "description": "The Azure Resource Manager ID of the storage account resource." + }, + "key": { + "type": "string", + "description": "The storage account key." + } + }, + "required": [ + "id", + "key" + ], + "description": "Describes a storage account connection." + }, + "StorageInsightStatus": { + "properties": { + "state": { + "type": "string", + "description": "The state of the storage insight connection to the workspace", + "enum": [ + "OK", + "ERROR" + ], + "x-ms-enum": { + "name": "StorageInsightState", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "Description of the state of the storage insight." + } + }, + "required": [ + "state" + ], + "description": "The status of the storage insight." + }, + "StorageInsightProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The names of the blob containers that the workspace should read" + }, + "tables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The names of the Azure tables that the workspace should read" + }, + "storageAccount": { + "$ref": "#/definitions/StorageAccount", + "description": "The storage account connection details" + }, + "status": { + "$ref": "#/definitions/StorageInsightStatus", + "description": "The status of the storage insight", + "readOnly": true + } + }, + "required": [ + "storageAccount" + ], + "description": "Storage insight properties." + }, + "StorageInsight": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageInsightProperties", + "description": "Storage insight properties." + }, + "eTag": { + "type": "string", + "description": "The ETag of the storage insight." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level storage insight resource container." + }, + "StorageInsightListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageInsight" + }, + "description": "A list of storage insight items." + }, + "@odata.nextLink": { + "type": "string", + "description": "The link (url) to the next page of results.", + "x-ms-client-name": "odataNextLink" + } + }, + "description": "The list storage insights operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json new file mode 100644 index 000000000000..214108143d89 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/usages": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "UsagesList": { + "$ref": "./examples/WorkspacesListUsages.json" + } + }, + "operationId": "Usages_List", + "description": "Gets a list of usage metrics for a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "MetricName": { + "properties": { + "value": { + "type": "string", + "description": "The system name of the metric." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the metric." + } + }, + "description": "The name of a metric." + }, + "UsageMetric": { + "properties": { + "name": { + "$ref": "#/definitions/MetricName", + "description": "The name of the metric." + }, + "unit": { + "type": "string", + "description": "The units used for the metric." + }, + "currentValue": { + "type": "number", + "format": "double", + "description": "The current value of the metric." + }, + "limit": { + "type": "number", + "format": "double", + "description": "The quota limit for the metric." + }, + "nextResetTime": { + "type": "string", + "format": "date-time", + "description": "The time that the metric's value will reset." + }, + "quotaPeriod": { + "type": "string", + "description": "The quota period that determines the length of time between value resets." + } + }, + "description": "A metric describing the usage of a resource." + }, + "WorkspaceListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UsageMetric" + }, + "description": "Gets or sets a list of usage metrics for a workspace." + } + }, + "description": "The list workspace usages operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json new file mode 100644 index 000000000000..faa1bab483a9 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json @@ -0,0 +1,216 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces/{workspaceName}/purge": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Purges data in an Log Analytics workspace by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "WorkspacePurge_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/WorkspacePurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Log Analytics workspace.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeResponse" + }, + "headers": { + "x-ms-status-location": { + "type": "string", + "description": "The location from which to request the operation status." + } + } + } + }, + "x-ms-examples": { + "WorkspacePurge": { + "$ref": "./examples/WorkspacesPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/operations/{purgeId}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets status of an ongoing purge operation.", + "operationId": "WorkspacePurge_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/WorkspacePurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "WorkspacePurgeOperation": { + "$ref": "./examples/WorkspacesPurgeOperation.json" + } + } + } + } + }, + "definitions": { + "WorkspacePurgeBody": { + "description": "Describes the body of a purge request for an App Insights Workspace", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/WorkspacePurgeBodyFilters" + } + } + } + }, + "WorkspacePurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "WorkspacePurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "WorkspacePurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + } + }, + "parameters": { + "WorkspacePurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Log Analytics Workspace", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspacePurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "WorkspacePurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json new file mode 100644 index 000000000000..e59d71422c38 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json @@ -0,0 +1,529 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-preview" + }, + "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.OperationalInsights/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesSubscriptionList": { + "$ref": "./examples/WorkspacesSubscriptionList.json" + } + }, + "operationId": "Workspaces_List", + "description": "Gets the workspaces in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesGet": { + "$ref": "./examples/WorkspacesListByResourceGroup.json" + } + }, + "operationId": "Workspaces_ListByResourceGroup", + "description": "Gets workspaces in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}": { + "put": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesCreate": { + "$ref": "./examples/WorkspacesCreate.json" + } + }, + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "The parameters required to create or update a workspace." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesDelete": { + "$ref": "./examples/WorkspacesDelete.json" + } + }, + "operationId": "Workspaces_Delete", + "description": "Deletes a workspace resource. To recover the workspace, create it again with the same name, in the same subscription, resource group and location. The name is kept for 14 days and cannot be used for another workspace. To remove the workspace completely and release the name, use the force flag.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Deletes the workspace without the recovery option. A workspace that was deleted with this flag cannot be recovered." + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent response definition." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspaceGet": { + "$ref": "./examples/WorkspacesGet.json" + } + }, + "operationId": "Workspaces_Get", + "description": "Gets a workspace instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesPatch": { + "$ref": "./examples/WorkspacesUpdate.json" + } + }, + "operationId": "Workspaces_Update", + "description": "Updates a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + }, + "description": "The parameters required to patch a workspace." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing workspace was successfully updated. Check provisioningStatus to see detailed status.", + "schema": { + "$ref": "#/definitions/Workspace" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/deletedWorkspaces": { + "get": { + "tags": [ + "DeletedWorkspaces" + ], + "x-ms-examples": { + "WorkspacesSubscriptionList": { + "$ref": "./examples/WorkspacesSubscriptionList.json" + } + }, + "operationId": "DeletedWorkspaces_List", + "description": "Gets recently deleted workspaces in a subscription, available for recovery.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/deletedWorkspaces": { + "get": { + "tags": [ + "DeletedWorkspaces" + ], + "x-ms-examples": { + "WorkspacesGet": { + "$ref": "./examples/WorkspacesListByResourceGroup.json" + } + }, + "operationId": "DeletedWorkspaces_ListByResourceGroup", + "description": "Gets recently deleted workspaces in a resource group, available for recovery.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "WorkspaceSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "Free", + "Standard", + "Premium", + "PerNode", + "PerGB2018", + "Standalone", + "CapacityReservation" + ], + "x-ms-enum": { + "name": "WorkspaceSkuNameEnum", + "modelAsString": true + } + } + }, + "required": [ + "name" + ], + "description": "The SKU (tier) of a workspace." + }, + "WorkspaceProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state of the workspace.", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "WorkspaceEntityStatus", + "modelAsString": true + } + }, + "customerId": { + "type": "string", + "description": "This is a read-only property. Represents the ID associated with the workspace.", + "readOnly": true + }, + "sku": { + "$ref": "#/definitions/WorkspaceSku", + "description": "The SKU of the workspace." + }, + "retentionInDays": { + "type": "integer", + "format": "int32", + "minimum": -1, + "maximum": 730, + "description": "The workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus. " + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Log Analytics ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Log Analytics query.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "privateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + } + }, + "description": "Workspace properties." + }, + "PrivateLinkScopedResource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "scopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "Workspace": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties", + "description": "Workspace properties." + }, + "eTag": { + "type": "string", + "description": "The ETag of the workspace." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The top level Workspace resource container." + }, + "WorkspacePatch": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties", + "description": "Workspace properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags. Optional." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The top level Workspace resource container." + }, + "WorkspaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + }, + "description": "A list of workspaces." + } + }, + "description": "The list workspaces operation response." + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Log Analytics Workspace. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Log Analytics through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Log Analytics through public DNS." + } + ] + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json new file mode 100644 index 000000000000..4530b896c897 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "provisioningState": "ProvisioningAccount", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/oiautorest6685", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "oiautorest6685", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "ProvisioningAccount", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/oiautorest6685", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "oiautorest6685", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json new file mode 100644 index 000000000000..9bedd88e3584 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json new file mode 100644 index 000000000000..14fa3afb311d --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + }, + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/clusters/southukws", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "SouthUKWS", + "type": "Microsoft.OperationalInsights/clusters", + "location": "East US" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json new file mode 100644 index 000000000000..b555544955b6 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json new file mode 100644 index 000000000000..f56e36a77d2b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json new file mode 100644 index 000000000000..f34858d33a82 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "1c3f2afc-9ec1-4e74-bfe8-022b83bcd7b1" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json new file mode 100644 index 000000000000..413c8a0480bf --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test" + }, + "tableNames": [ + "Heartbeat" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "201": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json new file mode 100644 index 000000000000..65820f03f1d3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json new file mode 100644 index 000000000000..c6142d9fe8c4 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "404": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json new file mode 100644 index 000000000000..acec03e93f8a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json new file mode 100644 index 000000000000..f5163ab10916 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "LinkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "kind": "AzureActivityLog" + } + }, + "responses": { + "200": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + }, + "201": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json new file mode 100644 index 000000000000..ba705aca5205 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json new file mode 100644 index 000000000000..df03a4b5687d --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json new file mode 100644 index 000000000000..b24fee05304c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json @@ -0,0 +1,3019 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "$filter": "kind='WindowsEvent'", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent14", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1011", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.5629323Z'\"", + "name": "AzTestDSWE1011", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent64", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1013", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.2533211Z'\"", + "name": "AzTestDSWE1013", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent202", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1020", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.4645698Z'\"", + "name": "AzTestDSWE1020", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent231", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1074", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.5871672Z'\"", + "name": "AzTestDSWE1074", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent86", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1117", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A28.9325389Z'\"", + "name": "AzTestDSWE1117", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent30", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1128", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.2185735Z'\"", + "name": "AzTestDSWE1128", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent66", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1176", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.7779289Z'\"", + "name": "AzTestDSWE1176", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent199", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1293", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A03.5114136Z'\"", + "name": "AzTestDSWE1293", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent102", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE134", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.6788897Z'\"", + "name": "AzTestDSWE134", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent111", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1352", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.2312139Z'\"", + "name": "AzTestDSWE1352", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent31", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1360", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.4685716Z'\"", + "name": "AzTestDSWE1360", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent53", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1382", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.2840543Z'\"", + "name": "AzTestDSWE1382", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent132", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1410", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A42.7070374Z'\"", + "name": "AzTestDSWE1410", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent211", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1417", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.8922838Z'\"", + "name": "AzTestDSWE1417", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent274", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1560", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.6932412Z'\"", + "name": "AzTestDSWE1560", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent212", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1618", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A07.1422661Z'\"", + "name": "AzTestDSWE1618", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent221", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1662", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A09.5980265Z'\"", + "name": "AzTestDSWE1662", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent121", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1675", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A39.6167744Z'\"", + "name": "AzTestDSWE1675", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent157", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE169", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A50.1064668Z'\"", + "name": "AzTestDSWE169", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent196", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1735", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A02.4954752Z'\"", + "name": "AzTestDSWE1735", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent12", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1742", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.0452997Z'\"", + "name": "AzTestDSWE1742", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent145", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1815", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A46.5966089Z'\"", + "name": "AzTestDSWE1815", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent69", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1828", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.6529754Z'\"", + "name": "AzTestDSWE1828", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent58", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE188", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A20.7216320Z'\"", + "name": "AzTestDSWE188", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent48", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1962", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A17.9341560Z'\"", + "name": "AzTestDSWE1962", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent246", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1997", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A17.3081821Z'\"", + "name": "AzTestDSWE1997", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent154", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2046", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A49.2918213Z'\"", + "name": "AzTestDSWE2046", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent165", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2056", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A52.4111189Z'\"", + "name": "AzTestDSWE2056", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent172", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2116", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.7598026Z'\"", + "name": "AzTestDSWE2116", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent9", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2142", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A07.2711237Z'\"", + "name": "AzTestDSWE2142", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent150", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE22", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.2064500Z'\"", + "name": "AzTestDSWE22", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent218", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2208", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.7849248Z'\"", + "name": "AzTestDSWE2208", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent161", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2221", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.3306230Z'\"", + "name": "AzTestDSWE2221", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent75", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2226", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A25.5991266Z'\"", + "name": "AzTestDSWE2226", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent38", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2231", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A15.3592513Z'\"", + "name": "AzTestDSWE2231", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent208", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2242", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.0641077Z'\"", + "name": "AzTestDSWE2242", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent228", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2263", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A11.7829226Z'\"", + "name": "AzTestDSWE2263", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent259", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2369", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A21.5874093Z'\"", + "name": "AzTestDSWE2369", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent210", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE240", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.6266574Z'\"", + "name": "AzTestDSWE240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent265", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2423", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A23.4752361Z'\"", + "name": "AzTestDSWE2423", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent112", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2463", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.5611370Z'\"", + "name": "AzTestDSWE2463", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent32", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2499", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.7187131Z'\"", + "name": "AzTestDSWE2499", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent220", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2509", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A09.3324224Z'\"", + "name": "AzTestDSWE2509", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent87", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2541", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.2312540Z'\"", + "name": "AzTestDSWE2541", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent2", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2578", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.3117461Z'\"", + "name": "AzTestDSWE2578", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent119", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2619", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.5379572Z'\"", + "name": "AzTestDSWE2619", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent1", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE274", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.0735592Z'\"", + "name": "AzTestDSWE274", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent92", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2754", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.6297451Z'\"", + "name": "AzTestDSWE2754", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent205", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE281", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A05.2972963Z'\"", + "name": "AzTestDSWE281", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent101", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2818", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.3820072Z'\"", + "name": "AzTestDSWE2818", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent236", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2860", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A14.0876077Z'\"", + "name": "AzTestDSWE2860", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent93", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2867", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.9266089Z'\"", + "name": "AzTestDSWE2867", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent278", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2923", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A27.9342580Z'\"", + "name": "AzTestDSWE2923", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent138", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2979", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A44.4311007Z'\"", + "name": "AzTestDSWE2979", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent217", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3009", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.5349323Z'\"", + "name": "AzTestDSWE3009", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent269", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3033", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.9696296Z'\"", + "name": "AzTestDSWE3033", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent49", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3095", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.2006423Z'\"", + "name": "AzTestDSWE3095", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent118", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3114", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.2879169Z'\"", + "name": "AzTestDSWE3114", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent116", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3132", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.6889867Z'\"", + "name": "AzTestDSWE3132", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent185", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3147", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A58.9331954Z'\"", + "name": "AzTestDSWE3147", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent109", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3159", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.6843083Z'\"", + "name": "AzTestDSWE3159", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent46", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE317", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A17.4118415Z'\"", + "name": "AzTestDSWE317", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent107", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3175", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.0592573Z'\"", + "name": "AzTestDSWE3175", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent28", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3183", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.6247906Z'\"", + "name": "AzTestDSWE3183", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent237", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3217", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A14.4938899Z'\"", + "name": "AzTestDSWE3217", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent62", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3220", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A21.7373059Z'\"", + "name": "AzTestDSWE3220", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent51", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3228", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.7785353Z'\"", + "name": "AzTestDSWE3228", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent171", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3395", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.4936956Z'\"", + "name": "AzTestDSWE3395", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent63", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3416", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.0032694Z'\"", + "name": "AzTestDSWE3416", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent280", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3506", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A28.8251658Z'\"", + "name": "AzTestDSWE3506", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent23", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3517", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.2153209Z'\"", + "name": "AzTestDSWE3517", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent229", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3528", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.0402565Z'\"", + "name": "AzTestDSWE3528", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent136", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3530", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A43.8027590Z'\"", + "name": "AzTestDSWE3530", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent194", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3594", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.9173304Z'\"", + "name": "AzTestDSWE3594", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent191", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3615", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A00.8990889Z'\"", + "name": "AzTestDSWE3615", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent242", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3645", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.0877829Z'\"", + "name": "AzTestDSWE3645", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent11", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3676", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A07.8068460Z'\"", + "name": "AzTestDSWE3676", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent155", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3700", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A49.5439700Z'\"", + "name": "AzTestDSWE3700", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent117", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3738", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.0363694Z'\"", + "name": "AzTestDSWE3738", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent159", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3740", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A50.6390339Z'\"", + "name": "AzTestDSWE3740", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent95", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3754", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A31.5203823Z'\"", + "name": "AzTestDSWE3754", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent96", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3761", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A31.7860159Z'\"", + "name": "AzTestDSWE3761", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent56", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3787", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A20.0966078Z'\"", + "name": "AzTestDSWE3787", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent181", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3880", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.8394298Z'\"", + "name": "AzTestDSWE3880", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent160", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3887", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.0806178Z'\"", + "name": "AzTestDSWE3887", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent244", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3899", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.6987634Z'\"", + "name": "AzTestDSWE3899", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent127", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3928", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.4223363Z'\"", + "name": "AzTestDSWE3928", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent186", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4005", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A59.1831854Z'\"", + "name": "AzTestDSWE4005", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent288", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4021", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A31.5314824Z'\"", + "name": "AzTestDSWE4021", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent193", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4054", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.6667691Z'\"", + "name": "AzTestDSWE4054", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent133", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE406", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A42.9581303Z'\"", + "name": "AzTestDSWE406", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent88", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4128", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.4890798Z'\"", + "name": "AzTestDSWE4128", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent189", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4140", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A00.2051432Z'\"", + "name": "AzTestDSWE4140", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent183", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4209", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A58.3706603Z'\"", + "name": "AzTestDSWE4209", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent67", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4216", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.1240354Z'\"", + "name": "AzTestDSWE4216", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent294", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4240", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.5368097Z'\"", + "name": "AzTestDSWE4240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent91", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4279", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.3641074Z'\"", + "name": "AzTestDSWE4279", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent273", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4289", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.3963554Z'\"", + "name": "AzTestDSWE4289", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent148", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4317", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A47.6751803Z'\"", + "name": "AzTestDSWE4317", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent4", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4324", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.8120517Z'\"", + "name": "AzTestDSWE4324", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent201", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4362", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.1208323Z'\"", + "name": "AzTestDSWE4362", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent13", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4416", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.3109506Z'\"", + "name": "AzTestDSWE4416", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent153", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4424", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.9744951Z'\"", + "name": "AzTestDSWE4424", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent52", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4466", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.0457713Z'\"", + "name": "AzTestDSWE4466", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent37", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4467", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A15.0936374Z'\"", + "name": "AzTestDSWE4467", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent129", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4503", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.9399246Z'\"", + "name": "AzTestDSWE4503", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent276", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4521", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A27.2714771Z'\"", + "name": "AzTestDSWE4521", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent79", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4530", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A26.7419933Z'\"", + "name": "AzTestDSWE4530", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent115", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4600", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.4227966Z'\"", + "name": "AzTestDSWE4600", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent135", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4644", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A43.5519204Z'\"", + "name": "AzTestDSWE4644", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent162", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4694", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.6431386Z'\"", + "name": "AzTestDSWE4694", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent5", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4715", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.0530002Z'\"", + "name": "AzTestDSWE4715", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent267", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE472", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.3989962Z'\"", + "name": "AzTestDSWE472", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent243", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4721", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.3706498Z'\"", + "name": "AzTestDSWE4721", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent295", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4734", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.8337155Z'\"", + "name": "AzTestDSWE4734", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent270", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4755", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A25.2712759Z'\"", + "name": "AzTestDSWE4755", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent81", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4779", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A27.5076680Z'\"", + "name": "AzTestDSWE4779", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent0", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4791", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A04.6828938Z'\"", + "name": "AzTestDSWE4791", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent170", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4798", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.0073520Z'\"", + "name": "AzTestDSWE4798", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent263", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE480", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A22.9077505Z'\"", + "name": "AzTestDSWE480", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent25", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4847", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.7028912Z'\"", + "name": "AzTestDSWE4847", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent204", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4876", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.9847854Z'\"", + "name": "AzTestDSWE4876", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent68", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4900", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.4029367Z'\"", + "name": "AzTestDSWE4900", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent105", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4918", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A34.5280091Z'\"", + "name": "AzTestDSWE4918", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent296", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4928", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A34.2882196Z'\"", + "name": "AzTestDSWE4928", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent293", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4930", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.2381803Z'\"", + "name": "AzTestDSWE4930", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent113", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4945", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.8423994Z'\"", + "name": "AzTestDSWE4945", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent15", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4967", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.9379456Z'\"", + "name": "AzTestDSWE4967", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent180", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4969", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.5893926Z'\"", + "name": "AzTestDSWE4969", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent54", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4983", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.5497139Z'\"", + "name": "AzTestDSWE4983", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent151", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5011", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.4588661Z'\"", + "name": "AzTestDSWE5011", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent290", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5082", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A32.2694295Z'\"", + "name": "AzTestDSWE5082", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent248", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5136", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A17.8863220Z'\"", + "name": "AzTestDSWE5136", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent206", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5141", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A05.5484906Z'\"", + "name": "AzTestDSWE5141", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent266", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5166", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A23.9283342Z'\"", + "name": "AzTestDSWE5166", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent282", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5207", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A29.4970655Z'\"", + "name": "AzTestDSWE5207", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent203", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5223", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.7146038Z'\"", + "name": "AzTestDSWE5223", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent20", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5233", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.3237629Z'\"", + "name": "AzTestDSWE5233", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent249", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5253", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A18.1831872Z'\"", + "name": "AzTestDSWE5253", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent286", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5255", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A30.9049829Z'\"", + "name": "AzTestDSWE5255", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent29", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5263", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.8904269Z'\"", + "name": "AzTestDSWE5263", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent255", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5351", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A20.4543884Z'\"", + "name": "AzTestDSWE5351", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent55", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5385", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.7997319Z'\"", + "name": "AzTestDSWE5385", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent89", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5394", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.7703365Z'\"", + "name": "AzTestDSWE5394", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent17", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE541", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A09.4692151Z'\"", + "name": "AzTestDSWE541", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent241", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5439", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A15.7994161Z'\"", + "name": "AzTestDSWE5439", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent223", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5460", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.3032105Z'\"", + "name": "AzTestDSWE5460", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent268", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5479", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.6802546Z'\"", + "name": "AzTestDSWE5479", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent192", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5483", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.1670463Z'\"", + "name": "AzTestDSWE5483", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent114", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5486", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.1393156Z'\"", + "name": "AzTestDSWE5486", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent126", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5554", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.1205470Z'\"", + "name": "AzTestDSWE5554", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent256", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5559", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A20.7200407Z'\"", + "name": "AzTestDSWE5559", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent50", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5585", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.4534330Z'\"", + "name": "AzTestDSWE5585", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent125", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE568", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.8861587Z'\"", + "name": "AzTestDSWE568", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent230", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5741", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.3059271Z'\"", + "name": "AzTestDSWE5741", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent120", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE58", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A39.0692471Z'\"", + "name": "AzTestDSWE58", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent44", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5810", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.9117573Z'\"", + "name": "AzTestDSWE5810", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent141", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5815", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A45.4055476Z'\"", + "name": "AzTestDSWE5815", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent173", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5858", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A55.0097893Z'\"", + "name": "AzTestDSWE5858", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent251", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5866", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A18.9931389Z'\"", + "name": "AzTestDSWE5866", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent187", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5888", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A59.4332080Z'\"", + "name": "AzTestDSWE5888", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent18", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5905", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A09.7599986Z'\"", + "name": "AzTestDSWE5905", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent224", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6027", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.6395291Z'\"", + "name": "AzTestDSWE6027", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent235", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE607", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.7282386Z'\"", + "name": "AzTestDSWE607", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent100", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6099", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.1319662Z'\"", + "name": "AzTestDSWE6099", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent6", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6122", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.3186640Z'\"", + "name": "AzTestDSWE6122", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent24", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6218", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.4528829Z'\"", + "name": "AzTestDSWE6218", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent149", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE622", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A47.9407875Z'\"", + "name": "AzTestDSWE622", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent209", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6222", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.3453921Z'\"", + "name": "AzTestDSWE6222", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent60", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6240", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A21.2372832Z'\"", + "name": "AzTestDSWE6240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent216", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6251", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.2849036Z'\"", + "name": "AzTestDSWE6251", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent195", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6274", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A02.1829375Z'\"", + "name": "AzTestDSWE6274", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent98", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6296", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A32.3491070Z'\"", + "name": "AzTestDSWE6296", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent261", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6301", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A22.1811938Z'\"", + "name": "AzTestDSWE6301", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent7", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6404", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.7093003Z'\"", + "name": "AzTestDSWE6404", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent3", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6406", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.5617435Z'\"", + "name": "AzTestDSWE6406", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent123", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6432", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.2886854Z'\"", + "name": "AzTestDSWE6432", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent110", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6439", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.9811949Z'\"", + "name": "AzTestDSWE6439", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent233", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6451", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.1344490Z'\"", + "name": "AzTestDSWE6451", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent22", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6486", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.9653354Z'\"", + "name": "AzTestDSWE6486", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent19", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6505", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.0582011Z'\"", + "name": "AzTestDSWE6505", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent166", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6514", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A52.8955201Z'\"", + "name": "AzTestDSWE6514", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent225", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6518", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.9395226Z'\"", + "name": "AzTestDSWE6518", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent70", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6537", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A24.0123335Z'\"", + "name": "AzTestDSWE6537", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent179", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6547", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.3394082Z'\"", + "name": "AzTestDSWE6547", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent103", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6556", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.9457044Z'\"", + "name": "AzTestDSWE6556", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent234", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6718", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.4313542Z'\"", + "name": "AzTestDSWE6718", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent108", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6724", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.4186784Z'\"", + "name": "AzTestDSWE6724", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent27", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6741", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.3279180Z'\"", + "name": "AzTestDSWE6741", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent72", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6796", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A24.5764501Z'\"", + "name": "AzTestDSWE6796", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent299", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6826", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A35.2579899Z'\"", + "name": "AzTestDSWE6826", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent297", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6829", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A34.6319483Z'\"", + "name": "AzTestDSWE6829", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent85", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6893", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A28.5887776Z'\"", + "name": "AzTestDSWE6893", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent41", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6974", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.1249736Z'\"", + "name": "AzTestDSWE6974", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent279", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7008", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A28.3876585Z'\"", + "name": "AzTestDSWE7008", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent281", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7014", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A29.1220764Z'\"", + "name": "AzTestDSWE7014", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent272", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7068", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.0213457Z'\"", + "name": "AzTestDSWE7068", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent260", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7080", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A21.8686663Z'\"", + "name": "AzTestDSWE7080", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent124", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7166", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.5423724Z'\"", + "name": "AzTestDSWE7166", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent42", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7178", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.3906307Z'\"", + "name": "AzTestDSWE7178", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/dataSources?$filter=kind+eq+'WindowsEvent'&api-version=2020-03-01-preview&$skiptoken=AzTestDSWE7191" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json new file mode 100644 index 000000000000..cafa8f3d8c16 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "Cluster", + "parameters": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "ProvisioningAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "201": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "ProvisioningAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json new file mode 100644 index 000000000000..3c6587833e9a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "linkedServiceName": "Cluster", + "workspaceName": "TestLinkWS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "Deleting" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json new file mode 100644 index 000000000000..630577c84ed7 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "Cluster", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json new file mode 100644 index 000000000000..4e66b00ee184 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.Automation/automationAccounts/TestAccount", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/automation", + "name": "TestLinkWS/Automation", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + }, + { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/TestCluster", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json new file mode 100644 index 000000000000..56974c5a0582 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "parameters": { + "properties": { + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json new file mode 100644 index 000000000000..8fe473711094 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "dataSourceType": "CustomLogs", + "workspaceName": "testLinkStorageAccountsWS", + "resourceGroupName": "mms-eus", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json new file mode 100644 index 000000000000..605dc2a88c44 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json new file mode 100644 index 000000000000..88e9d2fd376b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + }, + { + "properties": { + "dataSourceType": "AzureWatson", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageC" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/AzureWatson", + "name": "AzureWatson", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json new file mode 100644 index 000000000000..b33d531e01c1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "location": "West US", + "asyncOperationId": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/locations/westus/operationStatuses/713192d7-503f-477a-9cfe-4efc3ee2bd11", + "name": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "startTime": "2017-01-01T13:13:13.933Z", + "endTime": "2017-01-01T16:13:13.933Z", + "status": "Succeeded" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json new file mode 100644 index 000000000000..0e38965a812c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json @@ -0,0 +1,327 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.OperationalInsights/workspaces/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Create Workspace", + "description": "Creates a new workspace or links to an existing workspace by providing the customer id from the existing workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Get Workspace", + "description": "Gets an existing workspace" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Delete Workspace", + "description": "Deletes a workspace. If the workspace was linked to an existing workspace at creation time then the workspace it was linked to is not deleted." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/generateregistrationcertificate/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Registration Certificate", + "operation": "Generates Registration Certificate for Workspace.", + "description": "Generates Registration Certificate for the workspace. This Certificate is used to connect Microsoft System Center Operation Manager to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Create Storage Configuration", + "description": "Creates a new storage configuration. These configurations are used to pull data from a location in an existing storage account." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Get Storage Configuration", + "description": "Gets a storage configuration." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Delete Storage Configuration", + "description": "Deletes a storage configuration. This will stop Microsoft Operational Insights from reading data from the storage account." + } + }, + { + "name": "Microsoft.OperationalInsights/register/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Register", + "operation": "Register a subscription to a resource provider.", + "description": "Register a subscription to a resource provider." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/sharedKeys/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Shared Keys", + "operation": "List Workspace Shared Keys", + "description": "Retrieves the shared keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/sharedKeys/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Shared Keys", + "operation": "List Workspace Shared Keys", + "description": "Retrieves the shared keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/listKeys/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "List Keys", + "operation": "List Workspace Keys", + "description": "Retrieves the list keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/listKeys/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "List Keys", + "operation": "List Workspace Keys", + "description": "Retrieves the list keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/managementGroups/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Management Group", + "operation": "Get Management Groups for Workspace", + "description": "Gets the names and metadata for System Center Operations Manager management groups connected to this workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/usages/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Usage Metric", + "operation": "Get Usage Data for Workspace", + "description": "Gets usage data for a workspace including the amount of data read by the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/search/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Search", + "operation": "Search Workspace Data", + "description": "Executes a search query" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Search Schema", + "operation": "Get Search Schema", + "description": "Gets the search schema for the workspace. Search schema includes the exposed fields and their types." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/datasources/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Data Source", + "operation": "Get datasources under a workspace.", + "description": "Get datasources under a workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/datasources/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Data Source", + "operation": "Create/Update datasources under a workspace.", + "description": "Create/Update datasources under a workspace." + } + }, + {}, + {}, + {}, + {}, + { + "name": "Microsoft.OperationalInsights/workspaces/notificationSettings/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Notification Settings", + "operation": "Get Notification Settings", + "description": "Get the user's notification settings for the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/notificationSettings/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Notification Settings", + "operation": "Put Notification Settings", + "description": "Set the user's notification settings for the workspace." + } + }, + {}, + {}, + {}, + { + "name": "Microsoft.OperationalInsights/workspaces/configurationScopes/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Configuration Scope", + "operation": "Delete Configuration Scope", + "description": "Delete Configuration Scope" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Get linked services under given workspace.", + "description": "Get linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Create/Update linked services under given workspace.", + "description": "Create/Update linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Delete linked services under given workspace.", + "description": "Delete linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "List Intelligence Packs", + "description": "Lists all intelligence packs that are visible for a given worksapce and also lists whether the pack is enabled or disabled for that workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/enable/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "Enable Intelligence Pack", + "description": "Enables an intelligence pack for a given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/disable/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "Disable Intelligence Pack", + "description": "Disables an intelligence pack for a given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/analytics/query/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Search using new engine.", + "description": "Search using new engine." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/analytics/query/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Get search schema V2.", + "description": "Get search schema V2." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/api/query/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Search using new engine.", + "description": "Search using new engine." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/api/query/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Get search schema V2.", + "description": "Get search schema V2." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/purge/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Delete specified data from workspace", + "description": "Delete specified data from workspace" + } + }, + { + "name": "Microsoft.OperationalInsights/linkTargets/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Unlinked Account", + "operation": "List Unlinked Accounts", + "description": "Lists existing accounts that are not associated with an Azure subscription. To link this Azure subscription to a workspace, use a customer id returned by this operation in the customer id property of the Create Workspace operation." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Metric Definitions", + "operation": "Metric Definition operation", + "description": "Get Metric Definitions under workspace" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json new file mode 100644 index 000000000000..e81c0c9b4608 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "atlantisdemo", + "api-version": "2020-03-01-preview", + "parameters": { + "top": 25, + "query": "*" + }, + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "metadata": { + "schema": { + "name": "CloudOps", + "version": 2 + }, + "resultType": "schema", + "requestTime": 28 + }, + "value": [ + { + "name": "TenantId", + "displayName": "TenantId", + "type": "Guid", + "indexed": true, + "stored": false, + "facet": false, + "ownerType": [ + "Alert", + "AzureActivity", + "AzureAudit", + "AzureMetrics", + "ComputerGroup", + "ETWEvent", + "Event", + "ExtraHopDBLogin", + "ExtraHopDBTransaction", + "ExtraHopDNSResponse", + "ExtraHopFTPResponse", + "ExtraHopHTTPTransaction", + "ExtraHopSMTPMessage", + "ExtraHopSYNScanDetect", + "ExtraHopTCPOpen", + "Heartbeat", + "Operation", + "Perf", + "ReservedAzureCommonFields", + "ReservedCommonFields", + "ServiceFabricOperationalEvent", + "ServiceFabricReliableActorEvent", + "ServiceFabricReliableServiceEvent", + "Syslog", + "Usage", + "W3CIISLog" + ] + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json new file mode 100644 index 000000000000..25158ff857e8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "Category": " Saved Search Test Category", + "DisplayName": "Create or Update Saved Search Test", + "Query": "* | measure Count() by Computer", + "Tags": [ + { + "Name": "Group", + "Value": "Computer" + } + ], + "Version": 1 + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json new file mode 100644 index 000000000000..e670c1ffd1b3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "1234" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + }, + "201": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json new file mode 100644 index 000000000000..51daff453fa3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json new file mode 100644 index 000000000000..5885e10467dd --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Account Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json new file mode 100644 index 000000000000..f043f17313df --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json new file mode 100644 index 000000000000..b9f85bfed367 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "workspace1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "serviceTier": "PerNode", + "enabled": true, + "minimumRetention": 7, + "maximumRetention": 30, + "defaultRetention": 7 + }, + { + "serviceTier": "CapacityReservation", + "enabled": true, + "minimumRetention": 30, + "maximumRetention": 300, + "defaultRetention": 30, + "capacityReservationLevel": 200, + "lastSkuUpdate": "2020-02-04T08:55:03.871Z" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json new file mode 100644 index 000000000000..c94b85a920c2 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "parameters": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "202": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json new file mode 100644 index 000000000000..b07a3f9081d1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json new file mode 100644 index 000000000000..e6056592ee9f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json new file mode 100644 index 000000000000..dcb9915c2ca1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "intelligencePackName": "ChangeTracking", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json new file mode 100644 index 000000000000..dcb9915c2ca1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "intelligencePackName": "ChangeTracking", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json new file mode 100644 index 000000000000..d86d8188b821 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "gatewayId": "00000000-0000-0000-0000-00000000000", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json new file mode 100644 index 000000000000..efcc73efb27e --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "sku": { + "name": "free" + }, + "retentionInDays": 7, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/workspaces/testresourcelock", + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "eastus" + }, + { + "properties": { + "customerId": "4884a2fd-b08f-4aa6-bf16-5757df1093fe", + "provisioningState": "Succeeded", + "sku": { + "name": "free" + }, + "retentionInDays": 7, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/southukws", + "name": "SouthUKWS", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "East US" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json new file mode 100644 index 000000000000..33d8d49fb5dc --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "primarySharedKey": "BozLY1JnZbxu0jWUQSY8iRPEM8ObmpP8rW+8bUl3+HpDJI+n689SxXgTgU7k1qdxo/WugRLxechxbolAfHM5uA==", + "secondarySharedKey": "7tDt5W0JBrCQKtQA3igfFltLSzJeyr9LmuT+B/ibzd8cdC1neZ1ePOQLBx5NUzc0q2VUIK0cLhWNyFvo/hT8Ww==" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json new file mode 100644 index 000000000000..d224636c8266 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Succeeded", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json new file mode 100644 index 000000000000..a2feef38f3fd --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json @@ -0,0 +1,244 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "name": "CapacityPerformance", + "enabled": false, + "displayName": "Capacity and Performance" + }, + { + "name": "AzureWebAppsAnalytics", + "enabled": false, + "displayName": "Azure Web Apps Analytics (Preview)" + }, + { + "name": "Security", + "enabled": false, + "displayName": "Security and Audit" + }, + { + "name": "Updates", + "enabled": false, + "displayName": "Update Management" + }, + { + "name": "AntiMalware", + "enabled": false, + "displayName": "Antimalware Assessment" + }, + { + "name": "LogManagement", + "enabled": true, + "displayName": "Log Management" + }, + { + "name": "ChangeTracking", + "enabled": true, + "displayName": "Change Tracking" + }, + { + "name": "SQLAssessment", + "enabled": false, + "displayName": "SQL Assessment" + }, + { + "name": "SCOMAssessment", + "enabled": false, + "displayName": "System Center Operations Manager Assessment (Preview)" + }, + { + "name": "ServiceDesk", + "enabled": false, + "displayName": "IT Service Management Connector(Preview)" + }, + { + "name": "ADAssessment", + "enabled": false, + "displayName": "AD Assessment" + }, + { + "name": "AlertManagement", + "enabled": false, + "displayName": "Alert Management" + }, + { + "name": "AzureAutomation", + "enabled": false, + "displayName": "Azure Automation" + }, + { + "name": "WireData", + "enabled": false, + "displayName": "Wire Data" + }, + { + "name": "SiteRecovery", + "enabled": true, + "displayName": "Azure Site Recovery" + }, + { + "name": "Backup", + "enabled": false, + "displayName": "Backup" + }, + { + "name": "SurfaceHub", + "enabled": false, + "displayName": "Surface Hub" + }, + { + "name": "NetworkMonitoring", + "enabled": false, + "displayName": "Network Performance Monitor" + }, + { + "name": "Containers", + "enabled": false, + "displayName": "Container Monitoring Solution" + }, + { + "name": "ServiceMap", + "enabled": false, + "displayName": "Service Map" + }, + { + "name": "AzureNetworking", + "enabled": false, + "displayName": "Azure Networking Analytics (Deprecated)" + }, + { + "name": "ADReplication", + "enabled": false, + "displayName": "AD Replication Status" + }, + { + "name": "Office365", + "enabled": false, + "displayName": "Office 365 (Preview)" + }, + { + "name": "CompatibilityAssessment", + "enabled": false, + "displayName": "Upgrade Readiness" + }, + { + "name": "KeyVault", + "enabled": false, + "displayName": "Key Vault (Deprecated)" + }, + { + "name": "ServiceFabric", + "enabled": false, + "displayName": "Service Fabric" + }, + { + "name": "DnsAnalytics", + "enabled": false, + "displayName": "DNS Analytics (Preview)" + }, + { + "name": "ApplicationInsights", + "enabled": false, + "displayName": "Application Insights (Preview)" + }, + { + "name": "WireData2", + "enabled": false, + "displayName": "Wire Data 2.0" + }, + { + "name": "WaaSUpdateInsights", + "enabled": false, + "displayName": "Update Compliance (Preview)" + }, + { + "name": "AgentHealthAssessment", + "enabled": false, + "displayName": "Agent Health " + }, + { + "name": "AzureActivity", + "enabled": false, + "displayName": "Activity Log Analytics" + }, + { + "name": "HDInsight", + "enabled": false, + "displayName": "HDInsight HBase Monitoring (Preview)" + }, + { + "name": "HDInsightKafka", + "enabled": false, + "displayName": "HDInsight Kafka Monitoring" + }, + { + "name": "HDInsightSpark", + "enabled": false, + "displayName": "HDInsight Spark Monitoring" + }, + { + "name": "VMware", + "enabled": false, + "displayName": "VMware (Preview)" + }, + { + "name": "SecurityCenterFree", + "enabled": false, + "displayName": "Security Center Free � for Azure Resources only" + }, + { + "name": "LogicAppsManagement", + "enabled": false, + "displayName": "Logic Apps Management" + }, + { + "name": "LogicAppB2B", + "enabled": false, + "displayName": "Logic Apps B2B" + }, + { + "name": "AzureSQLAnalytics", + "enabled": false, + "displayName": "Azure SQL Analytics (Preview)" + }, + { + "name": "KeyVaultAnalytics", + "enabled": false, + "displayName": "Key Vault Analytics" + }, + { + "name": "AzureNSGAnalytics", + "enabled": false, + "displayName": "Azure Network Security Group Analytics" + }, + { + "name": "AzureAppGatewayAnalytics", + "enabled": false, + "displayName": "Azure Application Gateway Analytics" + }, + { + "name": "DeviceHealthProd", + "enabled": false, + "displayName": "Device Health (Preview)" + }, + { + "name": "WindowsDefenderATP", + "enabled": false, + "displayName": "Windows Defender ATP" + }, + { + "name": "ProcessInvestigator", + "enabled": false, + "displayName": "ProcessInvestigator" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json new file mode 100644 index 000000000000..72136d3e8d1f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json new file mode 100644 index 000000000000..a23fc4b3ca29 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": { + "value": "DataAnalyzed", + "localizedValue": "Data Analyzed" + }, + "unit": "Bytes", + "currentValue": 0.0, + "limit": 524288000.0, + "nextResetTime": "2017-10-03T00:00:00Z", + "quotaPeriod": "P1D" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json new file mode 100644 index 000000000000..7d4db15ababf --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.operationalinsights/workspaces/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2020-03-01-preview" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json new file mode 100644 index 000000000000..61d0d9824fc4 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json new file mode 100644 index 000000000000..f3fab89f1d85 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "workspace1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "primarySharedKey": "BozLY1JnZbxu0jWUQSY8iRPEM8ObmpP8rW+8bUl3+HpDJI+n689SxXgTgU7k1qdxo/WugRLxechxbolAfHM5uA==", + "secondarySharedKey": "7tDt5W0JBrCQKtQA3igfFltLSzJeyr9LmuT+B/ibzd8cdC1neZ1ePOQLBx5NUzc0q2VUIK0cLhWNyFvo/hT8Ww==" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json new file mode 100644 index 000000000000..d9f102616395 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "parameters": { + "properties": { + "category": "Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "Heartbeat | summarize Count() by Computer", + "version": 2, + "tags": [ + { + "name": "Group", + "value": "Computer" + } + ] + } + }, + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "category": "Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "Heartbeat | summarize Count() by Computer", + "version": 2 + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json new file mode 100644 index 000000000000..2f612b2b05e1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "category": " Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "* | measure Count() by Computer", + "version": 1 + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json new file mode 100644 index 000000000000..0c20f9322a97 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Succeeded", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json new file mode 100644 index 000000000000..215199c746ab --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "parameters": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30 + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/common/v1/types.json b/specification/operationalinsights/resource-manager/common/v1/types.json new file mode 100644 index 000000000000..5a41f183db8f --- /dev/null +++ b/specification/operationalinsights/resource-manager/common/v1/types.json @@ -0,0 +1,22 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0", + "title": "Common types for Microsoft.OperationalInsights" + }, + "paths": {}, + "definitions": {}, + "parameters": { + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the workspace.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/readme.go.md b/specification/operationalinsights/resource-manager/readme.go.md index 10b7867a8fc2..9f22e296b82a 100644 --- a/specification/operationalinsights/resource-manager/readme.go.md +++ b/specification/operationalinsights/resource-manager/readme.go.md @@ -15,6 +15,7 @@ go: batch: - tag: package-2015-03 - tag: package-2015-11-preview + - tag: package-2020-03-preview ``` ### Tag: package-2015-03 and go @@ -33,4 +34,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-03-01-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index 472b40dcd15e..d05cc07729fb 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the OperationalInsights API. title: OperationalInsightsManagementClient description: Operational Insights Client openapi-type: arm -tag: package-2015-11-preview +tag: package-2020-03-preview ``` @@ -38,6 +38,7 @@ These settings apply only when `--tag=package-2015-11-preview` is specified on t ``` yaml $(tag) == 'package-2015-11-preview' input-file: +- Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json - Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json ``` @@ -57,9 +58,37 @@ These settings apply only when `--tag=package-2019-08-preview` is specified on t ``` yaml $(tag) == 'package-2019-08-preview' input-file: - Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +- Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json - Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json ``` +### Tag: package-2020-03-preview + +These settings apply only when `--tag=package-2020-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-preview' +input-file: +- Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json +``` + --- # Code Generation @@ -104,7 +133,15 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. -``` yaml $(python) +``` yaml $(python) && !$(track2) +directive: + - from: swagger-document + where: $.info + transform: > + $.title = 'LogAnalyticsManagementClient'; + $.description = 'The Log Analytics Client.'; + return $; + python-mode: create python: azure-arm: true @@ -112,16 +149,14 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.loganalytics package-name: azure-mgmt-loganalytics - title: LogAnalyticsManagementClient - description: The Log Analytics Client. clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(python-mode) == 'update' && !$(track2) python: no-namespace-folders: true output-folder: $(python-sdks-folder)/loganalytics/azure-mgmt-loganalytics/azure/mgmt/loganalytics ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' && !$(track2) python: basic-setup-py: true output-folder: $(python-sdks-folder)/loganalytics/azure-mgmt-loganalytics @@ -157,10 +192,30 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json - $(this-folder)/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json ``` diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json index 3b1aee136fbb..cc4c84a1ec12 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json @@ -35,7 +35,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "Edge" }, @@ -97,7 +97,7 @@ ], "useForPeeringService": true, "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "Edge" }, @@ -106,7 +106,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } }, @@ -152,7 +152,7 @@ ], "useForPeeringService": true, "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "Edge" }, @@ -161,7 +161,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json index 02bd2a07c9ce..785faa412c45 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json @@ -36,7 +36,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0" @@ -92,7 +92,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -100,7 +100,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } }, @@ -150,7 +150,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -158,7 +158,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json index 700c41f6e776..dc0906ee204d 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json @@ -53,7 +53,7 @@ "validationState": "Pending" }, "name": "peerAsnName", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", "type": "Microsoft.Peering/peerAsns" } }, @@ -82,7 +82,7 @@ "validationState": "Pending" }, "name": "peerAsnName", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", "type": "Microsoft.Peering/peerAsns" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json index d0fc08e950a0..f45470323acc 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "api-version": "2020-01-01-preview", "peeringService": { "properties": { @@ -21,8 +21,8 @@ "provisioningState": "Succeeded" }, "location": "eastus", - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } }, @@ -34,8 +34,8 @@ "provisioningState": "Succeeded" }, "location": "eastus", - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json index 83c542b891e5..da82c884dc22 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "prefixName": "peeringServicePrefixName", "api-version": "2020-01-01-preview", "peeringServicePrefix": { @@ -24,7 +24,7 @@ "provisioningState": "Succeeded" }, "name": "peeringServicePrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" } }, "201": { @@ -38,7 +38,7 @@ "provisioningState": "Succeeded" }, "name": "peeringServicePrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" } } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json index abef881df319..df95cd8b7bf4 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json @@ -28,7 +28,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "IxRs" }, @@ -71,7 +71,7 @@ ], "useForPeeringService": true, "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "IxRs" }, @@ -80,7 +80,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } }, @@ -117,7 +117,7 @@ ], "useForPeeringService": true, "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" }, "directPeeringType": "IxRs" }, @@ -126,7 +126,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json index c42c482de5b3..07d7f4ce0c5c 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded" }, "name": "registeredAsnName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName", "type": "Microsoft.Peering/registeredAsns" } }, @@ -32,7 +32,7 @@ "provisioningState": "Succeeded" }, "name": "registeredAsnName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName", "type": "Microsoft.Peering/registeredAsns" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json index 9efc12f8c927..c3323405d391 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json @@ -20,7 +20,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", "type": "Microsoft.Peering/registeredPrefixes" } }, @@ -32,7 +32,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", "type": "Microsoft.Peering/registeredPrefixes" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json index f99adf7432ec..020b49020ff8 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "api-version": "2020-01-01-preview" }, "responses": { diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json index 57d3dc1387d5..0df5436d9e30 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "prefixName": "peeringServicePrefixName", "api-version": "2020-01-01-preview" }, diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json index 5d1e318af183..1aa9e5dd6022 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json @@ -30,7 +30,7 @@ "validationState": "Approved" }, "name": "peerAsnName", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", "type": "Microsoft.Peering/peerAsns" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json index 786d2b0205ac..f580915c073b 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json @@ -52,7 +52,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -60,7 +60,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json index 819b5d6427ee..6f7d54f27d57 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "api-version": "2020-01-01-preview" }, "responses": { @@ -14,8 +14,8 @@ "provisioningState": "Succeeded" }, "location": "eastus", - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json index fca53c8f0775..e043119b8ee0 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "prefixName": "peeringServicePrefixName", "api-version": "2020-01-01-preview" }, @@ -17,7 +17,7 @@ "provisioningState": "Succeeded" }, "name": "peeringServicePrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" } } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json index 175c642872e9..a5e9fd0cfdb7 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json @@ -15,7 +15,7 @@ "provisioningState": "Succeeded" }, "name": "registeredAsnName0", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName0", "type": "Microsoft.Peering/registeredAsns" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json index 6873353ba0c6..023ee3381f17 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json @@ -15,7 +15,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", "type": "Microsoft.Peering/registeredPrefixes" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json index ec9714008b04..53705788ea44 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json @@ -41,7 +41,7 @@ "country": "country1" }, "name": "peeringLocation1", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation1", "type": "Microsoft.Peering/peeringLocations" }, { @@ -71,7 +71,7 @@ "country": "country2" }, "name": "peeringLocation2", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation2", "type": "Microsoft.Peering/peeringLocations" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json index 6ec5d00a0aae..fb05f1fbe3d5 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json @@ -39,7 +39,7 @@ "country": "country1" }, "name": "peeringLocation1", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation1", "type": "Microsoft.Peering/peeringLocations" }, { @@ -63,7 +63,7 @@ "country": "country2" }, "name": "peeringLocation2", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation2", "type": "Microsoft.Peering/peeringLocations" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json index e4cce08e018b..c925a3b6fa21 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json @@ -63,7 +63,7 @@ }, "location": "centralus", "name": "peeringName", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json index 068a5da2e851..2d1c7615c6bd 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json @@ -31,7 +31,7 @@ "validationState": "Approved" }, "name": "peerAsnName", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", "type": "Microsoft.Peering/peerAsns" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json index b365564e18a8..cadea26d6d81 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json @@ -9,12 +9,12 @@ "value": [ { "name": "country1", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceCountries/country1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceCountries/country1", "type": "Microsoft.Peering/peeringServiceCountries" }, { "name": "country2", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceCountries/country2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceCountries/country2", "type": "Microsoft.Peering/peeringServiceCountries" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json index 2d057117c0fd..58900a24c376 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json @@ -14,7 +14,7 @@ "state": "state1" }, "name": "peeringServiceLocation1", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation1", "type": "Microsoft.Peering/peeringServiceLocations" }, { @@ -23,7 +23,7 @@ "state": "state2" }, "name": "peeringServiceLocation2", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation2", "type": "Microsoft.Peering/peeringServiceLocations" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json index 15298f7070f3..b48dd2582c12 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json @@ -12,7 +12,7 @@ "serviceProviderName": "peeringServiceProvider1" }, "name": "peeringServiceProvider1", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider1", "type": "Microsoft.Peering/peeringServiceProviders" }, { @@ -20,7 +20,7 @@ "serviceProviderName": "peeringServiceProvider2" }, "name": "peeringServiceProvider2", - "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider2", "type": "Microsoft.Peering/peeringServiceProviders" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json index 200b578c3fa3..dde79deace71 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json @@ -15,8 +15,8 @@ "provisioningState": "Succeeded" }, "location": "eastus", - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json index 3e27ca404f22..78159648137d 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json @@ -14,8 +14,8 @@ "provisioningState": "Succeeded" }, "location": "eastus", - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json index 509dbffaaed9..e27efe4e96a5 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json @@ -53,7 +53,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -61,7 +61,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json index 0ffa521cd353..64a3b8d4c063 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json @@ -52,7 +52,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -60,7 +60,7 @@ }, "location": "eastus", "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json index bf451c45b7e8..c5457dc53f63 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "api-version": "2020-01-01-preview" }, "responses": { @@ -18,7 +18,7 @@ "provisioningState": "Succeeded" }, "name": "peeringServicePrefixName1", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix1" }, { "properties": { @@ -29,7 +29,7 @@ "provisioningState": "Succeeded" }, "name": "peeringServicePrefixName2", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName2" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix2" } ] } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json index 1782a68e185b..3f434fc4ae03 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json @@ -16,7 +16,7 @@ "provisioningState": "Succeeded" }, "name": "registeredAsnName0", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName0", "type": "Microsoft.Peering/registeredAsns" }, { @@ -25,7 +25,7 @@ "provisioningState": "Failed" }, "name": "registeredAsnName1", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName1", "type": "Microsoft.Peering/registeredAsns" }, { @@ -35,7 +35,7 @@ "provisioningState": "Succeeded" }, "name": "registeredAsnName2", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName2", "type": "Microsoft.Peering/registeredAsns" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json index 31ff586c0881..a33c56e28bbb 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json @@ -16,7 +16,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName0", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix0", "type": "Microsoft.Peering/registeredPrefixes" }, { @@ -26,7 +26,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName1", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix1", "type": "Microsoft.Peering/registeredPrefixes" }, { @@ -35,7 +35,7 @@ "provisioningState": "Succeeded" }, "name": "registeredPrefixName2", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix2", "type": "Microsoft.Peering/registeredPrefixes" } ] diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json index 9771c3acd41a..57d1e6b324ba 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subId", "resourceGroupName": "rgName", - "peeringServiceName": "peeringServiceName", + "myPeeringService": "myPeeringService", "api-version": "2020-01-01-preview", "tags": { "tags": { @@ -24,8 +24,8 @@ "tag0": "value0", "tag1": "value1" }, - "name": "peeringServiceName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", "type": "Microsoft.Peering/peeringServices" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json index 8db49313342e..00c4d103cb2c 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json @@ -58,7 +58,7 @@ } ], "peerAsn": { - "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" } }, "peeringLocation": "peeringLocation0", @@ -70,7 +70,7 @@ "tag1": "value1" }, "name": "peeringName", - "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", "type": "Microsoft.Peering/peerings" } } diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CheckServiceProviderAvailability.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CheckServiceProviderAvailability.json new file mode 100644 index 000000000000..fa2539dc946d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CheckServiceProviderAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01", + "checkServiceProviderAvailabilityInput": { + "peeringServiceLocation": "peeringServiceLocation1", + "peeringServiceProvider": "peeringServiceProvider1" + } + }, + "responses": { + "200": { + "body": "Available" + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateDirectPeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateDirectPeering.json new file mode 100644 index 000000000000..e8624e9a3904 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateDirectPeering.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "peering": { + "sku": { + "name": "Basic_Direct_Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "ProvisioningFailed", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16", + "errorMessage": "IPv4 address is already configured with a different ASN" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.1.0/31", + "sessionPrefixV6": "fd00::2/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateExchangePeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateExchangePeering.json new file mode 100644 index 000000000000..236bb1d470fe --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateExchangePeering.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "peering": { + "sku": { + "name": "Basic_Exchange_Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "ProvisioningFailed", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D", + "errorMessage": "IPv4 address is already configured with a different ASN" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeerAsn.json new file mode 100644 index 000000000000..81f98149ebc5 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeerAsn.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-04-01", + "peerAsn": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + }, + "201": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringService.json new file mode 100644 index 000000000000..e79dfcffd239 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringService.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2020-04-01", + "peeringService": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + }, + "201": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringServicePrefix.json new file mode 100644 index 000000000000..e4502ffa869b --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringServicePrefix.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-04-01", + "peeringServicePrefix": { + "properties": { + "prefix": "192.168.1.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Failed", + "learnedType": "None", + "errorMessage": "Prefix is not announced by the service provider to Microsoft.", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + }, + "201": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Failed", + "learnedType": "None", + "errorMessage": "Prefix is not announced by the service provider to Microsoft.", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringWithExchangeRouteServer.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringWithExchangeRouteServer.json new file mode 100644 index 000000000000..f0abdcc7113b --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreatePeeringWithExchangeRouteServer.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "peering": { + "sku": { + "name": "Premium_Direct_Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Premium_Direct_Free", + "tier": "Premium", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Premium_Direct_Free", + "tier": "Premium", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredAsn.json new file mode 100644 index 000000000000..49a5cf7c288d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredAsn.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredAsn": { + "properties": { + "asn": 65000 + } + }, + "registeredAsnName": "registeredAsnName" + }, + "responses": { + "200": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName", + "type": "Microsoft.Peering/registeredAsns" + } + }, + "201": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName", + "type": "Microsoft.Peering/registeredAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredPrefix.json new file mode 100644 index 000000000000..18be5c4678fb --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/CreateRegisteredPrefix.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredPrefix": { + "properties": { + "prefix": "10.22.20.0/24" + } + }, + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "prefixValidationState": "Verified", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "type": "Microsoft.Peering/registeredPrefixes" + } + }, + "201": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "prefixValidationState": "Pending", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "type": "Microsoft.Peering/registeredPrefixes" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeerAsn.json new file mode 100644 index 000000000000..74a23b81424c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeerAsn.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeering.json new file mode 100644 index 000000000000..e8359d6de923 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeering.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringService.json new file mode 100644 index 000000000000..5291cf4a11dd --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringService.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringServicePrefix.json new file mode 100644 index 000000000000..7f71ac0a56de --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeletePeeringServicePrefix.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-04-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredAsn.json new file mode 100644 index 000000000000..87fc0578ac9b --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredAsn.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredAsnName": "registeredAsnName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredPrefix.json new file mode 100644 index 000000000000..58d07cd545f7 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/DeleteRegisteredPrefix.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeerAsn.json new file mode 100644 index 000000000000..ea773936cf22 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeerAsn.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeering.json new file mode 100644 index 000000000000..443375563b88 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeering.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringReceivedRoutes.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringReceivedRoutes.json new file mode 100644 index 000000000000..a8906ac96789 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringReceivedRoutes.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "prefix": "1.1.1.0/24", + "asPath": "123 456", + "originAsValidationState": "Valid", + "rpkiValidationState": "Valid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "prefix": "1.1.1.0/24", + "nextHop": "127.0.0.1", + "asPath": "123 456", + "originAsValidationState": "Valid", + "rpkiValidationState": "Valid", + "trustAnchor": "Arin", + "receivedTimestamp": "2020-04-05 03:39:20" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringService.json new file mode 100644 index 000000000000..77d5b0f6f7c8 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringService.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringServicePrefix.json new file mode 100644 index 000000000000..77602097539d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetPeeringServicePrefix.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredAsn.json new file mode 100644 index 000000000000..1fc9fa9c2e00 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredAsn.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredAsnName": "registeredAsnName0" + }, + "responses": { + "200": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName0", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName0", + "type": "Microsoft.Peering/registeredAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredPrefix.json new file mode 100644 index 000000000000..9eaf6c5ec87f --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/GetRegisteredPrefix.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "prefixValidationState": "Verified", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName", + "type": "Microsoft.Peering/registeredPrefixes" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListDirectPeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListDirectPeeringLocations.json new file mode 100644 index 000000000000..fd7b8fae486e --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListDirectPeeringLocations.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Direct", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address1", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + }, + { + "address": "address3", + "directPeeringType": "Cdn", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address2", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListExchangePeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListExchangePeeringLocations.json new file mode 100644 index 000000000000..d62eb4be3751 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListExchangePeeringLocations.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name1", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.131.1", + "microsoftIPv6Address": "fd00::1:1", + "facilityIPv4Prefix": "192.168.128.0/17", + "facilityIPv6Prefix": "fd00::1000:0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + }, + { + "exchangeName": "name3", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.2", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/17", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name2", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.1", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/16", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListLegacyPeerings.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListLegacyPeerings.json new file mode 100644 index 000000000000..67f4e79364ef --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListLegacyPeerings.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "peeringLocation": "peeringLocation0", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "65000" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "name": "peeringName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeerAsnsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeerAsnsBySubscription.json new file mode 100644 index 000000000000..1089c47a525f --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeerAsnsBySubscription.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringOperations.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringOperations.json new file mode 100644 index 000000000000..65572f7e43d1 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringOperations.json @@ -0,0 +1,243 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Peering/register/action", + "display": { + "provider": "Microsoft.Peering", + "resource": "Peering Resource Provider", + "operation": "Registers the Peering Resource Provider", + "description": "Registers the subscription for the Peering Resource Provider and enables the creation of peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Write PeerAsn", + "description": "Write any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Read PeerAsn", + "description": "Read any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Delete PeerAsn", + "description": "Delete any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringLocations", + "operation": "Read PeeringLocation", + "description": "Read any peeringLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/legacyPeerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "legacyPeerings", + "operation": "Read LegacyPeering", + "description": "Read any legacyPeerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Write Peering", + "description": "Write any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Read Peering", + "description": "Read any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Delete Peering", + "description": "Delete any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceLocations", + "operation": "Read PeeringServiceLocations", + "description": "Read any peeringServiceLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceProviders/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceProviders", + "operation": "Read PeeringServiceProviders", + "description": "Read any peeringServiceProviders" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Read PeeringServices", + "description": "Read any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Write PeeringService", + "description": "Write any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Delete PeeringServices", + "description": "Delete any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Read PeeringServicePrefixes", + "description": "Read any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Write PeeringServicePrefixes", + "description": "Write any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Delete PeeringServicePrefixes", + "description": "Delete any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredPrefixes/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredPrefixes", + "operation": "Read RegisteredPrefixes", + "description": "Read any registeredPrefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredPrefixes/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredPrefixes", + "operation": "Write RegisteredPrefixes", + "description": "Write any registeredPrefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredPrefixes/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredPrefixes", + "operation": "Delete RegisteredPrefixes", + "description": "Delete any registeredPrefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredAsns/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredAsns", + "operation": "Read RegisteredAsns", + "description": "Read any registeredAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredAsns/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredAsns", + "operation": "Write RegisteredAsns", + "description": "Write any registeredAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/registeredAsns/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "registeredAsns", + "operation": "Delete RegisteredAsns", + "description": "Delete any registeredAsns" + }, + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceCountriesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceCountriesBySubscription.json new file mode 100644 index 000000000000..4da5b5a97720 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceCountriesBySubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "country1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceCountries/country1", + "type": "Microsoft.Peering/peeringServiceCountries" + }, + { + "name": "country2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceCountries/country2", + "type": "Microsoft.Peering/peeringServiceCountries" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceLocationsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceLocationsBySubscription.json new file mode 100644 index 000000000000..9c3e40c5bae0 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceLocationsBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "country": "country1", + "state": "state1" + }, + "name": "peeringServiceLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation1", + "type": "Microsoft.Peering/peeringServiceLocations" + }, + { + "properties": { + "country": "country2", + "state": "state2" + }, + "name": "peeringServiceLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation2", + "type": "Microsoft.Peering/peeringServiceLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceProviders.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceProviders.json new file mode 100644 index 000000000000..2d6bf7135a80 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServiceProviders.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "serviceProviderName": "peeringServiceProvider1" + }, + "name": "peeringServiceProvider1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider1", + "type": "Microsoft.Peering/peeringServiceProviders" + }, + { + "properties": { + "serviceProviderName": "peeringServiceProvider2" + }, + "name": "peeringServiceProvider2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider2", + "type": "Microsoft.Peering/peeringServiceProviders" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesByResourceGroup.json new file mode 100644 index 000000000000..d7fc375b050c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesByResourceGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesBySubscription.json new file mode 100644 index 000000000000..6efecd38d5e2 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringServicesBySubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsByResourceGroup.json new file mode 100644 index 000000000000..8a0cfa625ab0 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsByResourceGroup.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsBySubscription.json new file mode 100644 index 000000000000..02cc283a91f7 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPeeringsBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPrefixesByPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPrefixesByPeeringService.json new file mode 100644 index 000000000000..17149c961a8e --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListPrefixesByPeeringService.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName1", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName1" + }, + { + "properties": { + "prefix": "192.168.2.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName2", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName2" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredAsnsByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredAsnsByPeering.json new file mode 100644 index 000000000000..bf039171db23 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredAsnsByPeering.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName0", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName0", + "type": "Microsoft.Peering/registeredAsns" + }, + { + "properties": { + "asn": 65001, + "provisioningState": "Failed" + }, + "name": "registeredAsnName1", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName1", + "type": "Microsoft.Peering/registeredAsns" + }, + { + "properties": { + "asn": 65002, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName2", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredAsns/registeredAsnName2", + "type": "Microsoft.Peering/registeredAsns" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredPrefixesByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredPrefixesByPeering.json new file mode 100644 index 000000000000..2c2475f5a387 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/ListRegisteredPrefixesByPeering.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "prefix": "10.22.20.0/24", + "prefixValidationState": "Verified", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName0", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName0", + "type": "Microsoft.Peering/registeredPrefixes" + }, + { + "properties": { + "prefix": "10.22.21.0/24", + "prefixValidationState": "Verified", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName1", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName1", + "type": "Microsoft.Peering/registeredPrefixes" + }, + { + "properties": { + "prefix": "10.22.22.0/24", + "prefixValidationState": "Pending", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName2", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName/registeredPrefixes/registeredPrefixName2", + "type": "Microsoft.Peering/registeredPrefixes" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringServiceTags.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringServiceTags.json new file mode 100644 index 000000000000..93d4509e1c6d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringServiceTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2020-04-01", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringTags.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringTags.json new file mode 100644 index 000000000000..1161201f6038 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/examples/UpdatePeeringTags.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-04-01", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/peering.json b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/peering.json new file mode 100644 index 000000000000..d38f947a5b3d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/stable/2020-04-01/peering.json @@ -0,0 +1,3410 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "PeeringManagementClient", + "description": "APIs to manage Peering resources through the Azure Resource Manager." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/CheckServiceProviderAvailability": { + "post": { + "tags": [ + "CheckServiceProviderAvailability" + ], + "description": "Checks if the peering service provider is present within 1000 miles of customer's location", + "operationId": "CheckServiceProviderAvailability", + "parameters": [ + { + "name": "checkServiceProviderAvailabilityInput", + "in": "body", + "description": "The CheckServiceProviderAvailabilityInput indicating customer location and service provider.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckServiceProviderAvailabilityInput" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "enum": [ + "Available", + "Unavailable" + ], + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check if peering service provider is available in customer location": { + "$ref": "./examples/CheckServiceProviderAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/legacyPeerings": { + "get": { + "tags": [ + "LegacyPeerings" + ], + "description": "Lists all of the legacy peerings under the given subscription matching the specified kind and location.", + "operationId": "LegacyPeerings_List", + "parameters": [ + { + "name": "peeringLocation", + "in": "query", + "description": "The location of the peering.", + "required": true, + "type": "string" + }, + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "name": "asn", + "in": "query", + "description": "The ASN number associated with a legacy peering.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List legacy peerings": { + "$ref": "./examples/ListLegacyPeerings.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Peering/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available API operations for peering resources.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering operations": { + "$ref": "./examples/ListPeeringOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/{peerAsnName}": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Gets the peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Get", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peer ASN": { + "$ref": "./examples/GetPeerAsn.json" + } + } + }, + "put": { + "tags": [ + "PeerAsns" + ], + "description": "Creates a new peer ASN or updates an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_CreateOrUpdate", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "name": "peerAsn", + "in": "body", + "description": "The peer ASN.", + "required": true, + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peer ASN": { + "$ref": "./examples/CreatePeerAsn.json" + } + } + }, + "delete": { + "tags": [ + "PeerAsns" + ], + "description": "Deletes an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Delete", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peer ASN": { + "$ref": "./examples/DeletePeerAsn.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Lists all of the peer ASNs under the given subscription.", + "operationId": "PeerAsns_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsnListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peer ASNs in a subscription": { + "$ref": "./examples/ListPeerAsnsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringLocations": { + "get": { + "tags": [ + "PeeringLocations" + ], + "description": "Lists all of the available peering locations for the specified kind of peering.", + "operationId": "PeeringLocations_List", + "parameters": [ + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "name": "directPeeringType", + "in": "query", + "description": "The type of direct peering.", + "required": false, + "type": "string", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ] + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List direct peering locations": { + "$ref": "./examples/ListDirectPeeringLocations.json" + }, + "List exchange peering locations": { + "$ref": "./examples/ListExchangePeeringLocations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredAsns/{registeredAsnName}": { + "get": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Gets an existing registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the registered ASN.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a registered ASN associated with the peering": { + "$ref": "./examples/GetRegisteredAsn.json" + } + } + }, + "put": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Creates a new registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the ASN.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsn", + "in": "body", + "description": "The properties needed to create a registered ASN.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a registered ASN for the peering": { + "$ref": "./examples/CreateRegisteredAsn.json" + } + } + }, + "delete": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Deletes an existing registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the registered ASN.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a registered ASN associated with the peering": { + "$ref": "./examples/DeleteRegisteredAsn.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredAsns": { + "get": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Lists all registered ASNs under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_ListByPeering", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsnListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the registered ASNs associated with the peering": { + "$ref": "./examples/ListRegisteredAsnsByPeering.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredPrefixes/{registeredPrefixName}": { + "get": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Gets an existing registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a registered prefix associated with the peering": { + "$ref": "./examples/GetRegisteredPrefix.json" + } + } + }, + "put": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Creates a new registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefix", + "in": "body", + "description": "The properties needed to create a registered prefix.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a registered prefix for the peering": { + "$ref": "./examples/CreateRegisteredPrefix.json" + } + } + }, + "delete": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Deletes an existing registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a registered prefix associated with the peering": { + "$ref": "./examples/DeleteRegisteredPrefix.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredPrefixes": { + "get": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Lists all registered prefixes under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_ListByPeering", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the registered prefixes associated with the peering": { + "$ref": "./examples/ListRegisteredPrefixesByPeering.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Gets an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering": { + "$ref": "./examples/GetPeering.json" + } + } + }, + "put": { + "tags": [ + "Peerings" + ], + "description": "Creates a new peering or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "peering", + "in": "body", + "description": "The properties needed to create or update a peering.", + "required": true, + "schema": { + "$ref": "#/definitions/Peering" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a direct peering": { + "$ref": "./examples/CreateDirectPeering.json" + }, + "Create an exchange peering": { + "$ref": "./examples/CreateExchangePeering.json" + }, + "Create a peering with exchange route server": { + "$ref": "./examples/CreatePeeringWithExchangeRouteServer.json" + } + } + }, + "delete": { + "tags": [ + "Peerings" + ], + "description": "Deletes an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering": { + "$ref": "./examples/DeletePeering.json" + } + } + }, + "patch": { + "tags": [ + "Peerings" + ], + "description": "Updates tags for a peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering tags": { + "$ref": "./examples/UpdatePeeringTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription and resource group.", + "operationId": "Peerings_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a resource group": { + "$ref": "./examples/ListPeeringsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "Peerings_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a subscription": { + "$ref": "./examples/ListPeeringsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/receivedRoutes": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists the prefixes received over the specified peering under the given subscription and resource group.", + "operationId": "ReceivedRoutes_ListByPeering", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "prefix", + "in": "query", + "description": "The optional prefix that can be used to filter the routes.", + "required": false, + "type": "string" + }, + { + "name": "asPath", + "in": "query", + "description": "The optional AS path that can be used to filter the routes.", + "required": false, + "type": "string" + }, + { + "name": "originAsValidationState", + "in": "query", + "description": "The optional origin AS validation state that can be used to filter the routes.", + "required": false, + "type": "string" + }, + { + "name": "rpkiValidationState", + "in": "query", + "description": "The optional RPKI validation state that can be used to filter the routes.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "The optional page continuation token that is used in the event of paginated result.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringReceivedRouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the prefixes received over the specified peering under the given subscription and resource group.": { + "$ref": "./examples/GetPeeringReceivedRoutes.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceCountries": { + "get": { + "tags": [ + "PeeringServiceCountries" + ], + "description": "Lists all of the available countries for peering service.", + "operationId": "PeeringServiceCountries_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceCountryListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service countries": { + "$ref": "./examples/ListPeeringServiceCountriesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceLocations": { + "get": { + "tags": [ + "PeeringServiceLocations" + ], + "description": "Lists all of the available locations for peering service.", + "operationId": "PeeringServiceLocations_List", + "parameters": [ + { + "name": "country", + "in": "query", + "description": "The country of interest, in which the locations are to be present.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service locations": { + "$ref": "./examples/ListPeeringServiceLocationsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes/{prefixName}": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Gets an existing prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The properties to be expanded.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a prefix associated with the peering service": { + "$ref": "./examples/GetPeeringServicePrefix.json" + } + } + }, + "put": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Creates a new prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "name": "peeringServicePrefix", + "in": "body", + "description": "The properties needed to create a prefix.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a prefix for the peering service": { + "$ref": "./examples/CreatePeeringServicePrefix.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Deletes an existing prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a prefix associated with the peering service": { + "$ref": "./examples/DeletePeeringServicePrefix.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Lists all prefixes under the given subscription, resource group and peering service.", + "operationId": "Prefixes_ListByPeeringService", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The properties to be expanded.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the prefixes associated with the peering service": { + "$ref": "./examples/ListPrefixesByPeeringService.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceProviders": { + "get": { + "tags": [ + "PeeringServiceProviders" + ], + "description": "Lists all of the available peering service locations for the specified kind of peering.", + "operationId": "PeeringServiceProviders_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service providers": { + "$ref": "./examples/ListPeeringServiceProviders.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Gets an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering service": { + "$ref": "./examples/GetPeeringService.json" + } + } + }, + "put": { + "tags": [ + "PeeringServices" + ], + "description": "Creates a new peering service or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "peeringService", + "in": "body", + "description": "The properties needed to create or update a peering service.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peering service": { + "$ref": "./examples/CreatePeeringService.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServices" + ], + "description": "Deletes an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering service": { + "$ref": "./examples/DeletePeeringService.json" + } + } + }, + "patch": { + "tags": [ + "PeeringServices" + ], + "description": "Updates tags for a peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering service tags": { + "$ref": "./examples/UpdatePeeringServiceTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peering services under the given subscription and resource group.", + "operationId": "PeeringServices_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a resource group": { + "$ref": "./examples/ListPeeringServicesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "PeeringServices_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a subscription": { + "$ref": "./examples/ListPeeringServicesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CheckServiceProviderAvailabilityInput": { + "description": "Class for CheckServiceProviderAvailabilityInput", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "Gets or sets the peering service location.", + "type": "string" + }, + "peeringServiceProvider": { + "description": "Gets or sets the peering service provider.", + "type": "string" + } + } + }, + "PeeringListResult": { + "description": "The paginated list of peerings.", + "type": "object", + "properties": { + "value": { + "description": "The list of peerings.", + "type": "array", + "items": { + "$ref": "#/definitions/Peering" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peerings.", + "type": "string" + } + } + }, + "Peering": { + "description": "Peering is a logical representation of a set of connections to the Microsoft Cloud Edge at a location.", + "required": [ + "sku", + "kind", + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/PeeringSku", + "description": "The SKU that defines the tier and kind of the peering." + }, + "kind": { + "description": "The kind of the peering.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringProperties", + "description": "The properties that define a peering.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringSku": { + "description": "The SKU that defines the tier and kind of the peering.", + "type": "object", + "properties": { + "name": { + "description": "The name of the peering SKU.", + "type": "string" + }, + "tier": { + "description": "The tier of the peering SKU.", + "enum": [ + "Basic", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "tier", + "modelAsString": true + } + }, + "family": { + "description": "The family of the peering SKU.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "family", + "modelAsString": true + } + }, + "size": { + "description": "The size of the peering SKU.", + "enum": [ + "Free", + "Metered", + "Unlimited" + ], + "type": "string", + "x-ms-enum": { + "name": "size", + "modelAsString": true + } + } + } + }, + "PeeringProperties": { + "description": "The properties that define connectivity to the Microsoft Cloud Edge.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringPropertiesDirect", + "description": "The properties that define a direct peering." + }, + "exchange": { + "$ref": "#/definitions/PeeringPropertiesExchange", + "description": "The properties that define an exchange peering." + }, + "peeringLocation": { + "description": "The location of the peering.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesDirect": { + "description": "The properties that define a direct peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute a direct peering.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectConnection" + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the peering is used for peering service.", + "type": "boolean", + "readOnly": true + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + }, + "directPeeringType": { + "description": "The type of direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesExchange": { + "description": "The properties that define an exchange peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute an exchange peering.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangeConnection" + } + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + } + } + }, + "DirectConnection": { + "description": "The properties that define a direct connection.", + "type": "object", + "properties": { + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection.", + "type": "integer" + }, + "provisionedBandwidthInMbps": { + "format": "int32", + "description": "The bandwidth that is actually provisioned.", + "type": "integer", + "readOnly": true + }, + "sessionAddressProvider": { + "description": "The field indicating if Microsoft provides session ip addresses.", + "enum": [ + "Microsoft", + "Peer" + ], + "type": "string", + "x-ms-enum": { + "name": "sessionAddressProvider", + "modelAsString": true + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the connection is used for peering service.", + "type": "boolean" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + }, + "errorMessage": { + "description": "The error message related to the connection state, if any.", + "type": "string", + "readOnly": true + } + } + }, + "SubResource": { + "description": "The sub resource.", + "type": "object", + "properties": { + "id": { + "description": "The identifier of the referenced resource.", + "type": "string" + } + } + }, + "ExchangeConnection": { + "description": "The properties that define an exchange connection.", + "type": "object", + "properties": { + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + }, + "errorMessage": { + "description": "The error message related to the connection state, if any.", + "type": "string", + "readOnly": true + } + } + }, + "BgpSession": { + "description": "The properties that define a BGP session.", + "type": "object", + "properties": { + "sessionPrefixV4": { + "description": "The IPv4 prefix that contains both ends' IPv4 addresses.", + "type": "string" + }, + "sessionPrefixV6": { + "description": "The IPv6 prefix that contains both ends' IPv6 addresses.", + "type": "string" + }, + "microsoftSessionIPv4Address": { + "description": "The IPv4 session address on Microsoft's end.", + "type": "string" + }, + "microsoftSessionIPv6Address": { + "description": "The IPv6 session address on Microsoft's end.", + "type": "string" + }, + "peerSessionIPv4Address": { + "description": "The IPv4 session address on peer's end.", + "type": "string" + }, + "peerSessionIPv6Address": { + "description": "The IPv6 session address on peer's end.", + "type": "string" + }, + "sessionStateV4": { + "description": "The state of the IPv4 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV4", + "modelAsString": true + } + }, + "sessionStateV6": { + "description": "The state of the IPv6 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV6", + "modelAsString": true + } + }, + "maxPrefixesAdvertisedV4": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv4 session.", + "type": "integer" + }, + "maxPrefixesAdvertisedV6": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv6 session.", + "type": "integer" + }, + "md5AuthenticationKey": { + "description": "The MD5 authentication key of the session.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "The paginated list of peering API operations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering API operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering API operations.", + "type": "string" + } + } + }, + "Operation": { + "description": "The peering API operation.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The information related to the operation.", + "readOnly": true + }, + "isDataAction": { + "description": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean", + "readOnly": true + } + } + }, + "OperationDisplayInfo": { + "description": "The information related to the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the resource provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + } + } + }, + "PeerAsn": { + "description": "The essential information related to the peer's ASN.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeerAsnProperties", + "description": "The properties that define a peer's ASN.", + "x-ms-client-flatten": true + } + } + }, + "PeerAsnProperties": { + "description": "The properties that define a peer's ASN.", + "type": "object", + "properties": { + "peerAsn": { + "format": "int32", + "description": "The Autonomous System Number (ASN) of the peer.", + "type": "integer" + }, + "peerContactDetail": { + "description": "The contact details of the peer.", + "type": "array", + "items": { + "$ref": "#/definitions/ContactDetail" + } + }, + "peerName": { + "description": "The name of the peer.", + "type": "string" + }, + "validationState": { + "description": "The validation state of the ASN associated with the peer.", + "enum": [ + "None", + "Pending", + "Approved", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "validationState", + "modelAsString": true + } + }, + "errorMessage": { + "description": "The error message for the validation state", + "type": "string", + "readOnly": true + } + } + }, + "ContactDetail": { + "description": "The contact detail class.", + "type": "object", + "properties": { + "role": { + "description": "The role of the contact.", + "enum": [ + "Noc", + "Policy", + "Technical", + "Service", + "Escalation", + "Other" + ], + "type": "string", + "x-ms-enum": { + "name": "role", + "modelAsString": true + } + }, + "email": { + "description": "The e-mail address of the contact.", + "type": "string" + }, + "phone": { + "description": "The phone number of the contact.", + "type": "string" + } + } + }, + "PeerAsnListResult": { + "description": "The paginated list of peer ASNs.", + "type": "object", + "properties": { + "value": { + "description": "The list of peer ASNs.", + "type": "array", + "items": { + "$ref": "#/definitions/PeerAsn" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peer ASNs.", + "type": "string" + } + } + }, + "PeeringLocationListResult": { + "description": "The paginated list of peering locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering locations.", + "type": "string" + } + } + }, + "PeeringLocation": { + "description": "Peering location is where connectivity could be established to the Microsoft Cloud Edge.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "description": "The kind of peering that the peering location supports.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringLocationProperties", + "description": "The properties that define a peering location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringLocationProperties": { + "description": "The properties that define a peering location.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringLocationPropertiesDirect", + "description": "The properties that define a direct peering location." + }, + "exchange": { + "$ref": "#/definitions/PeeringLocationPropertiesExchange", + "description": "The properties that define an exchange peering location." + }, + "peeringLocation": { + "description": "The name of the peering location.", + "type": "string" + }, + "country": { + "description": "The country in which the peering location exists.", + "type": "string" + }, + "azureRegion": { + "description": "The Azure region associated with the peering location.", + "type": "string" + } + } + }, + "PeeringLocationPropertiesDirect": { + "description": "The properties that define a direct peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of direct peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectPeeringFacility" + } + }, + "bandwidthOffers": { + "description": "The list of bandwidth offers available at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringBandwidthOffer" + } + } + } + }, + "PeeringLocationPropertiesExchange": { + "description": "The properties that define an exchange peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of exchange peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangePeeringFacility" + } + } + } + }, + "DirectPeeringFacility": { + "description": "The properties that define a direct peering facility.", + "type": "object", + "properties": { + "address": { + "description": "The address of the direct peering facility.", + "type": "string" + }, + "directPeeringType": { + "description": "The type of the direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "PeeringBandwidthOffer": { + "description": "The properties that define a peering bandwidth offer.", + "type": "object", + "properties": { + "offerName": { + "description": "The name of the bandwidth offer.", + "type": "string" + }, + "valueInMbps": { + "format": "int32", + "description": "The value of the bandwidth offer in Mbps.", + "type": "integer" + } + } + }, + "ExchangePeeringFacility": { + "description": "The properties that define an exchange peering facility.", + "type": "object", + "properties": { + "exchangeName": { + "description": "The name of the exchange peering facility.", + "type": "string" + }, + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection between Microsoft and the exchange peering facility.", + "type": "integer" + }, + "microsoftIPv4Address": { + "description": "The IPv4 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "microsoftIPv6Address": { + "description": "The IPv6 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "facilityIPv4Prefix": { + "description": "The IPv4 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "facilityIPv6Prefix": { + "description": "The IPv6 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "PeeringRegisteredAsn": { + "description": "The customer's ASN that is registered by the peering service provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringRegisteredAsnProperties", + "description": "The properties that define a registered ASN.", + "x-ms-client-flatten": true + } + } + }, + "PeeringRegisteredAsnProperties": { + "description": "The properties that define a registered ASN.", + "type": "object", + "properties": { + "asn": { + "format": "int32", + "description": "The customer's ASN from which traffic originates.", + "type": "integer" + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key that is to be shared with the customer.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringRegisteredAsnListResult": { + "description": "The paginated list of peering registered ASNs.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering registered ASNs.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering registered ASNs.", + "type": "string" + } + } + }, + "PeeringRegisteredPrefix": { + "description": "The customer's prefix that is registered by the peering service provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringRegisteredPrefixProperties", + "description": "The properties that define a registered prefix.", + "x-ms-client-flatten": true + } + } + }, + "PeeringRegisteredPrefixProperties": { + "description": "The properties that define a registered prefix.", + "type": "object", + "properties": { + "prefix": { + "description": "The customer's prefix from which traffic originates.", + "type": "string" + }, + "prefixValidationState": { + "description": "The prefix validation state.", + "enum": [ + "None", + "Invalid", + "Verified", + "Failed", + "Pending", + "Warning", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "prefixValidationState", + "modelAsString": true + } + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key that is to be shared with the customer.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message associated with the validation state, if any.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringRegisteredPrefixListResult": { + "description": "The paginated list of peering registered prefixes.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering registered prefixes.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering registered prefixes.", + "type": "string" + } + } + }, + "ResourceTags": { + "description": "The resource tags.", + "type": "object", + "properties": { + "tags": { + "description": "Gets or sets the tags, a dictionary of descriptors arm object", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringReceivedRouteListResult": { + "description": "The paginated list of received routes for the peering.", + "type": "object", + "properties": { + "value": { + "description": "The list of received routes for the peering.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringReceivedRoute" + } + }, + "nextLink": { + "description": "The link to fetch the next page of received routes for the peering.", + "type": "string" + } + } + }, + "PeeringReceivedRoute": { + "description": "The properties that define a received route.", + "type": "object", + "properties": { + "prefix": { + "description": "The prefix.", + "type": "string", + "readOnly": true + }, + "nextHop": { + "description": "The next hop for the prefix.", + "type": "string", + "readOnly": true + }, + "asPath": { + "description": "The AS path for the prefix.", + "type": "string", + "readOnly": true + }, + "originAsValidationState": { + "description": "The origin AS change information for the prefix.", + "type": "string", + "readOnly": true + }, + "rpkiValidationState": { + "description": "The RPKI validation state for the prefix and origin AS that's listed in the AS path.", + "type": "string", + "readOnly": true + }, + "trustAnchor": { + "description": "The authority which holds the Route Origin Authorization record for the prefix, if any.", + "type": "string", + "readOnly": true + }, + "receivedTimestamp": { + "description": "The received timestamp associated with the prefix.", + "type": "string", + "readOnly": true + } + } + }, + "PeeringServiceCountryListResult": { + "description": "The paginated list of peering service countries.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service countries.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceCountry" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service countries.", + "type": "string" + } + } + }, + "PeeringServiceCountry": { + "description": "The peering service country.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "PeeringServiceLocationListResult": { + "description": "The paginated list of peering service locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service locations.", + "type": "string" + } + } + }, + "PeeringServiceLocation": { + "description": "The peering service location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceLocationProperties", + "description": "The properties that define a peering service location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceLocationProperties": { + "description": "The properties that define connectivity to the Peering Service Location.", + "type": "object", + "properties": { + "country": { + "description": "Country of the customer", + "type": "string" + }, + "state": { + "description": "State of the customer", + "type": "string" + }, + "azureRegion": { + "description": "Azure region for the location", + "type": "string" + } + } + }, + "PeeringServicePrefix": { + "description": "The peering service prefix class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServicePrefixProperties", + "description": "Gets or sets the peering prefix properties.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServicePrefixProperties": { + "description": "The peering service prefix properties class.", + "type": "object", + "properties": { + "prefix": { + "description": "The prefix from which your traffic originates.", + "type": "string" + }, + "prefixValidationState": { + "description": "The prefix validation state", + "enum": [ + "None", + "Invalid", + "Verified", + "Failed", + "Pending", + "Warning", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "prefixValidationState", + "modelAsString": true + } + }, + "learnedType": { + "description": "The prefix learned type", + "enum": [ + "None", + "ViaServiceProvider", + "ViaSession" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "learnedType", + "modelAsString": true + } + }, + "errorMessage": { + "description": "The error message for validation state", + "type": "string", + "readOnly": true + }, + "events": { + "description": "The list of events for peering service prefix", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServicePrefixEvent" + }, + "readOnly": true + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServicePrefixEvent": { + "description": "The details of the event associated with a prefix.", + "type": "object", + "properties": { + "eventTimestamp": { + "format": "date-time", + "description": "The timestamp of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventType": { + "description": "The type of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventSummary": { + "description": "The summary of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventLevel": { + "description": "The level of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventDescription": { + "description": "The description of the event associated with a prefix.", + "type": "string", + "readOnly": true + } + } + }, + "PeeringServicePrefixListResult": { + "description": "The paginated list of peering service prefixes.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service prefixes.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service prefixes.", + "type": "string" + } + } + }, + "PeeringServiceProviderListResult": { + "description": "The paginated list of peering service providers.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service providers.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceProvider" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service providers.", + "type": "string" + } + } + }, + "PeeringServiceProvider": { + "description": "PeeringService provider", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceProviderProperties", + "description": "The properties that define a peering service provider.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceProviderProperties": { + "description": "The properties that define connectivity to the Peering Service Provider.", + "type": "object", + "properties": { + "serviceProviderName": { + "description": "The name of the service provider.", + "type": "string" + } + } + }, + "PeeringService": { + "description": "Peering Service", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/PeeringServiceSku", + "description": "The SKU that defines the type of the peering service." + }, + "properties": { + "$ref": "#/definitions/PeeringServiceProperties", + "description": "The properties that define a peering service.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringServiceSku": { + "description": "The SKU that defines the type of the peering service.", + "type": "object", + "properties": { + "name": { + "description": "The name of the peering service SKU.", + "type": "string" + } + } + }, + "PeeringServiceProperties": { + "description": "The properties that define connectivity to the Peering Service.", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "The PeeringServiceLocation of the Customer.", + "type": "string" + }, + "peeringServiceProvider": { + "description": "The MAPS Provider Name.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServiceListResult": { + "description": "The paginated list of peering services.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering services.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringService" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering services.", + "type": "string" + } + } + }, + "ErrorResponse": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetail", + "description": "The error detail that describes why an operation has failed." + } + } + }, + "ErrorDetail": { + "description": "The error detail that describes why an operation has failed.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "The ARM resource class.", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "The ID of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Azure subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/peering/resource-manager/readme.cli.md b/specification/peering/resource-manager/readme.cli.md index ecf564035626..94bc2011ae2d 100644 --- a/specification/peering/resource-manager/readme.cli.md +++ b/specification/peering/resource-manager/readme.cli.md @@ -24,9 +24,63 @@ cli: "/properties/direct": "Direct*/" "/properties/peercontactinfo": "*/" - test-setup: - - name: Create a peering service - - name: Create or update a prefix for the peering service - - name: Delete a prefix associated with the peering service - - name: Delete a peering service + test: + - name: /PeerAsns/put/Create a peer ASN + disabled: true + - name: /Peerings/put/Create an exchange peering + disabled: true + - name: /Peerings/put/Create a peering with exchange route server + disabled: true + - name: /Peerings/put/Create a direct peering + disabled: true + - name: /PeeringServices/put/Create a peering service + - name: /RegisteredAsns/put/Create or update a registered ASN for the peering + disabled: true + - name: /Prefixes/put/Create or update a prefix for the peering service + disabled: true + - name: /RegisteredPrefixes/put/Create or update a registered prefix for the peering + disabled: true + - name: /RegisteredPrefixes/get/Get a registered prefix associated with the peering + disabled: true + - name: /Prefixes/get/Get a prefix associated with the peering service + disabled: true + - name: /RegisteredAsns/get/Get a registered ASN associated with the peering + disabled: true + - name: /Prefixes/get/List all the prefixes associated with the peering service + - name: /RegisteredPrefixes/get/List all the registered prefixes associated with the peering + disabled: true + - name: /PeeringServices/get/Get a peering service + - name: /RegisteredAsns/get/List all the registered ASNs associated with the peering + disabled: true + - name: /Peerings/get/Get a peering + disabled: true + - name: /PeeringServices/get/List peering services in a resource group + - name: /Peerings/get/List peerings in a resource group + - name: /PeerAsns/get/Get a peer ASN + - name: /PeeringServiceCountries/get/List peering service countries + - name: /PeeringServiceLocations/get/List peering service locations + - name: /PeeringServiceProviders/get/List peering service providers + - name: /PeeringLocations/get/List exchange peering locations + - name: /PeeringLocations/get/List direct peering locations + - name: /PeeringServices/get/List peering services in a subscription + - name: /LegacyPeerings/get/List legacy peerings + - name: /PeerAsns/get/List peer ASNs in a subscription + - name: /Peerings/get/List peerings in a subscription + - name: /Operations/get/List peering operations + - name: /PeeringServices/patch/Update peering service tags + disabled: true + - name: /Peerings/patch/Update peering tags + disabled: true + - name: //post/Check if peering service provider is available in customer location + disabled: true + - name: /RegisteredPrefixes/delete/Deletes a registered prefix associated with the peering + disabled: true + - name: /Prefixes/delete/Delete a prefix associated with the peering service + disabled: true + - name: /RegisteredAsns/delete/Deletes a registered ASN associated with the peering + disabled: true + - name: /PeeringServices/delete/Delete a peering service + - name: /Peerings/delete/Delete a peering + disabled: true + - name: /PeerAsns/delete/Delete a peer ASN ``` diff --git a/specification/peering/resource-manager/readme.go.md b/specification/peering/resource-manager/readme.go.md index f3871b5269e6..74cd7447316f 100644 --- a/specification/peering/resource-manager/readme.go.md +++ b/specification/peering/resource-manager/readme.go.md @@ -12,6 +12,11 @@ go: ### Go multi-api +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-04-01 +``` +or ``` yaml $(go) && $(multiapi) batch: - tag: package-2020-01-01-preview @@ -26,6 +31,16 @@ or batch: - tag: package-2019-08-01-preview ``` + +### Tag: package-2020-04-01 and go + +These settings apply only when `--tag=package-2020-04-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04-01' && $(go) +output-folder: $(go-sdk-folder)/services/stable/$(namespace)/mgmt/2020-04-01/$(namespace) +``` + ### Tag: package-2020-01-01-preview and go These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. diff --git a/specification/peering/resource-manager/readme.java.md b/specification/peering/resource-manager/readme.java.md index 7a5bd751211e..41cb57f82562 100644 --- a/specification/peering/resource-manager/readme.java.md +++ b/specification/peering/resource-manager/readme.java.md @@ -14,6 +14,12 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-peering ### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2020-04-01 +``` +or ``` yaml $(java) && $(multiapi) batch: - tag: package-2020-01-01-preview @@ -29,6 +35,19 @@ batch: - tag: package-2019-08-01-preview ``` +### Tag: package-2020-04-01 and java + +These settings apply only when `--tag=package-2020-04-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.peering.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/peering/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2020-01-01-preview and java These settings apply only when `--tag=package-2020-01-01-preview --java` is specified on the command line. diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index db0485dc1c6f..947c30cb6823 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -21,6 +21,14 @@ To see additional help and options, run: ### Basic Information These are the global settings for the Peering API. + +``` yaml +title: PeeringManagementClient +description: Peering Client +openapi-type: arm +tag: package-2020-04-01 +``` +or ``` yaml title: PeeringManagementClient description: Peering Client @@ -42,6 +50,15 @@ openapi-type: arm tag: package-2019-08-01-preview ``` +### Tag: package-2020-04-01 + +These settings apply only when `--tag=package-2020-04-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04-01' +input-file: +- Microsoft.Peering/stable/2020-04-01/peering.json +``` + ### Tag: package-2020-01-01-preview These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. @@ -114,6 +131,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Peering/stable/2020-04-01/peering.json - $(this-folder)/Microsoft.Peering/preview/2020-01-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-09-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-08-01-preview/peering.json diff --git a/specification/peering/resource-manager/readme.ruby.md b/specification/peering/resource-manager/readme.ruby.md index f077e470ae5c..e62dc7a47c9e 100644 --- a/specification/peering/resource-manager/readme.ruby.md +++ b/specification/peering/resource-manager/readme.ruby.md @@ -2,6 +2,12 @@ These settings apply only when `--ruby` is specified on the command line. +``` yaml +package-name: azure_mgmt_peering +package-version: "2020-04-01" +azure-arm: true +``` +or ``` yaml package-name: azure_mgmt_peering package-version: "2020-01-01-preview" @@ -21,6 +27,12 @@ azure-arm: true ``` ### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2020-04-01 +``` +or ``` yaml $(ruby) && $(multiapi) batch: - tag: package-2020-01-01-preview @@ -36,6 +48,16 @@ batch: - tag: package-2019-08-01-preview ``` +### Tag: package-2020-04-01 and ruby + +These settings apply only when `--tag=package-2020-04-01 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04-01' && $(ruby) +namespace: "Azure::Peering::Mgmt::V2020_04_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_peering/lib +``` + ### Tag: package-2020-01-01-preview and ruby These settings apply only when `--tag=package-2020-01-01-preview --ruby` is specified on the command line. diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..1b2e324f6a1f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyEvents)" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "NumDenyEvents": 40 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..628d3b5bc212 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumEvents))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + "NumEvents": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + "NumEvents": 1 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..dab1660140be --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-01-05T18:00:00Z", + "$filter": "PolicyDefinitionAction ne 'audit' and PolicyDefinitionAction ne 'append'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.authorization/policyassignments/storageaccountsku", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "policyDefinitionAction": "deny", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.storage/storageaccounts/7d528d3a" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + "policyDefinitionAction": "deny", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/mysa1" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..9d78481c5c29 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-01-01T00:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, ResourceId))/groupby((PolicyAssignmentId, PolicyDefinitionId), aggregate($count as NumDeniedResources))", + "$orderby": "NumDeniedResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 6, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/0591f497c35344fcbaf7a393", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c", + "NumDeniedResources": 3 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/myassignment1", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition1", + "NumDeniedResources": 2 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/myassignment1", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition2", + "NumDeniedResources": 2 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.authorization/policyassignments/storageaccountsku", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "NumDeniedResources": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + "NumDeniedResources": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/myassignment2", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition3", + "NumDeniedResources": 1 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json new file mode 100644 index 000000000000..8a83fb958656 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "content-type": "application/xml" + }, + "body": " Org.OData.Capabilities.V1.ConformanceLevelType/Minimal application/json;odata.metadata=minimal;IEEE754Compatible=false;odata.streaming=true application/json;odata.metadata=none;IEEE754Compatible=false;odata.streaming=true " + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json new file mode 100644 index 000000000000..ed8d1f600cca --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T22:19:18.8896095Z", + "resourceId": "/subscriptions/fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm1/extensions/DAExtension", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/1ef5d536aec743a0aa801c1a", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef", + "resourceType": "/Microsoft.Compute/virtualMachines/extensions", + "resourceLocation": "westeurope", + "resourceGroup": "myrg", + "resourceTags": "tbd", + "policyAssignmentName": "1ef5d536aec743a0aa801c1a", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionName": "335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "15521232277412542086", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff3e452-fff2-fff1-fff8-fff12618f1b8" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T22:19:18.8896095Z", + "resourceId": "/subscriptions/fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm1/extensions/DAExtension", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/95816fce53454b15a7ed803d", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/a2c0414b-82e4-459d-97d5-94c79a89232c", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef", + "resourceType": "/Microsoft.Compute/virtualMachines/extensions", + "resourceLocation": "westeurope", + "resourceGroup": "myrg", + "resourceTags": "tbd", + "policyAssignmentName": "95816fce53454b15a7ed803d", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "a2c0414b-82e4-459d-97d5-94c79a89232c", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff3e452-fff2-fff1-fff8-fff12618f1b8" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json new file mode 100644 index 000000000000..f52bc3c69f3d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..9167657ccb13 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "myPolicyAssignment", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T00:07:16.2804863Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/defaultworkspace-fffedd8f-ffff-fffd-fffd-fffed2f84852-eus", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyDefinitions/myPolicyDefinition", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.operationalinsights/workspaces", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": null, + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup", + "policyDefinitionName": "myPolicyAssignment", + "policyDefinitionAction": "deny", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff2f355-fff2-fffc-fffb-fff1639dff94" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T00:06:08.4302267Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/defaultworkspace-fffedd8f-ffff-fffd-fffd-fffed2f84852-eus", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyDefinitions/myPolicyDefinition", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.operationalinsights/workspaces", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": null, + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup", + "policyDefinitionName": "myPolicyAssignment", + "policyDefinitionAction": "deny", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff2f355-fff2-fffc-fffb-fff1639dff94" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json new file mode 100644 index 000000000000..ad63532b63fd --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json new file mode 100644 index 000000000000..e6156b11551c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.8473851Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.5842458Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json new file mode 100644 index 000000000000..19f52e250680 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "tenantId": "", + "principalOid": "", + "components": [ + { + "id": "cert-RSA-cert-3", + "type": "Certificate", + "name": "cert-RSA-cert-3", + "timestamp": "2020-02-21T17:45:23.0367Z", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit" + }, + { + "id": "cert-RSA-cert-2", + "type": "Certificate", + "name": "cert-RSA-cert-2", + "timestamp": "2020-02-21T17:45:22.7682778Z", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit" + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json new file mode 100644 index 000000000000..f1f95b95ce8b --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($apply=groupby((tenantId, principalOid, policyDefinitionAction), aggregate($count as totalActions)))" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "tenantId": "", + "principalOid": "", + "components": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit", + "totalActions": 6 + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..56aee0d55c7c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..92e8f127c730 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:59:38.6401747Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:59:34.2017762Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..938bf4e2eb08 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:58:11.590596Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/deploymentSlots/production/state/start", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/f4cc58b7db524a9799381531", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/deploymentSlots/state", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "f4cc58b7db524a9799381531", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "14799174781370023846", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:58:11.590596Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/deploymentSlots/production/state/start", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/f4cc58b7db524a9799381531", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/deploymentSlots/state", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "f4cc58b7db524a9799381531", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "1679708035638239273", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..987f254b2586 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:49:32.9539023Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/serviceCertificates/sha1-FFFBDAF1FFFF109FFFD95FFFC9B0FFFD6F264FFF", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/serviceCertificates", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:49:32.9498186Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/serviceCertificates/sha1-FFF36C1CFFF4BEA57FFFEFCFFF17B9F81B710FFF", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/serviceCertificates", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..e0b15863521a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.8473851Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.5842458Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json new file mode 100644 index 000000000000..8799053fc6fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..f10a6d179cac --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$to": "2018-02-06T18:00:00Z", + "$orderby": "Timestamp desc, PolicyAssignmentId asc, SubscriptionId asc, ResourceGroup asc, ResourceId", + "$select": "Timestamp, PolicyAssignmentId, PolicyDefinitionId, SubscriptionId, ResourceGroup, ResourceId", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-05T22:34:02.3475017Z", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/89b27f38-e9e4-4468-ab81-801c84b8c017", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myResourceGroup", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomain" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-05T22:34:01.6135357Z", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myResourceGroup", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomain" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json index 30027d5f02e2..bafd79a9d12b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json @@ -42,7 +42,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -75,7 +78,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json index 49c4b290456e..2b68d81e815e 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json index 2737f3ed5ac2..344529acf5ef 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -44,7 +44,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -77,7 +80,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json index 247f76fd9eaf..a9c1bb25cd24 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json @@ -42,7 +42,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -75,7 +78,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json index 10885540081a..fe1925455bd9 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json new file mode 100644 index 000000000000..9d3f025e10fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant')" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "components": [ + { + "id": "cert-RSA-cert-3", + "type": "Certificate", + "name": "cert-RSA-cert-3", + "timestamp": "2020-02-21T17:45:23.0367Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-RSA-cert-2", + "type": "Certificate", + "name": "cert-RSA-cert-2", + "timestamp": "2020-02-21T17:45:22.7682778Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-rsa-cert-expires-2months", + "type": "Certificate", + "name": "cert-rsa-cert-expires-2months", + "timestamp": "2020-02-21T17:45:22.6849056Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-RSA-cert-1", + "type": "Certificate", + "name": "cert-RSA-cert-1", + "timestamp": "2020-02-21T17:45:22.6504951Z", + "complianceState": "Compliant" + }, + { + "id": "cert-rsa-cert-expires-1month", + "type": "Certificate", + "name": "cert-rsa-cert-expires-1month", + "timestamp": "2020-02-21T17:45:22.5523666Z", + "complianceState": "NonCompliant" + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json new file mode 100644 index 000000000000..1395c5ec74e4 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant';$apply=groupby((complianceState),aggregate($count as count)))" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "components": [ + { + "complianceState": "NonCompliant", + "count": 5 + }, + { + "complianceState": "Compliant", + "count": 14 + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json index e4b83c3c4133..5ab54110b2c8 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json @@ -43,6 +43,9 @@ "policyDefinitionGroupNames": [ "myGroup" ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0", "policyEvaluationDetails": { "evaluatedExpressions": [ { @@ -96,6 +99,9 @@ "policyDefinitionGroupNames": [ "myGroup" ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0", "policyEvaluationDetails": { "evaluatedExpressions": [ { diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json index 69a778af5f0b..e504218c4209 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json index afd036ad6184..c450a3f57202 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json index f15370c3093c..3a7d3c2c6d98 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json index bfd2e1cd48f3..0ef96902f50c 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json index 521ac190d5a1..1ca2e7fa09f4 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json index 5d5ddf125dca..8e73c1085c1b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json new file mode 100644 index 000000000000..9c725a6436a5 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json @@ -0,0 +1,1024 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyEventsClient", + "version": "2019-10-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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": { + "/providers/{managementGroupsNamespace}/managementGroups/{managementGroupName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForManagementGroup", + "description": "Queries policy events for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/managementGroupsNamespaceParameter" + }, + { + "$ref": "#/parameters/managementGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at management group scope": { + "$ref": "./examples/PolicyEvents_QueryManagementGroupScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForSubscription", + "description": "Queries policy events for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionScope.json" + }, + "Time range; sort, select and limit": { + "$ref": "./examples/PolicyEvents_TimeRangeSortSelectTop.json" + }, + "Filter and group with aggregate": { + "$ref": "./examples/PolicyEvents_FilterAndGroupByWithAggregate.json" + }, + "Filter and group without aggregate": { + "$ref": "./examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json" + }, + "Filter and aggregate only": { + "$ref": "./examples/PolicyEvents_FilterAndAggregateOnly.json" + }, + "Filter and multiple groups": { + "$ref": "./examples/PolicyEvents_FilterAndMultipleGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResourceGroup", + "description": "Queries policy events for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource group scope": { + "$ref": "./examples/PolicyEvents_QueryResourceGroupScope.json" + } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResource", + "description": "Queries policy events for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/resourceIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + }, + { + "$ref": "#/parameters/expandParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource scope": { + "$ref": "./examples/PolicyEvents_QueryResourceScope.json" + }, + "Query at subscription level resource scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json" + }, + "Query at nested resource scope": { + "$ref": "./examples/PolicyEvents_QueryNestedResourceScope.json" + }, + "Query at subscription level nested resource scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json" + }, + "Query components policy events for resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyEvents_QueryResourceScopeExpandComponents.json" + }, + "Query components policy events count grouped by user and action type for resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForPolicySetDefinition", + "description": "Queries policy events for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policySetDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy set definition scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForPolicyDefinition", + "description": "Queries policy events for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy definition scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForSubscriptionLevelPolicyAssignment", + "description": "Queries policy events for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy assignment scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResourceGroupLevelPolicyAssignment", + "description": "Queries policy events for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource group level policy assignment scope": { + "$ref": "./examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.PolicyInsights/policyEvents/$metadata": { + "get": { + "operationId": "PolicyEvents_GetMetadata", + "description": "Gets OData metadata XML document.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/scopeParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OData metadata XML document.", + "schema": { + "$ref": "#/definitions/MetadataDocument" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Get metadata": { + "$ref": "./examples/PolicyEvents_GetMetadata.json" + } + } + } + } + }, + "definitions": { + "PolicyEventsQueryResults": { + "description": "Query results.", + "properties": { + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "@odata.count": { + "description": "OData entity count; represents the number of policy event records returned.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyEvent" + } + } + } + }, + "PolicyEvent": { + "type": "object", + "description": "Policy event record.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since policy event records do not have an entity ID.", + "type": "string" + }, + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "timestamp": { + "description": "Timestamp for the policy event record.", + "type": "string", + "format": "date-time" + }, + "resourceId": { + "description": "Resource ID.", + "type": "string" + }, + "policyAssignmentId": { + "description": "Policy assignment ID.", + "type": "string" + }, + "policyDefinitionId": { + "description": "Policy definition ID.", + "type": "string" + }, + "effectiveParameters": { + "description": "Effective parameters for the policy assignment.", + "type": "string" + }, + "isCompliant": { + "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against.", + "type": "boolean" + }, + "subscriptionId": { + "description": "Subscription ID.", + "type": "string" + }, + "resourceType": { + "description": "Resource type.", + "type": "string" + }, + "resourceLocation": { + "description": "Resource location.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + }, + "resourceTags": { + "description": "List of resource tags.", + "type": "string" + }, + "policyAssignmentName": { + "description": "Policy assignment name.", + "type": "string" + }, + "policyAssignmentOwner": { + "description": "Policy assignment owner.", + "type": "string" + }, + "policyAssignmentParameters": { + "description": "Policy assignment parameters.", + "type": "string" + }, + "policyAssignmentScope": { + "description": "Policy assignment scope.", + "type": "string" + }, + "policyDefinitionName": { + "description": "Policy definition name.", + "type": "string" + }, + "policyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "type": "string" + }, + "policyDefinitionCategory": { + "description": "Policy definition category.", + "type": "string" + }, + "policySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionName": { + "description": "Policy set definition name, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionOwner": { + "description": "Policy set definition owner, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionCategory": { + "description": "Policy set definition category, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionParameters": { + "description": "Policy set definition parameters, if the policy assignment is for a policy set.", + "type": "string" + }, + "managementGroupIds": { + "description": "Comma separated list of management group IDs, which represent the hierarchy of the management groups the resource is under.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "Reference ID for the policy definition inside the policy set, if the policy assignment is for a policy set.", + "type": "string" + }, + "complianceState": { + "description": "Compliance state of the resource.", + "type": "string" + }, + "tenantId": { + "description": "Tenant ID for the policy event record.", + "type": "string" + }, + "principalOid": { + "description": "Principal object ID for the user who initiated the resource operation that triggered the policy event.", + "type": "string" + }, + "components": { + "description": "Components events records populated only when URL contains $expand=components clause.", + "type": "array", + "items": { + "$ref": "#/definitions/ComponentEventDetails" + } + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, + "ComponentEventDetails": { + "type": "object", + "description": "Component event details.", + "properties": { + "id": { + "description": "Component Id.", + "type": "string" + }, + "type": { + "description": "Component type.", + "type": "string" + }, + "name": { + "description": "Component name.", + "type": "string" + }, + "timestamp": { + "description": "Timestamp for component policy event record.", + "type": "string", + "format": "date-time" + }, + "tenantId": { + "description": "Tenant ID for the policy event record.", + "type": "string" + }, + "principalOid": { + "description": "Principal object ID for the user who initiated the resource component operation that triggered the policy event.", + "type": "string" + }, + "policyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "type": "string" + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, + "QueryFailure": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "MetadataDocument": { + "description": "Metadata XML document.", + "type": "string" + } + }, + "parameters": { + "policyEventsResourceParameter": { + "name": "policyEventsResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the virtual resource under PolicyEvents resource type; only \"default\" is allowed.", + "x-ms-parameter-location": "method" + }, + "managementGroupsNamespaceParameter": { + "name": "managementGroupsNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Management" + ], + "description": "The namespace for Microsoft Management RP; only \"Microsoft.Management\" is allowed.", + "x-ms-parameter-location": "method" + }, + "managementGroupNameParameter": { + "name": "managementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Management group name.", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Microsoft Azure subscription ID.", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name.", + "x-ms-parameter-location": "method" + }, + "resourceIdParameter": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "Resource ID.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "authorizationNamespaceParameter": { + "name": "authorizationNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Authorization" + ], + "description": "The namespace for Microsoft Authorization resource provider; only \"Microsoft.Authorization\" is allowed.", + "x-ms-parameter-location": "method" + }, + "policySetDefinitionNameParameter": { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy set definition name.", + "x-ms-parameter-location": "method" + }, + "policyDefinitionNameParameter": { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy definition name.", + "x-ms-parameter-location": "method" + }, + "policyAssignmentNameParameter": { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy assignment name.", + "x-ms-parameter-location": "method" + }, + "scopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "A valid scope, i.e. management group, subscription, resource group, or resource ID. Scope used has no effect on metadata returned.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "API version to use with the client requests.", + "x-ms-parameter-location": "client" + }, + "topParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Maximum number of records to return.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Top" + }, + "orderByParameter": { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Ordering expression using OData notation. One or more comma-separated column names with an optional \"desc\" (the default) or \"asc\", e.g. \"$orderby=PolicyAssignmentId, ResourceId asc\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "OrderBy" + }, + "selectParameter": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Select expression using OData notation. Limits the columns on each record to just those requested, e.g. \"$select=PolicyAssignmentId, ResourceId\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Select" + }, + "fromParameter": { + "name": "$from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the start time of the interval to query. When not specified, the service uses ($to - 1-day).", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "From" + }, + "toParameter": { + "name": "$to", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the end time of the interval to query. When not specified, the service uses request time.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "To" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Filter" + }, + "applyParameter": { + "name": "$apply", + "in": "query", + "required": false, + "type": "string", + "description": "OData apply expression for aggregations.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Apply" + }, + "expandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to expand components use $expand=components", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Expand" + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json index a914774d9a63..ca46c7b1804b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json @@ -443,6 +443,12 @@ }, "Query all policy states at resource scope and expand policyEvaluationDetails": { "$ref": "./examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json" + }, + "Query component policy compliance state at resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyStates_QueryResourceScopeExpandComponents.json" + }, + "Query component policy compliance state count grouped by state type at resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json" } } } @@ -1228,6 +1234,28 @@ "items": { "type": "string" } + }, + "components": { + "description": "Components state compliance records populated only when URL contains $expand=components clause.", + "type": "array", + "items": { + "$ref": "#/definitions/ComponentStateDetails" + } + }, + "policyDefinitionVersion": { + "description": "Evaluated policy definition version.", + "type": "string", + "readOnly": true + }, + "policySetDefinitionVersion": { + "description": "Evaluated policy set definition version.", + "type": "string", + "readOnly": true + }, + "policyAssignmentVersion": { + "description": "Evaluated policy assignment version.", + "type": "string", + "readOnly": true } }, "additionalProperties": { @@ -1252,6 +1280,36 @@ } } }, + "ComponentStateDetails": { + "type": "object", + "description": "Component state details.", + "properties": { + "id": { + "description": "Component Id.", + "type": "string" + }, + "type": { + "description": "Component type.", + "type": "string" + }, + "name": { + "description": "Component name.", + "type": "string" + }, + "timestamp": { + "description": "Component compliance evaluation timestamp.", + "type": "string", + "format": "date-time" + }, + "complianceState": { + "description": "Component compliance state.", + "type": "string" + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, "ExpressionEvaluationDetails": { "type": "object", "description": "Evaluation details of policy language expressions.", @@ -1761,7 +1819,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. For example, to expand policyEvaluationDetails, use $expand=policyEvaluationDetails", + "description": "The $expand query parameter. For example, to expand components use $expand=components", "x-ms-parameter-location": "method", "x-ms-parameter-grouping": { "name": "QueryOptions" diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index 3b88aeb0b6a8..ec0220bdbba7 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -76,7 +76,7 @@ These settings apply only when `--tag=package-2019-10` is specified on the comma input-file: - Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - Microsoft.PolicyInsights/stable/2019-07-01/remediations.json -- Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json +- Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json - Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - Microsoft.PolicyInsights/stable/2019-10-01/policyMetadata.json ``` @@ -248,10 +248,11 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - $(this-folder)/Microsoft.PolicyInsights/stable/2019-07-01/remediations.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json + - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyMetadata.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json + - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyStates.json diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json index 636054f232fc..9bbdec8f0d6f 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json index 9cdb59dd9cec..e136b25cb892 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json index f3b50b3eb1c5..32b291f51c49 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/readme.az.md b/specification/portal/resource-manager/readme.az.md new file mode 100644 index 000000000000..57368eb6e273 --- /dev/null +++ b/specification/portal/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: portal + namespace: azure.mgmt.portal + package-name: azure-mgmt-portal +az-output-folder: $(azure-cli-extension-folder)/src/portal +python-sdk-output-folder: "$(az-output-folder)/azext_portal/vendored_sdks/portal" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/portal/resource-manager/readme.cli.md b/specification/portal/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/portal/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/portal/resource-manager/readme.md b/specification/portal/resource-manager/readme.md index 3ed8af1a6fa0..9fc2ca44f7c4 100644 --- a/specification/portal/resource-manager/readme.md +++ b/specification/portal/resource-manager/readme.md @@ -75,6 +75,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_portal'] + - repo: azure-cli-extensions ``` ## Go diff --git a/specification/portal/resource-manager/readme.python.md b/specification/portal/resource-manager/readme.python.md index e296c8e06256..6bdb50e8d3ea 100644 --- a/specification/portal/resource-manager/readme.python.md +++ b/specification/portal/resource-manager/readme.python.md @@ -8,14 +8,14 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.Portal - package-name: portal - package-version: 2015-08-01-preview + namespace: azure.mgmt.portal + package-name: azure-mgmt-portal + package-version: 0.1.0 clear-output-folder: true ``` ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/portal + output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal/azure/mgmt/portal ``` diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json index c06829860a54..89a389019001 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json index 91cb5a60f981..ad4cf1921a66 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2017-12-01-preview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json index e36ae3cd778b..1df614dff54b 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -1520,6 +1511,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -1579,13 +1679,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1618,6 +1740,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1674,6 +1816,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1921,6 +2067,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2520,7 +2670,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json new file mode 100644 index 000000000000..8fe82a9c06ef --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01", + "properties": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json new file mode 100644 index 000000000000..1f0f09a88008 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json new file mode 100644 index 000000000000..573398b11939 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json new file mode 100644 index 000000000000..527a3313e326 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json index a0c6b5e9fe7e..63b38734cb96 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json @@ -10,6 +10,7 @@ "administratorLogin": "cloudsa", "administratorLoginPassword": "pa$$w0rd", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "storageProfile": { "storageMB": 128000, "backupRetentionDays": 7, @@ -46,6 +47,7 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json index 079f432114ff..6cb3de624950 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json @@ -2,7 +2,7 @@ "parameters": { "serverName": "testserver", "resourceGroupName": "TestGroup", - "api-version": "2017-12-01-preview", + "api-version": "2017-12-01", "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" }, "responses": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json index 436bf354530b..9bf76b322e48 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json @@ -23,11 +23,29 @@ }, "version": "9.5", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", "earliestRestoreDate": "2018-03-04T21:00:58.9243541+00:00", "replicationRole": "", - "masterServerId": "" + "masterServerId": "", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json index f72ef600b0e8..c72697804a22 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json @@ -23,9 +23,12 @@ }, "version": "9.5", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_1", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", @@ -48,9 +51,27 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc2.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2", @@ -73,9 +94,27 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc3.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-01T00:11:08.55+00:00" + "earliestRestoreDate": "2018-03-01T00:11:08.55+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc3", @@ -98,9 +137,12 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" + "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "tags": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json index 4c6daa5c70f0..ccf447bb7ccb 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc2.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2", @@ -76,7 +95,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" + "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "tags": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json index 81b796a449fb..80e15e3f2033 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json @@ -7,7 +7,8 @@ "parameters": { "properties": { "administratorLoginPassword": "newpa$$w0rd", - "sslEnforcement": "Enabled" + "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2" } } }, @@ -29,6 +30,7 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json index ea01a4bc57f8..59450f0fab7b 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json @@ -1072,6 +1072,193 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/Administrators/activeDirectory": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Get", + "x-ms-examples": { + "ServerAdministratorGet": { + "$ref": "./examples/ServerAdminGet.json" + } + }, + "description": "Gets information about a AAD server administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_CreateOrUpdate", + "x-ms-examples": { + "ServerAdministratorCreate": { + "$ref": "./examples/ServerAdminCreateUpdate.json" + } + }, + "description": "Creates or update active directory administrator on an existing server. The update action will overwrite the existing administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The required parameters for creating or updating an AAD server administrator." + } + ], + "responses": { + "200": { + "description": "Successfully updated the active directory administrator", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Delete", + "x-ms-examples": { + "ServerAdministratorsDelete": { + "$ref": "./examples/ServerAdminDelete.json" + } + }, + "description": "Deletes server active directory administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the active directory administrator" + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified Server active directory administrator does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_List", + "description": "Returns a list of server Administrators.", + "x-ms-examples": { + "get a list of server administrators": { + "$ref": "./examples/ServerAdminList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DBforPostgreSQL/locations/{locationName}/performanceTiers": { "get": { "tags": [ @@ -1324,6 +1511,139 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "InfrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of the Private Endpoint Connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1362,13 +1682,27 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1401,6 +1735,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1457,6 +1803,18 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1598,8 +1956,41 @@ }, "description": "Billing information related properties of a server." }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "Server": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1619,6 +2010,10 @@ }, "ServerForCreate": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1648,6 +2043,10 @@ }, "ServerUpdateParameters": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1671,6 +2070,14 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2230,6 +2637,68 @@ } }, "description": "An error response from the Batch service." + }, + "ServerAdministratorProperties": { + "properties": { + "administratorType": { + "type": "string", + "description": "The type of administrator.", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorType" + } + }, + "login": { + "type": "string", + "description": "The server administrator login account name." + }, + "sid": { + "type": "string", + "description": "The server administrator Sid (Secure ID).", + "format": "uuid" + }, + "tenantId": { + "type": "string", + "description": "The server Active Directory Administrator tenant id.", + "format": "uuid" + } + }, + "required": [ + "tenantId", + "administratorType", + "login", + "sid" + ], + "description": "The properties of an server Administrator." + }, + "ServerAdministratorResource": { + "properties": { + "properties": { + "$ref": "#/definitions/ServerAdministratorProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server AAD administrator." + } + }, + "description": "Represents a and external administrator to be created.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "ServerAdministratorResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The list of server Active Directory Administrators for the server." + } + }, + "description": "The response to a list Active Directory Administrators request." } }, "parameters": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json new file mode 100644 index 000000000000..a63faa341642 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json @@ -0,0 +1,330 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files, encryption keys, active directory administrator and configurations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/keys": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a list of Server keys.", + "operationId": "ServerKeys_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of PostgreSQL Server keys.", + "schema": { + "$ref": "#/definitions/ServerKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the keys for a PostgreSQL Server.": { + "$ref": "./examples/ServerKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/keys/{keyName}": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a PostgreSQL Server key.", + "operationId": "ServerKeys_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified PostgreSQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get the PostgreSQL Server key": { + "$ref": "./examples/ServerKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ServerKeys" + ], + "description": "Creates or updates a PostgreSQL Server key.", + "operationId": "ServerKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be operated on (updated or created).", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested PostgreSQL Server key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the PostgreSQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a PostgreSQL Server key": { + "$ref": "./examples/ServerKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerKeys" + ], + "description": "Deletes the PostgreSQL Server key with the given name.", + "operationId": "ServerKeys_Delete", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the PostgreSQL Server key." + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified PostgreSQL Server key does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the PostgreSQL Server key": { + "$ref": "./examples/ServerKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ServerKeyListResult": { + "description": "A list of PostgreSQL Server keys.", + "type": "object", + "properties": { + "value": { + "description": "A list of PostgreSQL Server keys.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKeyProperties": { + "description": "Properties for a key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyType": { + "description": "The key type like 'AzureKeyVault'.", + "enum": [ + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the key.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The key creation date.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKey": { + "description": "A PostgreSQL Server key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector used to protect the key.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerKeyProperties", + "description": "Properties of the ServerKey Resource.", + "x-ms-client-flatten": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json new file mode 100644 index 000000000000..393dae1882fe --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json new file mode 100644 index 000000000000..fea5fcac6929 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json new file mode 100644 index 000000000000..e93d814a0790 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json new file mode 100644 index 000000000000..00c15ad367c8 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/readme.go.md b/specification/postgresql/resource-manager/readme.go.md index 9fefd0e0313c..7fc16ffa1a54 100644 --- a/specification/postgresql/resource-manager/readme.go.md +++ b/specification/postgresql/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-01-01 - tag: package-2017-12-01-preview - tag: package-2017-12-01 ``` +### Tag: package-2020-01-01 and go + +These settings apply only when `--tag=package-2020-01-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) +``` + ### Tag: package-2017-12-01-preview and go These settings apply only when `--tag=package-2017-12-01-preview --go` is specified on the command line. diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index 765e97564901..115fef7db845 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the PostgreSQL API. title: PostgreSQLManagementClient description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model. openapi-type: arm -tag: package-2018-06-01 +tag: package-2020-01-01 ``` ### Tag: package-2020-01-01-privatepreview @@ -41,6 +41,21 @@ input-file: - Microsoft.DBforPostgreSQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json ``` + +### Tag: package-2020-01-01 + +These settings apply only when `--tag=package-2020-01-01` is specified on the command line. + + +``` yaml $(tag) == 'package-2020-01-01' +input-file: +- Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json +- Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json +``` + + ### Tag: package-2018-06-01-privatepreview These settings apply only when `--tag=package-2018-06-01-privatepreview` is specified on the command line. @@ -168,11 +183,12 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json + - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json + - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json + - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json ``` diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json index 501c08fe4a58..3d2afa463e73 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json @@ -14,8 +14,31 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { - "provisioningState": "Succeeded" + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateEndpointConnections/pe114-pemsi-ecy-rsv.5944358949303501042.backup.75061caa-cba4-4849-8e09-608da4914aad", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.Network/privateEndpoints/pe114-pemsi-ecy-rsv" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "None", + "actionsRequired": "None" + } + } + } + ], + "privateEndpointStateForBackup": "Enabled", + "privateEndpointStateForSiteRecovery": "None" }, "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", "type": "Microsoft.RecoveryServices/vaults", diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json new file mode 100644 index 000000000000..eb4c7a1cbb1a --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2016-06-01", + "privateLinkResourceName": "backupResource" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..3a245b92f5ac --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/amchandnTest2702A/privateLinkResources/siteRecoveryResource", + "name": "siteRecoveryResource", + "type": "Microsoft.RecoveryServices/vaults/privateLinkResources", + "properties": { + "groupId": "AzureSiteRecovery", + "requiredMembers": [ + "siteRecovery-rcm1", + "siteRecovery-prot2", + "siteRecovery-tel1", + "siteRecovery-srs1", + "siteRecovery-prot2b", + "siteRecovery-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.siterecovery.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json index d2a9dca8334c..9f7a754d4a1c 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json @@ -9,7 +9,10 @@ "sku": { "name": "Standard" }, - "location": "West US" + "location": "West US", + "identity": { + "type": "SystemAssigned" + } } }, "responses": { @@ -21,6 +24,11 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { "provisioningState": "Succeeded" }, @@ -39,6 +47,11 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { "provisioningState": "Succeeded" }, diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json index fba28afd72a3..120ec809c638 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json @@ -18,6 +18,96 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "ListPrivateLinkResources" + ], + "summary": "Returns the list of private link resources that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List PrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "GetPrivateLinkResources" + ], + "summary": "Returns a specified private link resource that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get PrivateLinkResource": { + "$ref": "./examples/GetPrivateLinkResources.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/locations/{location}/checkNameAvailability": { "post": { "tags": [ @@ -62,7 +152,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/CheckNameAvailabilityResultResource" + "$ref": "#/definitions/CheckNameAvailabilityResult" } } }, @@ -548,20 +638,6 @@ } } }, - "CheckNameAvailabilityResultResource": { - "description": "Response for check name availability API. Resource provider will set availability as true | false.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/CheckNameAvailabilityResult", - "description": "CheckNameAvailabilityResultResource properties" - } - } - }, "ClientDiscoveryDisplay": { "description": "Localized display information of an operation.", "type": "object", @@ -839,6 +915,9 @@ } ], "properties": { + "identity": { + "$ref": "#/definitions/IdentityData" + }, "properties": { "$ref": "#/definitions/VaultProperties" }, @@ -928,6 +1007,230 @@ }, "upgradeDetails": { "$ref": "#/definitions/UpgradeDetails" + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionVaultProperties" + }, + "description": "List of private endpoint connection.", + "readOnly": true + }, + "privateEndpointStateForBackup": { + "description": "Private endpoint state for backup.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "privateEndpointStateForSiteRecovery": { + "description": "Private endpoint state for site recovery.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + } + } + }, + "IdentityData": { + "required": [ + "type" + ], + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnectionVaultProperties": { + "description": "Information to be stored in Vault properties as an element of privateEndpointConnections List.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Format of id subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.[Service]/{resource}/{resourceName}/privateEndpointConnections/{connectionName}.", + "readOnly": true, + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties.", + "readOnly": true, + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection.", + "readOnly": true, + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Gets or sets private link service connection state.", + "readOnly": true, + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status.", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description.", + "readOnly": true, + "type": "string" + }, + "actionsRequired": { + "description": "Gets or sets actions required.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResources": { + "description": "Class which represent the stamps associated with the vault.", + "readOnly": true, + "type": "object", + "properties": { + "value": { + "description": "A collection of private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "Information of the private link resource.", + "readOnly": true, + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties", + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "e.g. Microsoft.RecoveryServices/vaults/privateLinkResources", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "description": "Properties of the private link resource.", + "properties": { + "groupId": { + "description": "e.g. f9ad6492-33d4-4690-9999-6bfd52a0d081 (Backup) or f9ad6492-33d4-4690-9999-6bfd52a0d082 (SiteRecovery)", + "readOnly": true, + "type": "string" + }, + "requiredMembers": { + "description": "[backup-ecs1, backup-prot1, backup-prot1b, backup-prot1c, backup-id1]", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The private link resource Private link DNS zone name.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } } } } diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json index 0ed084282de0..50fb70dba218 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json @@ -1,329 +1,329 @@ { - "swagger":"2.0", - "info":{ - "version":"2018-12-20", - "title":"RecoveryServicesBackupClient", - "x-ms-code-generation-settings":{ - "internalConstructors":false + "swagger": "2.0", + "info": { + "version": "2018-12-20", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false } }, - "host":"management.azure.com", - "schemes":[ + "host": "management.azure.com", + "schemes": [ "https" ], - "consumes":[ + "consumes": [ "application/json" ], - "produces":[ + "produces": [ "application/json" ], - "paths":{ - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupAadProperties/default":{ - "get":{ - "tags":[ + "paths": { + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupAadProperties/default": { + "get": { + "tags": [ "AadProperties" ], - "summary":"Fetches the AAD properties from target region BCM stamp.", - "operationId":"AadProperties_Get", - "produces":[ + "summary": "Fetches the AAD properties from target region BCM stamp.", + "operationId": "AadProperties_Get", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" } ], - "responses":{ - "200":{ - "description":"OK", - "schema":{ - "$ref":"#/definitions/AADPropertiesResource" + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AADPropertiesResource" } } }, - "x-ms-examples":{ - "Get AAD Properties for authentication in the third region":{ - "$ref":"./examples/AzureIaasVm/BackupAadProperties_Get.json" + "x-ms-examples": { + "Get AAD Properties for authentication in the third region": { + "$ref": "./examples/AzureIaasVm/BackupAadProperties_Get.json" } } } }, - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrossRegionRestore":{ - "post":{ - "tags":[ + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrossRegionRestore": { + "post": { + "tags": [ "CrossRegionRestore" ], - "summary":"Restores the specified backed up data in a different region as compared to where the data is backed up.", - "operationId":"CrossRegionRestore_Trigger", - "produces":[ + "summary": "Restores the specified backed up data in a different region as compared to where the data is backed up.", + "operationId": "CrossRegionRestore_Trigger", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" }, { - "name":"parameters", - "in":"body", - "description":"resource cross region restore request", - "required":true, - "schema":{ - "$ref":"#/definitions/CrossRegionRestoreRequestResource" + "name": "parameters", + "in": "body", + "description": "resource cross region restore request", + "required": true, + "schema": { + "$ref": "#/definitions/CrossRegionRestoreRequestResource" } } ], - "responses":{ - "202":{ - "description":"Accepted" + "responses": { + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "final-state-via": "azure-async-operation" }, - "x-ms-examples":{ - "Trigger Cross Region Restore":{ - "$ref":"./examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json" + "x-ms-examples": { + "Trigger Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json" } } } }, - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJob":{ - "post":{ - "tags":[ + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJob": { + "post": { + "tags": [ "CrrJobDetails" ], - "summary":"Get CRR job details from target region.", - "operationId":"BackupCrrJobDetails_Get", - "produces":[ + "summary": "Get CRR job details from target region.", + "operationId": "BackupCrrJobDetails_Get", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" } ], - "responses":{ - "200":{ - "description":"OK", - "schema":{ - "$ref":"#/definitions/JobResource" + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResource" } } }, - "x-ms-examples":{ - "Get Cross Region Restore Job Details in the secondary region":{ - "$ref":"./examples/AzureIaasVm/GetCrrJob_Post.json" + "x-ms-examples": { + "Get Cross Region Restore Job Details in the secondary region": { + "$ref": "./examples/AzureIaasVm/GetCrrJob_Post.json" } } } }, - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJobs":{ - "post":{ - "tags":[ + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJobs": { + "post": { + "tags": [ "BackupCrrJobs" ], - "summary":"Gets the list of CRR jobs from the target region.", - "operationId":"BackupCrrJobs_List", - "produces":[ + "summary": "Gets the list of CRR jobs from the target region.", + "operationId": "BackupCrrJobs_List", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" } ], - "responses":{ - "200":{ - "description":"OK", - "schema":{ - "$ref":"#/definitions/JobResourceList" + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResourceList" } } }, - "x-ms-pageable":{ - "nextLinkName":"nextLink" + "x-ms-pageable": { + "nextLinkName": "nextLink" }, - "x-ms-examples":{ - "List Cross Region Restore Jobs in the secondary region":{ - "$ref":"./examples/AzureIaasVm/ListCrrJobs_Post.json" + "x-ms-examples": { + "List Cross Region Restore Jobs in the secondary region": { + "$ref": "./examples/AzureIaasVm/ListCrrJobs_Post.json" } } } }, - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationResults/{operationId}":{ - "get":{ - "tags":[ + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationResults/{operationId}": { + "get": { + "tags": [ "CrrOperationResults" ], - "operationId":"CrrOperationResults_Get", - "produces":[ + "operationId": "CrrOperationResults_Get", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" }, { - "name":"operationId", - "in":"path", - "required":true, - "type":"string" + "name": "operationId", + "in": "path", + "required": true, + "type": "string" } ], - "responses":{ - "200":{ - "description":"OK" + "responses": { + "200": { + "description": "OK" }, - "202":{ - "description":"Accepted" + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "final-state-via": "azure-async-operation" }, - "x-ms-examples":{ - "Get Operation Results for Cross Region Restore":{ - "$ref":"./examples/AzureIaasVm/GetCrrOperationResults_Get.json" + "x-ms-examples": { + "Get Operation Results for Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/GetCrrOperationResults_Get.json" } } } }, - "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationsStatus/{operationId}":{ - "get":{ - "tags":[ + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationsStatus/{operationId}": { + "get": { + "tags": [ "CrrOperationStatus" ], - "operationId":"CrrOperationStatus_Get", - "produces":[ + "operationId": "CrrOperationStatus_Get", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/AzureRegion" + "$ref": "#/parameters/AzureRegion" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" }, { - "name":"operationId", - "in":"path", - "required":true, - "type":"string" + "name": "operationId", + "in": "path", + "required": true, + "type": "string" } ], - "responses":{ - "200":{ - "description":"OK", - "schema":{ - "$ref":"#/definitions/OperationStatus" + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" } } }, - "x-ms-examples":{ - "Get Operation Status for Cross Region Restore":{ - "$ref":"./examples/AzureIaasVm/GetCrrOperationStatus_Get.json" + "x-ms-examples": { + "Get Operation Status for Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/GetCrrOperationStatus_Get.json" } } } }, - "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/accessToken":{ - "post":{ - "tags":[ + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/accessToken": { + "post": { + "tags": [ "RecoveryPoints" ], - "summary":"Returns the Access token for communication between BMS and Protection service", - "operationId":"RecoveryPoints_GetAccessToken", - "produces":[ + "summary": "Returns the Access token for communication between BMS and Protection service", + "operationId": "RecoveryPoints_GetAccessToken", + "produces": [ "application/json" ], - "parameters":[ + "parameters": [ { - "$ref":"#/parameters/ApiVersion" + "$ref": "#/parameters/ApiVersion" }, { - "$ref":"#/parameters/VaultName" + "$ref": "#/parameters/VaultName" }, { - "$ref":"#/parameters/ResourceGroupName" + "$ref": "#/parameters/ResourceGroupName" }, { - "$ref":"#/parameters/SubscriptionId" + "$ref": "#/parameters/SubscriptionId" }, { - "name":"fabricName", - "in":"path", - "description":"Fabric name associated with the container.", - "required":true, - "type":"string" + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" }, { - "name":"containerName", - "in":"path", - "description":"Name of the container.", - "required":true, - "type":"string" + "name": "containerName", + "in": "path", + "description": "Name of the container.", + "required": true, + "type": "string" }, { - "name":"protectedItemName", - "in":"path", - "description":"Name of the Protected Item.", - "required":true, - "type":"string" + "name": "protectedItemName", + "in": "path", + "description": "Name of the Protected Item.", + "required": true, + "type": "string" }, { - "name":"recoveryPointId", - "in":"path", - "description":"Recovery Point Id", - "required":true, - "type":"string" + "name": "recoveryPointId", + "in": "path", + "description": "Recovery Point Id", + "required": true, + "type": "string" } ], - "responses":{ - "200":{ - "description":"OK", - "schema":{ - "$ref":"#/definitions/CrrAccessTokenResource" + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CrrAccessTokenResource" } } }, - "x-ms-examples":{ - "Get Access Token for Crr":{ - "$ref":"./examples/AzureIaasVm/GetAccessToken_Get.json" + "x-ms-examples": { + "Get Access Token for Crr": { + "$ref": "./examples/AzureIaasVm/GetAccessToken_Get.json" } } } @@ -3542,62 +3542,62 @@ } } }, - "parameters":{ - "SubscriptionId":{ - "name":"subscriptionId", - "in":"path", - "description":"The subscription Id.", - "required":true, - "type":"string" - }, - "AzureRegion":{ - "name":"azureRegion", - "in":"path", - "description":"Azure region to hit Api", - "required":true, - "type":"string", - "x-ms-parameter-location":"method" - }, - "ApiVersion":{ - "name":"api-version", - "in":"query", - "description":"Client Api Version.", - "required":true, - "type":"string" - }, - "ResourceGroupName":{ - "name":"resourceGroupName", - "in":"path", - "description":"The name of the resource group where the recovery services vault is present.", - "required":true, - "type":"string", - "x-ms-parameter-location":"method" - }, - "VaultName":{ - "name":"vaultName", - "in":"path", - "description":"The name of the recovery services vault.", - "required":true, - "type":"string", - "x-ms-parameter-location":"method" + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "AzureRegion": { + "name": "azureRegion", + "in": "path", + "description": "Azure region to hit Api", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, - "securityDefinitions":{ - "azure_auth":{ - "type":"oauth2", - "description":"Azure Active Directory OAuth2 Flow", - "flow":"implicit", - "authorizationUrl":"https://login.microsoftonline.com/common/oauth2/authorize", - "scopes":{ - "user_impersonation":"impersonate your user account." + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." } } }, - "security":[ + "security": [ { - "azure_auth":[ + "azure_auth": [ "user_impersonation" ] } ] -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json index 09e6468b1643..e4a261165996 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json @@ -1,18 +1,18 @@ { - "parameters":{ - "subscriptionId":"00000000-0000-0000-0000-000000000000", - "azureRegion":"southeastasia", - "api-version":"2018-12-20" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20" }, - "responses":{ - "200":{ - "body":{ - "properties":{ - "tenantId":"33e01921-4d64-4f8c-a055-5bdaffd5e33d", - "audience":"https://RecoveryServices/IaasCoord/aadmgmt/ecy", - "servicePrincipalObjectId":"07e0a67b-cba3-4fcf-a58c-b670d5ced06d" + "responses": { + "200": { + "body": { + "properties": { + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "audience": "https://RecoveryServices/IaasCoord/aadmgmt/ecy", + "servicePrincipalObjectId": "07e0a67b-cba3-4fcf-a58c-b670d5ced06d" } } } } -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json index cb00f9eaa6ee..dbd66a894a11 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json @@ -5,36 +5,31 @@ "api-version": "2018-12-20", "parameters": { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm", - "jobName":"02585cc9-d7f4-4b46-860c-14c048cce178" + "jobName": "02585cc9-d7f4-4b46-860c-14c048cce178" } }, "responses": { "200": { - "body": - { - "id":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", - "name":"02585cc9-d7f4-4b46-860c-14c048cce178", - "type":"Microsoft.RecoveryServices/vaults/backupJobs", - "properties":{ - "jobType":"AzureIaaSVMJob", - "duration":"1.20:17:03.2938821", - "virtualMachineVersion":"Compute", - "extendedInfo":{ - "tasksList":[ - - ], - "propertyBag":{ - - } - }, - "entityFriendlyName":"sriniccylinux", - "backupManagementType":"AzureIaasVM", - "operation":"CrossRegionRestore", - "status":"InProgress", - "startTime":"2019-10-12T10:22:43.9139656Z", - "activityId":"6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" - } + "body": { + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", + "name": "02585cc9-d7f4-4b46-860c-14c048cce178", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "1.20:17:03.2938821", + "virtualMachineVersion": "Compute", + "extendedInfo": { + "tasksList": [], + "propertyBag": {} + }, + "entityFriendlyName": "sriniccylinux", + "backupManagementType": "AzureIaasVM", + "operation": "CrossRegionRestore", + "status": "InProgress", + "startTime": "2019-10-12T10:22:43.9139656Z", + "activityId": "6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" } + } } } } diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json index 4f020690aa4e..068154ce73da 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json @@ -1,21 +1,21 @@ { - "parameters":{ - "subscriptionId":"00000000-0000-0000-0000-000000000000", - "azureRegion":"southeastasia", - "operationId":"00000000-0000-0000-0000-000000000000", - "api-version":"2018-12-20", - "parameters":{ - "resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" } }, - "responses":{ - "202":{ - "headers":{ - "Location":"location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", - "Azure-AsyncOperation":"azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", - "Retry-After":60 + "responses": { + "202": { + "headers": { + "Location": "location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Azure-AsyncOperation": "azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Retry-After": 60 } }, "200": {} } -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json index 640210ec8332..435faf3f20e0 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json @@ -1,22 +1,22 @@ { - "parameters":{ - "subscriptionId":"00000000-0000-0000-0000-000000000000", - "azureRegion":"southeastasia", - "operationId":"00000000-0000-0000-0000-000000000000", - "api-version":"2018-12-20", - "parameters":{ - "resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" } }, - "responses":{ - "200":{ - "body":{ - "id":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", - "name":"MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", - "status":"Succeeded", - "startTime":"2019-10-14T06:46:44.3225024Z", - "endTime":"2019-10-14T06:46:44Z" + "responses": { + "200": { + "body": { + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", + "name": "MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", + "status": "Succeeded", + "startTime": "2019-10-14T06:46:44.3225024Z", + "endTime": "2019-10-14T06:46:44Z" } } } -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json index e1123c31e99f..69c52aeeb20e 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json @@ -1,34 +1,34 @@ { - "parameters":{ - "subscriptionId":"00000000-0000-0000-0000-000000000000", - "azureRegion":"southeastasia", - "api-version":"2018-12-20", - "parameters":{ - "resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" } }, - "responses":{ + "responses": { "200": { "body": { "value": [ { - "id":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", - "name":"02585cc9-d7f4-4b46-860c-14c048cce178", - "type":"Microsoft.RecoveryServices/vaults/backupJobs", - "properties":{ - "jobType":"AzureIaaSVMJob", - "duration":"1.19:59:12.7946856", - "virtualMachineVersion":"Compute", - "entityFriendlyName":"sriniccylinux", - "backupManagementType":"AzureIaasVM", - "operation":"CrossRegionRestore", - "status":"InProgress", - "startTime":"2019-10-12T10:22:43.9139656Z", - "activityId":"6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", + "name": "02585cc9-d7f4-4b46-860c-14c048cce178", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "1.19:59:12.7946856", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "sriniccylinux", + "backupManagementType": "AzureIaasVM", + "operation": "CrossRegionRestore", + "status": "InProgress", + "startTime": "2019-10-12T10:22:43.9139656Z", + "activityId": "6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" } } ] } } } -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json index a6ae3e5e2e91..845ae5b837ab 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json @@ -1,59 +1,59 @@ { - "parameters":{ - "subscriptionId":"00000000-0000-0000-0000-000000000000", - "azureRegion":"southeastasia", - "api-version":"2018-12-20", - "parameters":{ - "properties":{ - "crossRegionRestoreAccessDetails":{ - "accessTokenString":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IkhqaUJHdVExa2lWV2hyc2lzLUhEckhyWVZNbyJ9.eyJVc2VySWRlbnRpdHlUeXBlIjoiQUFEIiwiQWFkVGVuYW50SWQiOiIzM2UwMTkyMS00ZDY0LTRmOGMtYTA1NS01YmRhZmZkNWUzM2QiLCJBYWRTUE9iamVjdElkIjoiOTMzMjc2ZmMtMWJiNy00ZWNiLTk0ZTYtYWY3ODMyNWY3MjZhIiwiUmVzdG9yZVBvaW50UGVybWlzc2lvbnMiOiJSZWFkIiwiUmVzdG9yZVBvaW50SUQiOiJyZXNvdXJjZXMvMTMzMDgzNzkwNjQxODEzODE2MC9wcm90ZWN0aW9uQ29udGFpbmVycy8xMTE0Ni9wcm90ZWN0ZWRJdGVtcy8xMTQyOTM3MDMxL3JlY292ZXJ5UG9pbnRzLzg3MTc4MzU1MzkyNzE2IiwiaXNzIjoiaHR0cHM6Ly9SZWNvdmVyeVNlcnZpY2UiLCJhdWQiOiJodHRwczovL1JlY292ZXJ5U2VydmljZXMvUHJvdGVjdGlvblNlcnZpY2UiLCJleHAiOjE1NzExMjE5ODYsIm5iZiI6MTU3MTAzNTI4Nn0.oNbeX8ueE6JRGU0IagFjkOlU-o48ez9gCeCrn1-8XEsaVtYJIFKq9FeHfPAoCMxiLQvwL7S0JTjDTjiEsZEvr_VM7tDVwW3sESo2oW-SZlxT_1dJiUBn0jVlQyfDcHEMzbkaTuZswgNWfowgOrnJ67y-ztSUcegf3eVKPEhN1enBBS7pIuL9bZ3SVwMuqznUen6dH54y9lN2w6H14X0UK2CwSN94Uh-spB27j9SbksxLY_tyZm6xsamZFTHpwbgZwR24-GDtElPSxpFL6n_tWLSCHQtN9s84o0X7PfFaMkVmGWbOf4AZmP9M6agagG0JLnlOwObr07YrzZRkg3s2eQ", - "backupManagementType":"AzureIaasVM", - "containerName":"iaasvmcontainerv2;srinivasccyrg;sriniccylinux", - "containerType":"IaasVMContainer", - "coordinatorServiceStampUri":"https://pod01-coord1.ccy.backup.windowsazure.com", - "datasourceContainerName":"iaasvmcontainerv2;srinivasccyrg;sriniccylinux", - "datasourceId":"1142937031", - "datasourceName":"sriniccylinux", - "datasourceType":"VM", - "protectionServiceStampId":"90d98224-2ac6-4bda-9f35-33fb22841f2a", - "protectionServiceStampUri":"https://pod01-prot1-int.ccy.backup.windowsazure.com", - "recoveryPointId":"87178355392716", - "recoveryPointTime":"10/9/2019 6:05:54 PM", - "resourceGroupName":"srinivasccyrg", - "resourceId":"1330837906418138160", - "resourceName":"sriniccyvault", - "subscriptionId":"f2edfd5d-5496-4683-b94f-b3588c579009", - "tokenExtendedInformation":"V2015_09f2edfd5d-5496-4683-b94f-b3588c579009;AzureBackup_sriniccylinux_1142937031;AzureBackup_20191009_060554;AzureBackupRG_centraluseuap_1truetruefalseLinuxFileSystemConsistentPremiumVMOnPremiumStorageStandard_D2s_v3" + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20", + "parameters": { + "properties": { + "crossRegionRestoreAccessDetails": { + "accessTokenString": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IkhqaUJHdVExa2lWV2hyc2lzLUhEckhyWVZNbyJ9.eyJVc2VySWRlbnRpdHlUeXBlIjoiQUFEIiwiQWFkVGVuYW50SWQiOiIzM2UwMTkyMS00ZDY0LTRmOGMtYTA1NS01YmRhZmZkNWUzM2QiLCJBYWRTUE9iamVjdElkIjoiOTMzMjc2ZmMtMWJiNy00ZWNiLTk0ZTYtYWY3ODMyNWY3MjZhIiwiUmVzdG9yZVBvaW50UGVybWlzc2lvbnMiOiJSZWFkIiwiUmVzdG9yZVBvaW50SUQiOiJyZXNvdXJjZXMvMTMzMDgzNzkwNjQxODEzODE2MC9wcm90ZWN0aW9uQ29udGFpbmVycy8xMTE0Ni9wcm90ZWN0ZWRJdGVtcy8xMTQyOTM3MDMxL3JlY292ZXJ5UG9pbnRzLzg3MTc4MzU1MzkyNzE2IiwiaXNzIjoiaHR0cHM6Ly9SZWNvdmVyeVNlcnZpY2UiLCJhdWQiOiJodHRwczovL1JlY292ZXJ5U2VydmljZXMvUHJvdGVjdGlvblNlcnZpY2UiLCJleHAiOjE1NzExMjE5ODYsIm5iZiI6MTU3MTAzNTI4Nn0.oNbeX8ueE6JRGU0IagFjkOlU-o48ez9gCeCrn1-8XEsaVtYJIFKq9FeHfPAoCMxiLQvwL7S0JTjDTjiEsZEvr_VM7tDVwW3sESo2oW-SZlxT_1dJiUBn0jVlQyfDcHEMzbkaTuZswgNWfowgOrnJ67y-ztSUcegf3eVKPEhN1enBBS7pIuL9bZ3SVwMuqznUen6dH54y9lN2w6H14X0UK2CwSN94Uh-spB27j9SbksxLY_tyZm6xsamZFTHpwbgZwR24-GDtElPSxpFL6n_tWLSCHQtN9s84o0X7PfFaMkVmGWbOf4AZmP9M6agagG0JLnlOwObr07YrzZRkg3s2eQ", + "backupManagementType": "AzureIaasVM", + "containerName": "iaasvmcontainerv2;srinivasccyrg;sriniccylinux", + "containerType": "IaasVMContainer", + "coordinatorServiceStampUri": "https://pod01-coord1.ccy.backup.windowsazure.com", + "datasourceContainerName": "iaasvmcontainerv2;srinivasccyrg;sriniccylinux", + "datasourceId": "1142937031", + "datasourceName": "sriniccylinux", + "datasourceType": "VM", + "protectionServiceStampId": "90d98224-2ac6-4bda-9f35-33fb22841f2a", + "protectionServiceStampUri": "https://pod01-prot1-int.ccy.backup.windowsazure.com", + "recoveryPointId": "87178355392716", + "recoveryPointTime": "10/9/2019 6:05:54 PM", + "resourceGroupName": "srinivasccyrg", + "resourceId": "1330837906418138160", + "resourceName": "sriniccyvault", + "subscriptionId": "f2edfd5d-5496-4683-b94f-b3588c579009", + "tokenExtendedInformation": "V2015_09f2edfd5d-5496-4683-b94f-b3588c579009;AzureBackup_sriniccylinux_1142937031;AzureBackup_20191009_060554;AzureBackupRG_centraluseuap_1truetruefalseLinuxFileSystemConsistentPremiumVMOnPremiumStorageStandard_D2s_v3" }, - "restoreRequest":{ - "affinityGroup":"", - "createNewCloudService":false, - "encryptionDetails":{ - "encryptionEnabled":false + "restoreRequest": { + "affinityGroup": "", + "createNewCloudService": false, + "encryptionDetails": { + "encryptionEnabled": false }, - "objectType":"IaasVMRestoreRequest", - "originalStorageAccountOption":false, - "recoveryPointId":"87178355392716", - "recoveryType":"AlternateLocation", - "region":"eastus2euap", - "sourceResourceId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/srinivasccyrg/providers/Microsoft.Compute/virtualMachines/sriniccylinux", - "storageAccountId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00prjaiTestRg1/providers/Microsoft.Storage/storageAccounts/00prjaitestrg1disks993", - "subnetId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet/subnets/default", - "targetDomainNameId":null, - "targetResourceGroupId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl", - "targetVirtualMachineId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl/providers/Microsoft.Compute/virtualMachines/gaallaVM", - "virtualNetworkId":"/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet" + "objectType": "IaasVMRestoreRequest", + "originalStorageAccountOption": false, + "recoveryPointId": "87178355392716", + "recoveryType": "AlternateLocation", + "region": "eastus2euap", + "sourceResourceId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/srinivasccyrg/providers/Microsoft.Compute/virtualMachines/sriniccylinux", + "storageAccountId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00prjaiTestRg1/providers/Microsoft.Storage/storageAccounts/00prjaitestrg1disks993", + "subnetId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet/subnets/default", + "targetDomainNameId": null, + "targetResourceGroupId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl", + "targetVirtualMachineId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl/providers/Microsoft.Compute/virtualMachines/gaallaVM", + "virtualNetworkId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet" } } } }, - "responses":{ - "202":{ - "headers":{ - "Location":"location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", - "Azure-AsyncOperation":"azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", - "Retry-After":60 + "responses": { + "202": { + "headers": { + "Location": "location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Azure-AsyncOperation": "azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Retry-After": 60 } } } -} \ No newline at end of file +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json new file mode 100644 index 000000000000..1336ac488311 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json @@ -0,0 +1,473 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-02-02", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "PrivateEndpoint" + ], + "summary": "Gets the operation status for a private endpoint connection.", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Gets or sets private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Gets or sets private link service connection state" + } + } + }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection Response Properties", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection", + "description": "PrivateEndpointConnectionResource properties" + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionState": { + "description": "Private Link Service Connection State", + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description", + "type": "string" + }, + "actionRequired": { + "description": "Gets or sets actions required", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..afce2b84d2c8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..45dee7c44bcc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json new file mode 100644 index 000000000000..f91c1f9849d3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "vaultName": "gaallavaultbvtd2msi", + "operationId": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "api-version": "2020-02-02" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..2e8c586ecd08 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02", + "parameters": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/readme.go.md b/specification/recoveryservicesbackup/resource-manager/readme.go.md index b82f4110080d..7d6540136972 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.go.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-02 - tag: package-2019-06 - tag: package-2019-05 - tag: package-2017-07 @@ -20,6 +21,15 @@ batch: - tag: package-2016-06 ``` +### Tag: package-2020-02 and go + +These settings apply only when `--tag=package-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-02' && $(go) +output-folder: $(go-sdk-folder)/services/recoveryservices/mgmt/2020-02-02/$(namespace) +``` + ### Tag: package-2019-06 and go These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. diff --git a/specification/recoveryservicesbackup/resource-manager/readme.java.md b/specification/recoveryservicesbackup/resource-manager/readme.java.md index b54903820c62..4f212d2b9248 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.java.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.java.md @@ -18,6 +18,24 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-recoveryservicesbac ``` yaml $(java) && $(multiapi) batch: - tag: package-2016-08 + - tag: package-2020-02 +directive: + - rename-operation: + from: Operations_List + to: Operation_List +``` + +### Tag: package-2020-02 and java + +These settings apply only when `--tag=package-2020-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.recoveryservices.backup.v2020_02_02 + output-folder: $(azure-libraries-for-java-folder)/sdk/recoveryservices.backup/mgmt-v2020_02_02 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2016-08 and java diff --git a/specification/recoveryservicesbackup/resource-manager/readme.md b/specification/recoveryservicesbackup/resource-manager/readme.md index e9ea8c8212d4..fcb830f7613c 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the RecoveryServicesBackup API. title: Recovery Services Backup Client description: Open API 2.0 Specs for Azure RecoveryServices Backup service openapi-type: arm -tag: package-2019-06 +tag: package-2020-02 csharp-sdks-folder: ./Generated/CSharp python-sdks-folder: ./Generated/Python go-sdk-folder: ./Generated/Golang @@ -45,6 +45,20 @@ model-validator: true semantic-validator: true message-format: json ``` +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02' +input-file: +- Microsoft.RecoveryServices/stable/2020-02-02/bms.json +- Microsoft.RecoveryServices/stable/2019-06-15/bms.json +- Microsoft.RecoveryServices/stable/2017-07-01/bms.json +- Microsoft.RecoveryServices/stable/2016-12-01/bms.json +- Microsoft.RecoveryServices/stable/2016-08-10/operations.json +``` + + ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. @@ -176,6 +190,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.RecoveryServices/stable/2020-02-02/bms.json - $(this-folder)/Microsoft.RecoveryServices/stable/2019-06-15/bms.json - $(this-folder)/Microsoft.RecoveryServices/stable/2017-07-01/bms.json - $(this-folder)/Microsoft.RecoveryServices/stable/2016-12-01/bms.json diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json index a057706e816e..9776b198618e 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json @@ -12,12 +12,13 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "providerSpecificDetails": { "instanceType": "VMwareCbt", - "disksToInclude" : [ + "disksToInclude": [ { "diskId": "disk1", "isOSDisk": "true", "logStorageAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Storage/storageAccounts/logStorageAccount1", - "logStorageAccountSasSecretName": "logStorageSas" + "logStorageAccountSasSecretName": "logStorageSas", + "diskEncryptionSetId": "/subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" } ], "vmwareMachineId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/machines/virtualmachine1", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json index 6a0366eb7c02..acf3afe58996 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json @@ -49,4 +49,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json index 729374001a66..87ed21684413 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json @@ -16176,6 +16176,10 @@ "name": "DiskAccountType", "modelAsString": true } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" } } }, @@ -16412,6 +16416,11 @@ "type": "integer", "readOnly": true }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, "resyncState": { "description": "The resync state.", "enum": [ @@ -16619,6 +16628,11 @@ "type": "string", "readOnly": true }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string", + "readOnly": true + }, "seedManagedDiskId": { "description": "The ARM Id of the seed managed disk.", "type": "string", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json index 15284b3961db..73e97b7f7517 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json @@ -12,7 +12,7 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "providerSpecificDetails": { "instanceType": "VMwareCbt", - "disksToInclude" : [ + "disksToInclude": [ { "diskId": "disk1", "isOSDisk": "true", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json index d8a2c12eb4f0..c9d99937b366 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json @@ -35,11 +35,15 @@ "name": "Standard_A0", "friendlyName": "Standard_A0", "cpuCoresCount": 1, + "vCPUsAvailable": 1, "memoryInGB": 0.75, "maxDataDiskCount": 1, "maxNicsCount": 2, "errors": null, - "highIopsSupported": "NotSupported" + "highIopsSupported": "NotSupported", + "hyperVGenerations": [ + "V1" + ] } } ], diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json index 61e8d59f854b..522c8ff4f166 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json @@ -242,7 +242,6 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { "Gets the validation errors in case the VM is unsuitable for protection.": { "$ref": "./examples/ReplicationEligibilityResults_List.json" @@ -287,7 +286,6 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { "Gets the validation errors in case the VM is unsuitable for protection.": { "$ref": "./examples/ReplicationEligibilityResults_Get.json" @@ -7499,6 +7497,10 @@ "description": "The recovery availability set Id.", "type": "string" }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "vmDisks": { "description": "The list of vm disk details.", "type": "array", @@ -8004,6 +8006,16 @@ "type": "string", "readOnly": true }, + "initialPrimaryZone": { + "description": "The initial primary availability zone.", + "type": "string", + "readOnly": true + }, + "initialRecoveryZone": { + "description": "The initial recovery availability zone.", + "type": "string", + "readOnly": true + }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" @@ -8177,6 +8189,10 @@ "tfoAzureVMName": { "description": "The test failover VM name.", "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" } }, "x-ms-discriminator-value": "A2A" @@ -8259,6 +8275,10 @@ "description": "The recovery availability set.", "type": "string" }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "policyId": { "description": "The Policy Id.", "type": "string" @@ -8345,6 +8365,10 @@ "$ref": "#/definitions/DiskEncryptionInfo", "description": "The recovery os disk encryption information." }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "tfoAzureVMName": { "description": "The user given name for test failover VM.", "type": "string" @@ -11717,6 +11741,11 @@ "description": "The process server Id.", "type": "string" }, + "processServerName": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" @@ -13844,6 +13873,60 @@ "agentVersionDetails": { "$ref": "#/definitions/VersionDetails", "description": "The agent version details." + }, + "health": { + "description": "The health of Process Server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "psStatsRefreshTime": { + "format": "date-time", + "description": "The process server stats refresh time.", + "type": "string", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInMBps": { + "format": "int64", + "description": "The throughput in MBps.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputStatus": { + "description": "The throughput status.", + "type": "string", + "readOnly": true + }, + "marsCommunicationStatus": { + "description": "The MARS communication status.", + "type": "string", + "readOnly": true + }, + "marsRegistrationStatus": { + "description": "The MARS registration status.", + "type": "string", + "readOnly": true } } }, @@ -14310,7 +14393,7 @@ "type": "string" } }, - "x-ms-discriminator-value": "RecoveryPlanA2ADetails" + "x-ms-discriminator-value": "A2A" }, "RecoveryPlanA2AInput": { "description": "Recovery plan A2A input.", @@ -16153,6 +16236,12 @@ "description": "The maximum cpu cores count supported by target compute size.", "type": "integer" }, + "vCPUsAvailable": { + "format": "int32", + "description": "The Available vCPUs supported by target compute size.", + "type": "integer", + "readOnly": true + }, "memoryInGB": { "format": "double", "description": "The maximum memory in GB supported by target compute size.", @@ -16178,6 +16267,14 @@ "highIopsSupported": { "description": "The value indicating whether the target compute size supports high Iops.", "type": "string" + }, + "hyperVGenerations": { + "description": "The supported HyperV Generations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true } } }, @@ -17129,6 +17226,32 @@ "items": { "$ref": "#/definitions/IPConfig" } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoRecoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoRecoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false } } }, @@ -17190,6 +17313,32 @@ "items": { "$ref": "#/definitions/IPConfig" } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false } } }, diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json new file mode 100644 index 000000000000..149b7a8459f0 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName", + "parameters": { + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "clusterProfile": { + "pullSecret": "{\"auths\":{\"registry.connect.redhat.com\":{\"auth\":\"\"},\"registry.redhat.io\":{\"auth\":\"\"}}}", + "domain": "cluster.location.aroapp.io", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": {}, + "servicePrincipalProfile": { + "clientId": "clientId", + "clientSecret": "clientSecret" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json new file mode 100644 index 000000000000..d851985e9f44 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json new file mode 100644 index 000000000000..1f64ffeff9cd --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json new file mode 100644 index 000000000000..6691f0d3078a --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json new file mode 100644 index 000000000000..c7af8efe014e --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json new file mode 100644 index 000000000000..aa749c7a2e69 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "200": { + "body": { + "kubeadminUsername": "kubeadmin", + "kubeadminPassword": "password" + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json new file mode 100644 index 000000000000..74800c50c1af --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName", + "parameters": { + "tags": { + "key": "value" + }, + "properties": { + "clusterProfile": { + "pullSecret": "{\"auths\":{\"registry.connect.redhat.com\":{\"auth\":\"\"},\"registry.redhat.io\":{\"auth\":\"\"}}}", + "domain": "cluster.location.aroapp.io", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": {}, + "servicePrincipalProfile": { + "clientId": "clientId", + "clientSecret": "clientSecret" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json new file mode 100644 index 000000000000..0683f851f7c1 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-04-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.RedHatOpenShift/openShiftClusters/read", + "display": { + "provider": "Azure Red Hat OpenShift", + "resource": "openShiftClusters", + "operation": "Read OpenShift cluster" + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json new file mode 100644 index 000000000000..2baad1416737 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json @@ -0,0 +1,778 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Red Hat OpenShift Client", + "description": "Rest API for Azure Red Hat OpenShift", + "version": "2020-04-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.RedHatOpenShift/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available RP operations.", + "description": "Lists all of the available RP operations. The operation returns the RP operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists all of the available RP operations.": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.RedHatOpenShift/openShiftClusters": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists OpenShift clusters in the specified subscription.", + "description": "Lists OpenShift clusters in the specified subscription. The operation returns properties of each OpenShift cluster.", + "operationId": "OpenShiftClusters_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists OpenShift clusters in the specified subscription.": { + "$ref": "./examples/OpenShiftClusters_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists OpenShift clusters in the specified subscription and resource group.", + "description": "Lists OpenShift clusters in the specified subscription and resource group. The operation returns properties of each OpenShift cluster.", + "operationId": "OpenShiftClusters_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists OpenShift clusters in the specified subscription and resource group.": { + "$ref": "./examples/OpenShiftClusters_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName}": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Gets a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Gets a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Get.json" + } + } + }, + "put": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The OpenShift cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Deletes a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Deletes a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns nothing.", + "operationId": "OpenShiftClusters_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Delete.json" + } + } + }, + "patch": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The OpenShift cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/OpenShiftClusterUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName}/listCredentials": { + "post": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name. The operation returns the credentials.", + "operationId": "OpenShiftClusters_ListCredentials", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterCredentials" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_ListCredentials.json" + } + } + } + } + }, + "definitions": { + "APIServerProfile": { + "description": "APIServerProfile represents an API server profile.", + "properties": { + "visibility": { + "$ref": "#/definitions/Visibility", + "description": "API server visibility (immutable)." + }, + "url": { + "description": "The URL to access the cluster API server (immutable).", + "type": "string" + }, + "ip": { + "description": "The IP of the cluster API server (immutable).", + "type": "string" + } + } + }, + "CloudError": { + "description": "CloudError represents a cloud error.", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from the service." + } + } + }, + "CloudErrorBody": { + "description": "CloudErrorBody represents the body of a cloud error.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + } + } + } + }, + "ClusterProfile": { + "description": "ClusterProfile represents a cluster profile.", + "properties": { + "pullSecret": { + "description": "The pull secret for the cluster (immutable).", + "type": "string" + }, + "domain": { + "description": "The domain for the cluster (immutable).", + "type": "string" + }, + "version": { + "description": "The version of the cluster (immutable).", + "type": "string" + }, + "resourceGroupId": { + "description": "The ID of the cluster resource group (immutable).", + "type": "string" + } + } + }, + "ConsoleProfile": { + "description": "ConsoleProfile represents a console profile.", + "properties": { + "url": { + "description": "The URL to access the cluster console (immutable).", + "type": "string" + } + } + }, + "Display": { + "description": "Display represents the display details of an operation.", + "properties": { + "provider": { + "description": "Friendly name of the resource provider.", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation.", + "type": "string" + } + } + }, + "IngressProfile": { + "description": "IngressProfile represents an ingress profile.", + "properties": { + "name": { + "description": "The ingress profile name. Must be \"default\" (immutable).", + "type": "string" + }, + "visibility": { + "$ref": "#/definitions/Visibility", + "description": "Ingress visibility (immutable)." + }, + "ip": { + "description": "The IP of the ingress (immutable).", + "type": "string" + } + } + }, + "MasterProfile": { + "description": "MasterProfile represents a master profile.", + "properties": { + "vmSize": { + "$ref": "#/definitions/VMSize", + "description": "The size of the master VMs (immutable)." + }, + "subnetId": { + "description": "The Azure resource ID of the master subnet (immutable).", + "type": "string" + } + } + }, + "NetworkProfile": { + "description": "NetworkProfile represents a network profile.", + "properties": { + "podCidr": { + "description": "The CIDR used for OpenShift/Kubernetes Pods (immutable).", + "type": "string" + }, + "serviceCidr": { + "description": "The CIDR used for OpenShift/Kubernetes Services (immutable).", + "type": "string" + } + } + }, + "OpenShiftCluster": { + "description": "OpenShiftCluster represents an Azure Red Hat OpenShift cluster.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/OpenShiftClusterProperties", + "description": "The cluster properties.", + "x-ms-client-flatten": true + } + } + }, + "OpenShiftClusterCredentials": { + "description": "OpenShiftClusterCredentials represents an OpenShift cluster's credentials", + "properties": { + "kubeadminUsername": { + "description": "The username for the kubeadmin user", + "type": "string" + }, + "kubeadminPassword": { + "description": "The password for the kubeadmin user", + "type": "string" + } + } + }, + "OpenShiftClusterList": { + "description": "OpenShiftClusterList represents a list of OpenShift clusters.", + "properties": { + "value": { + "description": "The list of OpenShift clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + } + }, + "OpenShiftClusterProperties": { + "description": "OpenShiftClusterProperties represents an OpenShift cluster's properties.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The cluster provisioning state (immutable)." + }, + "clusterProfile": { + "$ref": "#/definitions/ClusterProfile", + "description": "The cluster profile." + }, + "consoleProfile": { + "$ref": "#/definitions/ConsoleProfile", + "description": "The console profile." + }, + "servicePrincipalProfile": { + "$ref": "#/definitions/ServicePrincipalProfile", + "description": "The cluster service principal profile." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "The cluster network profile." + }, + "masterProfile": { + "$ref": "#/definitions/MasterProfile", + "description": "The cluster master profile." + }, + "workerProfiles": { + "description": "The cluster worker profiles.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkerProfile" + } + }, + "apiserverProfile": { + "$ref": "#/definitions/APIServerProfile", + "description": "The cluster API server profile." + }, + "ingressProfiles": { + "description": "The cluster ingress profiles.", + "type": "array", + "items": { + "$ref": "#/definitions/IngressProfile" + } + } + } + }, + "OpenShiftClusterUpdate": { + "description": "OpenShiftCluster represents an Azure Red Hat OpenShift cluster.", + "properties": { + "tags": { + "$ref": "#/definitions/Tags", + "description": "The resource tags." + }, + "properties": { + "$ref": "#/definitions/OpenShiftClusterProperties", + "description": "The cluster properties.", + "x-ms-client-flatten": true + } + } + }, + "Operation": { + "description": "Operation represents an RP operation.", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/Display", + "description": "The object that describes the operation." + }, + "origin": { + "description": "Sources of requests to this operation. Comma separated list with valid values user or system, e.g. \"user,system\".", + "type": "string" + } + } + }, + "OperationList": { + "description": "OperationList represents an RP operation list.", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + } + }, + "ProvisioningState": { + "description": "ProvisioningState represents a provisioning state.", + "enum": [ + "AdminUpdating", + "Creating", + "Deleting", + "Failed", + "Succeeded", + "Updating" + ], + "type": "string" + }, + "ServicePrincipalProfile": { + "description": "ServicePrincipalProfile represents a service principal profile.", + "properties": { + "clientId": { + "description": "The client ID used for the cluster (immutable).", + "type": "string" + }, + "clientSecret": { + "description": "The client secret used for the cluster (immutable).", + "type": "string" + } + } + }, + "Tags": { + "description": "Tags represents an OpenShift cluster's tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "VMSize": { + "description": "VMSize represents a VM size.", + "enum": [ + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3" + ], + "type": "string" + }, + "Visibility": { + "description": "Visibility represents visibility.", + "enum": [ + "Private", + "Public" + ], + "type": "string" + }, + "WorkerProfile": { + "description": "WorkerProfile represents a worker profile.", + "properties": { + "name": { + "description": "The worker profile name. Must be \"worker\" (immutable).", + "type": "string" + }, + "vmSize": { + "$ref": "#/definitions/VMSize", + "description": "The size of the worker VMs (immutable)." + }, + "diskSizeGB": { + "description": "The disk size of the worker VMs. Must be 128 or greater (immutable).", + "type": "integer" + }, + "subnetId": { + "description": "The Azure resource ID of the worker subnet (immutable).", + "type": "string" + }, + "count": { + "description": "The number of worker VMs. Must be between 3 and 20 (immutable).", + "type": "integer" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/redhatopenshift/resource-manager/readme.go.md b/specification/redhatopenshift/resource-manager/readme.go.md new file mode 100644 index 000000000000..a43d0fcd9c52 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: redhatopenshift + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 and go + +These settings apply only when `--tag=package-2020-04-30 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04-30' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-30/$(namespace) +``` diff --git a/specification/redhatopenshift/resource-manager/readme.md b/specification/redhatopenshift/resource-manager/readme.md new file mode 100644 index 000000000000..d33bcd5b082c --- /dev/null +++ b/specification/redhatopenshift/resource-manager/readme.md @@ -0,0 +1,89 @@ +# Azure Red Hat OpenShift + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Red Hat OpenShift. + +--- + +## Getting Started + +To build the SDK for Azure Red Hat OpenShift, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Azure Red Hat OpenShift API. + +``` yaml +openapi-type: arm +tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 + +These settings apply only when `--tag=package-2020-04-30` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04-30' +input-file: + - Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + after_scripts: + - python ./scripts/multiapi_init_gen.py azure-mgmt-redhatopenshift + - repo: azure-sdk-for-go +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/redhatopenshift/resource-manager/readme.python.md b/specification/redhatopenshift/resource-manager/readme.python.md new file mode 100644 index 000000000000..6ec5494abba7 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/readme.python.md @@ -0,0 +1,33 @@ +## Python + +These settings apply only when `--python` is specified on the command line. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + package-name: azure-mgmt-redhatopenshift + clear-output-folder: true + no-namespace-folders: true +``` + +### Python multi-api + +Generate all API versions currently shipped for this package + +```yaml $(python) && $(multiapi) +batch: + - tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 and python + +These settings apply only when `--tag=package-2020-04-30 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04-30' && $(python) +python: + namespace: azure.mgmt.redhatopenshift.v2020_04_30 + output-folder: $(python-sdks-folder)/redhatopenshift/azure-mgmt-redhatopenshift/azure/mgmt/redhatopenshift/v2020_04_30 +``` diff --git a/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json b/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json new file mode 100644 index 000000000000..15553a20ca6b --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json @@ -0,0 +1,127 @@ +{ + "swagger": "2.0", + "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" + } + } + }, + "info": { + "version": "2017-04-01", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "TrackedResource": { + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "location" + ], + "description": "Definition of resource." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "description": "The resource definition.", + "x-ms-azure-resource": true + }, + "ErrorResponse": { + "description": "Error response indicates Relay service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + }, + "NamespaceNameParameter": { + "name": "namespaceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 6, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The namespace name" + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json new file mode 100644 index 000000000000..213ff50419f2 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json @@ -0,0 +1,643 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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": { + "/providers/Microsoft.Relay/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "RelayOperationsList": { + "$ref": "./examples/RelayOperations_List.json" + } + }, + "description": "Lists all available Relay REST API operations.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Relay/checkNameAvailability": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CheckNameAvailability", + "x-ms-examples": { + "RelayCheckNameAvailability": { + "$ref": "./examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json" + } + }, + "description": "Check the specified namespace name availability.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailability" + }, + "description": "Parameters to check availability of the specified namespace name." + } + ], + "responses": { + "200": { + "description": "Check availability returned successfully.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Relay/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_List", + "x-ms-examples": { + "RelayNameSpaceListBySubscription": { + "$ref": "./examples/NameSpaces/RelayNameSpaceListBySubscription.json" + } + }, + "description": "Lists all the available namespaces within the subscription regardless of the resourceGroups.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully", + "schema": { + "$ref": "#/definitions/RelayNamespaceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListByResourceGroup", + "x-ms-examples": { + "RelayNameSpaceListByResourceGroup": { + "$ref": "./examples/NameSpaces/RelayNameSpaceListByResourceGroup.json" + } + }, + "description": "Lists all the available namespaces within the ResourceGroup.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces by resource group returned successfully", + "schema": { + "$ref": "#/definitions/RelayNamespaceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdate", + "x-ms-examples": { + "RelayNamespaceCreate": { + "$ref": "./examples/NameSpaces/RelayNameSpaceCreate.json" + } + }, + "description": "Create Azure Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RelayNamespace" + }, + "description": "Parameters supplied to create a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace create request succeeded.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "201": { + "description": "Namespace create request accepted.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Delete", + "x-ms-examples": { + "RelayNameSpaceDelete": { + "$ref": "./examples/NameSpaces/RelayNameSpaceDelete.json" + } + }, + "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace delete request succeeded." + }, + "202": { + "description": "Namespace delete request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "Namespace delete request has been accepted, but the namespace was not found." + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Get", + "x-ms-examples": { + "RelayNameSpaceGet": { + "$ref": "./examples/NameSpaces/RelayNameSpaceGet.json" + } + }, + "description": "Returns the description for the specified namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace description returned successfully.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Update", + "x-ms-examples": { + "RelayNameSpaceUpdate": { + "$ref": "./examples/NameSpaces/RelayNameSpaceUpdate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RelayUpdateParameters" + }, + "description": "Parameters for updating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully updated.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ResourceNamespacePatch": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Definition of resource." + }, + "RelayNamespaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RelayNamespace" + }, + "description": "Result of the list namespace operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if value contains incomplete list of namespaces." + } + }, + "description": "The response from the list namespace operation." + }, + "RelayNamespace": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the namespace." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelayNamespaceProperties", + "description": "Description of Relay namespace" + } + }, + "description": "Description of a namespace resource.", + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ] + }, + "RelayNamespaceProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "enum": [ + "Created", + "Succeeded", + "Deleted", + "Failed", + "Updating", + "Unknown" + ], + "x-ms-enum": { + "name": "provisioningStateEnum", + "modelAsString": false + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time the namespace was created." + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time the namespace was updated." + }, + "serviceBusEndpoint": { + "type": "string", + "readOnly": true, + "description": "Endpoint you can use to perform Service Bus operations." + }, + "metricId": { + "type": "string", + "readOnly": true, + "description": "Identifier for Azure Insights metrics." + } + }, + "description": "Properties of the namespace." + }, + "RelayUpdateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the namespace." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelayNamespaceProperties", + "description": "Description of Relay namespace." + } + }, + "description": "Description of a namespace resource.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNamespacePatch" + } + ] + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of this SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "The tier of this SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of the namespace.", + "required": [ + "name" + ] + }, + "UnavailableReason": { + "type": "string", + "enum": [ + "None", + "InvalidName", + "SubscriptionIsDisabled", + "NameInUse", + "NameInLockdown", + "TooManyNamespaceInCurrentSubscription" + ], + "x-ms-enum": { + "name": "UnavailableReason", + "modelAsString": true + }, + "description": "Specifies the reason for the unavailability of the service." + }, + "CheckNameAvailability": { + "properties": { + "name": { + "type": "string", + "description": "The namespace name to check for availability. The namespace name can contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must end with a letter or number." + } + }, + "required": [ + "name" + ], + "description": "Description of the check name availability request properties." + }, + "CheckNameAvailabilityResult": { + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the namespace." + }, + "nameAvailable": { + "type": "boolean", + "description": "Value indicating namespace is available. Returns true if the namespace is available; otherwise, false." + }, + "reason": { + "$ref": "#/definitions/UnavailableReason", + "description": "The reason for unavailability of a namespace." + } + }, + "description": "Description of the check name availability request properties." + }, + "OperationListResult": { + "description": "Result of the request to list Relay operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of Relay operations supported by resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A Relay REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Relay.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: Invoice, etc.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json new file mode 100644 index 000000000000..72704f717385 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json @@ -0,0 +1,191 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { + "put": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json" + } + }, + "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", + "description": "Create or update NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "The Namespace IpFilterRule." + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetGet": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json" + } + }, + "operationId": "Namespaces_GetNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NWRuleSetIpRules": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + } + } + }, + "description": "The response from the List namespace operation." + }, + "NetworkRuleSet": { + "properties": { + "properties": { + "description": "NetworkRuleSet properties", + "x-ms-client-flatten": true, + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + }, + "description": "List of IpRules" + } + } + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Description of topic resource." + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json new file mode 100644 index 000000000000..7d0090ec30fb --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json @@ -0,0 +1,432 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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.Relay/namespaces/{namespaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_ListByNamespace", + "x-ms-examples": { + "RelayPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json" + } + }, + "description": "Lists all Private Endpoint Connections for the Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private Endpoint Connections for given namespace returned successfully", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "x-ms-examples": { + "RelayPutPrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json" + } + }, + "description": "Updates the specified private endpoint connection associated with the Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "update request for state of private endpoint connection is accepted.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "RelayDeletePrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json" + } + }, + "description": "Deletes the specified private endpoint connection associated with the relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "RelayGetPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json" + } + }, + "description": "Gets the specified private endpoint connection associated with the Relay Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}/operationStatus/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "OperationStatus" + ], + "operationId": "OperationStatusPrivateEndpointConnections_Get", + "x-ms-examples": { + "RelayPrivateEndpointConnectionsoperationStatus": { + "$ref": "./examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json" + } + }, + "description": "Gets the Operation status of private endpoint connection associated with Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/OperationTypeParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation Status for Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/OperationStatusItem" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateEndpointConnectionItem": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the Relay Namespace owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Unknown", + "Succeeded", + "Creating", + "Updating", + "UpdatingByProxy", + "Deleting", + "DeletingByProxy" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "OperationStatusItem": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint connection resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "name of the private endpoint connection resource." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of private endpoint connection operation." + } + }, + "description": "Operation Status object properties." + } + }, + "parameters": { + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "description": "The PrivateEndpointConnection name." + }, + "OperationTypeParameter": { + "name": "operationType", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json new file mode 100644 index 000000000000..1d5a2f0ce9e7 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json @@ -0,0 +1,141 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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.Relay/namespaces/{namespaceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResourcesGet", + "x-ms-examples": { + "RelayPrivateLinkResourcesList": { + "$ref": "./examples/PrivateEndpointConnections/ListPrivateLinkResources.json" + } + }, + "description": "Gets the private link resources supported for the Relay namespace", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json new file mode 100644 index 000000000000..ceb1912fe6be --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2017-04-01", + "subscriptionId": "e2f361f0-3b27-4503-a9cc-21cfba380093", + "parameters": { + "name": "sdk-Namespace1321" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "None", + "message": "" + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json new file mode 100644 index 000000000000..0c08edcc17dc --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "parameters": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Created", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Created", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json new file mode 100644 index 000000000000..1b76118965d6 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "SouthCentralUS", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json new file mode 100644 index 000000000000..d071b36ed19d --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "namespaceName": "sdk-RelayNamespace-01", + "resourceGroupName": "RG-eg", + "api-version": "2018-01-01-preview", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-01", + "createdAt": "2017-01-23T20:38:12.46Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-01.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:38:34.533Z" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json new file mode 100644 index 000000000000..d96fc39ccb25 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "resourceGroupName": "ArunMonocle" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3054", + "name": "sdk-Namespace-3054", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3054", + "serviceBusEndpoint": "https://sdk-Namespace-3054.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/oaisdjfoiasdjfoiajsdfoijasd", + "name": "oaisdjfoiasdjfoiajsdfoijasd", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:oaisdjfoiasdjfoiajsdfoijasd", + "serviceBusEndpoint": "https://oaisdjfoiasdjfoiajsdfoijasd.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/abc123", + "name": "abc123", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:abc123", + "serviceBusEndpoint": "https://abc123.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-4984", + "name": "sdk-Namespace-4984", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-4984", + "serviceBusEndpoint": "https://sdk-Namespace-4984.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5606", + "name": "sdk-Namespace-5606", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5606", + "serviceBusEndpoint": "https://sdk-Namespace-5606.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-7703", + "name": "sdk-Namespace-7703", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-7703", + "serviceBusEndpoint": "https://sdk-Namespace-7703.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/zzzzzzzzzzzzzzzzzzzzzz-00001", + "name": "zzzzzzzzzzzzzzzzzzzzzz-00001", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:zzzzzzzzzzzzzzzzzzzzzz-00001", + "serviceBusEndpoint": "https://zzzzzzzzzzzzzzzzzzzzzz-00001.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3919", + "name": "sdk-Namespace-3919", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3919", + "serviceBusEndpoint": "https://sdk-Namespace-3919.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "name": "aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "serviceBusEndpoint": "https://aiosdjfaoidjasdoijasdfoijasdfofijsdf.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3413", + "name": "sdk-Namespace-3413", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3413", + "serviceBusEndpoint": "https://sdk-Namespace-3413.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-8695", + "name": "sdk-Namespace-8695", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-8695", + "serviceBusEndpoint": "https://sdk-Namespace-8695.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-4801", + "name": "sdk-Namespace-4801", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-4801", + "serviceBusEndpoint": "https://sdk-Namespace-4801.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-2812", + "name": "sdk-Namespace-2812", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-2812", + "serviceBusEndpoint": "https://sdk-Namespace-2812.servicebus.windows-int.net:443/" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json new file mode 100644 index 000000000000..322e170db494 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2017-04-01", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG1-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-01", + "createdAt": "2017-01-23T20:34:49.4131724Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-01.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:34:59.4131724Z" + } + }, + { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG1-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-02", + "name": "sdk-RelayNamespace-02", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-02", + "createdAt": "2017-01-23T20:34:39.4131724Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-02.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:34:49.4131724Z" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json new file mode 100644 index 000000000000..d5cd25d599bc --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "namespaceName": "sdk-RelayNamespace-01", + "resourceGroupName": "RG-eg", + "api-version": "2017-04-01", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef", + "parameters": { + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-relaynamespace-01" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-relaynamespace-01" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json new file mode 100644 index 000000000000..1b348a493bba --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription", + "parameters": { + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourceGroups/resourcegroupid/providers/Microsoft.Relay/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.Relay/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json new file mode 100644 index 000000000000..cfb06835e037 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionid/resourceGroups/resourcegroupid/providers/Microsoft.Relay/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.Relay/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json new file mode 100644 index 000000000000..6bdc6a6a116b --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/dbedb4e0-40e6-4145-81f3-f1314c150774/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateLinkResources/namespace", + "name": "namespace", + "type": "Microsoft.Relay/namespaces/privateLinkResources", + "properties": { + "groupId": "namespace", + "requiredMembers": [ + "namespace" + ], + "requiredZoneNames": [ + "privatelink.servicebus.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..c2340e408340 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "operationType": "update", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}/operationStatus/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "status": "Succeeded" + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json new file mode 100644 index 000000000000..aba1c63c5358 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "privateEndpointConnectionName": "{privateEndpointConnection name}", + "parameters": { + "location": "South Central US", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json new file mode 100644 index 000000000000..c0318df86386 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "204": {} + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..b2f7e0b880ac --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/{RGName}/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/326100e2-f69d-4268-8503-075374f62b6e/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "approve please" + } + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json new file mode 100644 index 000000000000..b452d4751ba8 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "approve please" + } + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json new file mode 100644 index 000000000000..343f26864584 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Relay/checkNameAvailability/action", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Non Resource Operation", + "operation": "Get namespace availability." + } + }, + { + "name": "Microsoft.Relay/register/action", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay Resource Provider", + "operation": "Registers the Relay Resource Provider" + } + }, + { + "name": "Microsoft.Relay/namespaces/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Create Or Update Namespace " + } + }, + { + "name": "Microsoft.Relay/namespaces/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Get Namespace Resource" + } + }, + { + "name": "Microsoft.Relay/namespaces/Delete", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Delete Namespace" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Create or Update Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Get Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/Delete", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Delete Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace metrics", + "operation": "Get Namespace metrics" + } + }, + { + "name": "Microsoft.Relay/namespaces/diagnosticSettings/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace diagnostic settings", + "operation": "Get Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.Relay/namespaces/diagnosticSettings/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace diagnostic settings", + "operation": "Create or Update Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.Relay/namespaces/logDefinitions/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace logs", + "operation": "Get Namespace logs" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/readme.go.md b/specification/relay/resource-manager/readme.go.md index cb49f04963bb..1c46002f430e 100644 --- a/specification/relay/resource-manager/readme.go.md +++ b/specification/relay/resource-manager/readme.go.md @@ -17,6 +17,15 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2018-01-preview and go + +These settings apply only when `--tag=2018-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == '2018-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-01-preview/$(namespace) +``` + ### Tag: package-2017-04 and go These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. diff --git a/specification/relay/resource-manager/readme.md b/specification/relay/resource-manager/readme.md index 0862529756bb..3099d74309cb 100644 --- a/specification/relay/resource-manager/readme.md +++ b/specification/relay/resource-manager/readme.md @@ -50,6 +50,19 @@ input-file: ``` +### Tag: package-2018-01-preview + +These settings apply only when `--tag=package-2018-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-01-preview' +input-file: +- Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json +``` + + --- # Code Generation @@ -155,6 +168,10 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.Relay/stable/2017-04-01/relay.json - $(this-folder)/Microsoft.Relay/stable/2016-07-01/relay.json + - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json + - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json + - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json + - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json ``` diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json index 48acc0554f29..6ac9a3d0a71c 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json @@ -11,11 +11,11 @@ "name": "Automatic Quota Increase", "properties": { "settings": { - "autoQuotaIncreaseState": "enabled" + "autoQuotaIncreaseState": "enabledForPreview" }, "onSuccess": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -27,7 +27,7 @@ }, "onFailure": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -38,7 +38,7 @@ } }, "supportTicketAction": { - "autoQuotaIncreaseState": "enabled", + "autoQuotaIncreaseState": "enabledForPreview", "severity": "Minimal", "firstName": "FN", "lastName": "LN", diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json index 24d476be36d0..824b3eef7d4e 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json @@ -14,10 +14,10 @@ "currentValue": 15, "limit": 20, "name": { - "localizedValue": "Clusters", - "value": "Clusters" + "value": "standardDv2Family", + "localizedValue": "Standard Dv2 Family vCPUs" }, - "unit": "Count" + "resourceType": "dedicated" } }, { @@ -25,43 +25,10 @@ "currentValue": 49, "limit": 600, "name": { - "localizedValue": "Total Cluster Dedicated Regional vCPUs", - "value": "Total Cluster Dedicated Regional vCPUs" + "value": "totalLowPriorityCores", + "localizedValue": "Total Regional Low-priority vCPUs" }, - "unit": "Count" - } - }, - { - "properties": { - "currentValue": 1, - "limit": 600, - "name": { - "localizedValue": "Standard D Family Cluster Dedicated vCPUs", - "value": "Standard D Family Cluster Dedicated vCPUs" - }, - "unit": "Count" - } - }, - { - "properties": { - "currentValue": 0, - "limit": 0, - "name": { - "localizedValue": "Standard ND Family Cluster Low Priority vCPUs", - "value": "Standard ND Family Cluster LowPriority vCPUs" - }, - "unit": "Count" - } - }, - { - "properties": { - "currentValue": 0, - "limit": 150, - "name": { - "localizedValue": "Standard NV Family Cluster Low Priority vCPUs", - "value": "Standard NV Family Cluster LowPriority vCPUs" - }, - "unit": "Count" + "resourceType": "lowPriority" } } ] diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json index aec6096cdbc1..4bd4702a9bf6 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json @@ -5,7 +5,6 @@ "location": "eastus", "resourceName": "standardFSv2Family", "api-version": "2019-07-19-preview", - "If-Match": "F2E0FB94-7F6B-4852-8EE8-67A04BBA6520", "createQuotaRequest": { "properties": { "limit": 200, diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json index b5763ea27d25..9dfc190deec2 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json @@ -5,11 +5,11 @@ "autoQuotaIncreaseRequest": { "properties": { "settings": { - "autoQuotaIncreaseState": "enabled" + "autoQuotaIncreaseState": "enabledForPreview" }, "onSuccess": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -21,7 +21,7 @@ }, "onFailure": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -32,7 +32,7 @@ } }, "supportTicketAction": { - "autoQuotaIncreaseState": "enabled", + "autoQuotaIncreaseState": "enabledForPreview", "severity": "Minimal", "firstName": "FN", "lastName": "LN", @@ -57,11 +57,11 @@ "name": "Automatic Quota Increase", "properties": { "settings": { - "autoQuotaIncreaseState": "enabled" + "autoQuotaIncreaseState": "enabledForPreview" }, "onSuccess": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -73,7 +73,7 @@ }, "onFailure": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -84,7 +84,7 @@ } }, "supportTicketAction": { - "autoQuotaIncreaseState": "enabled", + "autoQuotaIncreaseState": "enabledForPreview", "severity": "Minimal", "firstName": "FN", "lastName": "LN", diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json index 1f2b86e99176..c7a2af0a7d21 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json @@ -9,7 +9,7 @@ }, "onSuccess": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -21,12 +21,12 @@ }, "onFailure": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, { - "emailAddress": "admin2@contoso.com" + "emailAddress": "admin3@contoso.com" } ] } @@ -61,7 +61,7 @@ }, "onSuccess": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, @@ -73,12 +73,12 @@ }, "onFailure": { "emailActions": { - "value": [ + "emailAddresses": [ { "emailAddress": "itsupport@contoso.com" }, { - "emailAddress": "admin2@contoso.com" + "emailAddress": "admin3@contoso.com" } ] } diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json index 29dc58a1e447..d459467a2130 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json @@ -5,7 +5,6 @@ "location": "eastus", "resourceName": "standardFSv2Family", "api-version": "2019-07-19-preview", - "If-Match": "*", "createQuotaRequest": { "properties": { "limit": 200, diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json index 66dc47323378..c5134aee0475 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json @@ -41,7 +41,7 @@ ], "summary": "Gets the current quota limit and usages for the resource provider for the specified location for the specific resource in the parameter.", "description": "This API gets the current quota limit and usages for the specific resource for resource provider for the specified location. This response can be used to submit quotaRequests.", - "operationId": "Quota_listStatus", + "operationId": "Quota_Get", "x-ms-examples": { "Quotas_Request_ForCompute": { "$ref": "./examples/getComputeOneSkuUsages.json" @@ -87,11 +87,11 @@ }, "put": { "tags": [ - "QuotaRequests" + "QuotaInformation" ], "summary": "Submits a Quota Request for a resource provider at the specified location for the specific resource in the parameter.", - "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response.", - "operationId": "QuotaRequest_Create", + "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response. The Patch operation can be used also to update the quota.", + "operationId": "Quota_CreateOrUpdate", "x-ms-examples": { "Quotas_Request_listForCompute": { "$ref": "./examples/putComputeOneSkuQuotaRequest.json" @@ -125,9 +125,6 @@ "schema": { "$ref": "#/definitions/CurrentQuotaLimitBase" } - }, - { - "$ref": "#/parameters/IfMatchRequiredParameter" } ], "responses": { @@ -153,11 +150,11 @@ }, "patch": { "tags": [ - "QuotaRequests" + "QuotaInformation" ], "summary": "Submits a Quota Request for a resource provider at the specified location for the specific resource in the parameter.", - "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response.", - "operationId": "QuotaRequest_Update", + "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response. The Put operation can be used also to update the quota.", + "operationId": "Quota_Update", "x-ms-examples": { "Quotas_Request_PatchForCompute": { "$ref": "./examples/patchComputeQuotaRequest.json" @@ -191,9 +188,6 @@ "schema": { "$ref": "#/definitions/CurrentQuotaLimitBase" } - }, - { - "$ref": "#/parameters/IfMatchRequiredParameter" } ], "responses": { @@ -225,7 +219,7 @@ ], "summary": "Gets the current quota limit and usages for all the resources by the resource provider at the specified location.", "description": "This API gets the current quota limits and usages for the resource provider for the specified location. This response can be used to submit quotaRequests.", - "operationId": "Quotas_listStatus", + "operationId": "Quota_List", "x-ms-examples": { "Quotas_listUsagesForCompute": { "$ref": "./examples/getComputeUsages.json" @@ -294,7 +288,7 @@ }, "summary": "Gets the Quota request status by requestId, for the specified resource provider at specified location.", "description": "Gets the QuotaRequest details and status by the quota request Id for the resources for the resource provider at a specific location. The requestId is returned as response to the Put requests for serviceLimits.", - "operationId": "QuotaRequests_GetStatus", + "operationId": "QuotaRequestStatus_Get", "parameters": [ { "$ref": "#/parameters/SubscriptionIdInParameters" @@ -340,7 +334,7 @@ }, "summary": "For the specified location and resource Provider, gets the quota requests under the subscription over the time\n period of one year ago from now to one year back, based on the filter specified.", "description": "For the specified location and Resource provider gets the current quota requests under the subscription over the time period of one year ago from now to one year back. oData filter can be used to select quota requests.", - "operationId": "QuotaRequests_ListStatus", + "operationId": "QuotaRequestStatus_List", "parameters": [ { "$ref": "#/parameters/SubscriptionIdInParameters" @@ -851,6 +845,7 @@ "enum": [ "standard", "dedicated", + "lowPriority", "shared", "serviceSpecific" ], @@ -896,11 +891,11 @@ }, "onFailure": { "description": "The on failure Actions.", - "$ref": "#/definitions/OnFailure" + "$ref": "#/definitions/Actions" }, "onSuccess": { "description": "The on success Actions.", - "$ref": "#/definitions/OnSuccess" + "$ref": "#/definitions/Actions" }, "supportTicketAction": { "description": "The support ticket action.", @@ -930,19 +925,6 @@ "modelAsString": true } }, - "EmailActions": { - "description": "The email actions.", - "properties": { - "value": { - "description": "The list of email actions based on the success or failure of automatic quota increase action.", - "type": "array", - "items": { - "description": "The email recipients for the specific action types.", - "$ref": "#/definitions/EmailAction" - } - } - } - }, "SupportRequestAction": { "description": "The SupportRequest action.", "type": "object", @@ -1006,7 +988,7 @@ } }, "ContactMethod": { - "description": "The contact method.", + "description": "The contact method - Email: Contact using provided email, Phone: contact using provided phone number.", "enum": [ "Email", "Phone" @@ -1017,9 +999,10 @@ } }, "AqiState": { - "description": "The Auto quota increase state.", + "description": "The Auto quota increase feature state - enabled: feature is fully enabled, enabledForPreview: feature enabled for preview only, disabled: feature is disabled.", "enum": [ "enabled", + "enabledForPreview", "disabled" ], "x-ms-enum": { @@ -1043,6 +1026,7 @@ }, "EmailAction": { "description": "Email Action.", + "type": "object", "properties": { "emailAddress": { "description": "The email address for the action.", @@ -1050,13 +1034,18 @@ } } }, - "OnFailure": { - "description": "The on failure action for auto quota increase.", - "$ref": "#/definitions/Actions" - }, - "OnSuccess": { - "description": "The on success action for auto quota increase.", - "$ref": "#/definitions/Actions" + "EmailActions": { + "description": "The email actions.", + "properties": { + "emailAddresses": { + "description": "The list of email actions.", + "type": "array", + "items": { + "description": "The email recipients.", + "$ref": "#/definitions/EmailAction" + } + } + } }, "Actions": { "description": "The actions for auto quota increase.", @@ -1064,29 +1053,7 @@ "properties": { "emailActions": { "description": "The email actions for auto quota increase.", - "properties": { - "value": { - "description": "The list of email actions.", - "type": "array", - "items": { - "description": "The email recipients.", - "$ref": "#/definitions/EmailAction" - } - } - } - }, - "phoneActions": { - "description": "The phone actions for auto quota increase.", - "properties": { - "value": { - "description": "The list of phone actions.", - "type": "array", - "items": { - "description": "The email recipients.", - "$ref": "#/definitions/PhoneAction" - } - } - } + "$ref": "#/definitions/EmailActions" } } }, @@ -1204,14 +1171,6 @@ "required": false, "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls", "x-ms-parameter-location": "method" - }, - "IfMatchRequiredParameter": { - "name": "If-Match", - "in": "header", - "required": true, - "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", - "type": "string", - "x-ms-parameter-location": "method" } } } diff --git a/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json b/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json index f1d23375a8b2..d31c784ea472 100644 --- a/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json +++ b/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json @@ -36,6 +36,9 @@ "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ResourceGraph/queries": { "get": { + "tags": [ + "GraphQuery" + ], "description": "Get all graph queries defined within a specified subscription and resource group.", "operationId": "GraphQuery_List", "parameters": [ @@ -75,6 +78,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ResourceGraph/queries/{resourceName}": { "get": { + "tags": [ + "GraphQuery" + ], "description": "Get a single graph query by its resourceName.", "operationId": "GraphQuery_Get", "parameters": [ @@ -112,6 +118,9 @@ } }, "delete": { + "tags": [ + "GraphQuery" + ], "description": "Delete a graph query.", "operationId": "GraphQuery_Delete", "parameters": [ @@ -149,6 +158,9 @@ } }, "put": { + "tags": [ + "GraphQuery" + ], "description": "Create a new graph query.", "operationId": "GraphQuery_CreateOrUpdate", "parameters": [ @@ -255,6 +267,11 @@ "readOnly": true, "description": "Azure resource name. This is GUID value. The display name should be assigned within properties field." }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the resource" + }, "type": { "type": "string", "readOnly": true, diff --git a/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json b/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json index 5a76305a7a52..4dced5564006 100644 --- a/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json +++ b/specification/resourcegraph/resource-manager/Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json @@ -290,7 +290,8 @@ "type": "string" }, "data": { - "description": "Query output in tabular format." + "description": "Query output in tabular format.", + "type": "object" }, "facets": { "description": "Query facets.", @@ -409,7 +410,8 @@ "format": "int32" }, "data": { - "description": "A table containing the desired facets. Only present if the facet is valid." + "description": "A table containing the desired facets. Only present if the facet is valid.", + "type": "object" } }, "required": [ diff --git a/specification/resourcegraph/resource-manager/readme.md b/specification/resourcegraph/resource-manager/readme.md index 2da307cce788..0975fa101476 100644 --- a/specification/resourcegraph/resource-manager/readme.md +++ b/specification/resourcegraph/resource-manager/readme.md @@ -74,6 +74,7 @@ swagger-to-sdk: - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js + - repo: azure-sdk-for-trenton ``` ## C# @@ -141,3 +142,32 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## cli + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: ResourceGraph + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.ResourceGraph + package-name: azure-mgmt-ResourceGraph + clear-output-folder: false +``` + +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli_name: ResourceGraph + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: azure.mgmt.ResourceGraph + package_name: azure-mgmt-ResourceGraph + clear_output_folder: false +``` diff --git a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json new file mode 100644 index 000000000000..dc44a62c04ee --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "resourceProviderNamespace": "Resource Provider Namespace", + "featureName": "feature", + "api-version": "2015-12-01", + "subscriptionId": "ff23096b-f5a2-46ea-bd62-59c3e93fef9a" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "Feature1", + "properties": { + "state": "unregistered" + }, + "id": "/subscriptions/ff23096b-f5a2-46ea-bd62-59c3e93fef9a/providers/Microsoft.Features/providers/Microsoft.Test/features/Feature1", + "type": "Microsoft.Features/providers/features" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json index 8b9fbd36e54c..92d52d602189 100644 --- a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json +++ b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json @@ -226,6 +226,50 @@ } } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Features/providers/{resourceProviderNamespace}/features/{featureName}/unregister": { + "post": { + "tags": [ + "Features" + ], + "operationId": "Features_Unregister", + "description": "Unregisters the preview feature for the subscription.", + "x-ms-examples": { + "Register feature": { + "$ref": "./examples/unregisterFeature.json" + } + }, + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "featureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the feature to unregister." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns metadata about the unregistered feature. The metadata includes the name of the feature, the registration state, the resource ID, and resource type.", + "schema": { + "$ref": "#/definitions/FeatureResult" + } + } + } + } } }, "definitions": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json index 65e342a4c956..1a8320f05151 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json @@ -48,6 +48,12 @@ }, "DeploymentScriptsCreate_MinCreate": { "$ref": "./examples/DeploymentScripts_Min_Create.json" + }, + "DeploymentScriptsCreate_UsingCustomACIName": { + "$ref": "./examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json" + }, + "DeploymentScriptsCreate_UsingExistingStorageAccount": { + "$ref": "./examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json" } }, "parameters": [ @@ -439,6 +445,11 @@ "name": "ScriptType", "modelAsString": true } + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } }, "allOf": [ @@ -604,6 +615,16 @@ "x-ms-external": true, "description": "Common properties for the deployment script.", "properties": { + "containerSettings": { + "type": "object", + "description": "Container settings.", + "$ref": "#/definitions/ContainerConfiguration" + }, + "storageAccountSettings": { + "type": "object", + "description": "Storage Account settings.", + "$ref": "#/definitions/StorageAccountConfiguration" + }, "cleanupPreference": { "type": "string", "description": "The clean up preference when the script execution gets in a terminal state. Default setting is 'Always'.", @@ -651,6 +672,33 @@ } } }, + "ContainerConfiguration": { + "type": "object", + "description": "Settings to customize ACI container instance.", + "properties": { + "containerGroupName": { + "type": "string", + "description": "Container group name, if not specified then the name will get auto-generated. Not specifying a 'containerGroupName' indicates the system to generate a unique name which might end up flagging an Azure Policy as non-compliant. Use 'containerGroupName' when you have an Azure Policy that expects a specific naming convention or when you want to fully control the name. 'containerGroupName' property must be between 1 and 63 characters long, must contain only lowercase letters, numbers, and dashes and it cannot start or end with a dash and consecutive dashes are not allowed. To specify a 'containerGroupName', add the following object to properties: { \"containerSettings\": { \"containerGroupName\": \"contoso-container\" } }. If you do not want to specify a 'containerGroupName' then do not add 'containerSettings' property.", + "minLength": 1, + "maxLength": 63 + } + } + }, + "StorageAccountConfiguration": { + "type": "object", + "description": "Settings to use an existing storage account. Valid storage account kinds are: Storage, StorageV2 and FileStorage", + "properties": { + "storageAccountName": { + "type": "string", + "description": "The storage account name." + }, + "storageAccountKey": { + "type": "string", + "description": "The storage account access key.", + "x-ms-secret": true + } + } + }, "ScriptStatus": { "type": "object", "description": "Generic object modeling results of script execution.", @@ -742,7 +790,8 @@ }, "secureValue": { "type": "string", - "description": "The value of the secure environment variable." + "description": "The value of the secure environment variable.", + "x-ms-secret": true } }, "required": [ diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json index 2d4156d8e6df..b1d63f125fed 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json @@ -38,6 +38,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Creating", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json new file mode 100644 index 000000000000..3d105d7c8165 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "containerSettings": { + "containerGroupName": "contoso-aci" + }, + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always" + } + } + }, + "responses": { + "201": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "provisioningState": "Creating", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "containerSettings": { + "containerGroupName": "contoso-aci" + }, + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + } + } + } + }, + "200": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "P7D", + "timeout": "PT1H", + "containerSettings": { + "containerGroupName": "contoso-aci" + }, + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json new file mode 100644 index 000000000000..0d05227431c3 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "deploymentScript": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "storageAccountSettings": { + "storageAccountName": "contosostorage", + "storageAccountKey": "contosostoragekey" + }, + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "retentionInterval": "PT7D", + "timeout": "PT1H", + "cleanupPreference": "Always" + } + } + }, + "responses": { + "201": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "properties": { + "provisioningState": "Creating", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "storageAccountSettings": { + "storageAccountName": "contosostorage" + }, + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + } + } + } + }, + "200": { + "body": { + "kind": "AzurePowerShell", + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} + } + }, + "properties": { + "provisioningState": "Succeeded", + "azPowerShellVersion": "1.7.0", + "scriptContent": "Param([string]$Location,[string]$Name) $deploymentScriptOutputs['test'] = 'value' Get-AzResourceGroup -Location $Location -Name $Name", + "arguments": "-Location 'westus' -Name \"*rg2\"", + "supportingScriptUris": [ + "https://uri1.to.supporting.script", + "https://uri2.to.supporting.script" + ], + "storageAccountSettings": { + "storageAccountName": "contosostorage" + }, + "retentionInterval": "P7D", + "timeout": "PT1H", + "cleanupPreference": "Always", + "status": { + "containerInstanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ContainerInstance/containerGroups/scriptContainer", + "storageAccountId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.Storage/storageAccounts/scriptStorage", + "startTime": "2018-11-13T15:19:45-08:00", + "endTime": "2018-11-13T15:19:45-08:00", + "expirationTime": "2018-11-13T15:19:45-08:00" + }, + "outputs": { + "output1": "value1" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json index ee19875a981b..1e8d0566fdbc 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json @@ -16,6 +16,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json index 983b4c2c9cc8..e73c4a21c9d0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json @@ -18,6 +18,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json index 199c1ed77b31..e205c3b34347 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json @@ -16,6 +16,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json index b411784c4591..15100be96f75 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json @@ -32,6 +32,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Creating", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json index c365156e2a9d..f42821d1f4c2 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json @@ -34,6 +34,14 @@ "output1": "value1" } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "kind": "AzurePowerShell", "location": "westus", "identity": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json index 9052916fa211..9e93e552c6db 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -2730,7 +2730,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2803,7 +2804,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2880,7 +2882,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -2972,7 +2975,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3058,7 +3062,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3101,7 +3106,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -3139,7 +3145,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -3181,7 +3188,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3238,7 +3246,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", @@ -3289,7 +3298,8 @@ "in": "query", "required": true, "type": "string", - "description": "The API version to use for the operation." + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json index 2ffe26b4c6df..9f211358a985 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json @@ -257,6 +257,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -285,6 +286,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -561,6 +565,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -586,6 +591,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -871,6 +879,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -899,6 +908,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -1185,6 +1197,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -1213,6 +1226,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -1622,6 +1638,7 @@ "Deployments" ], "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -1660,6 +1677,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -2600,7 +2620,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SourceSubscriptionIdParameter" } ], "responses": { @@ -4394,7 +4414,7 @@ }, "description": "An error response for a resource management request." }, - "AliasPathType": { + "AliasPath": { "properties": { "path": { "type": "string", @@ -4408,13 +4428,13 @@ "description": "The API versions." }, "pattern": { - "$ref": "#/definitions/AliasPatternType", + "$ref": "#/definitions/AliasPattern", "description": "The pattern for an alias path." } }, "description": "The type of the paths for alias." }, - "AliasPatternType": { + "AliasPattern": { "properties": { "phrase": { "type": "string", @@ -4449,7 +4469,7 @@ }, "description": "The type of the pattern for an alias path." }, - "AliasType": { + "Alias": { "properties": { "name": { "type": "string", @@ -4458,7 +4478,7 @@ "paths": { "type": "array", "items": { - "$ref": "#/definitions/AliasPathType" + "$ref": "#/definitions/AliasPath" }, "description": "The paths for an alias." }, @@ -4494,7 +4514,7 @@ "description": "The default path for an alias." }, "defaultPattern": { - "$ref": "#/definitions/AliasPatternType", + "$ref": "#/definitions/AliasPattern", "description": "The default pattern for an alias." } }, @@ -4516,7 +4536,7 @@ "aliases": { "type": "array", "items": { - "$ref": "#/definitions/AliasType" + "$ref": "#/definitions/Alias" }, "description": "The aliases that are supported by this resource type." }, @@ -5016,6 +5036,7 @@ "type": "object", "additionalProperties": { "type": "object", + "x-ms-client-name": "IdentityUserAssignedIdentitiesValue", "properties": { "principalId": { "readOnly": true, @@ -5282,6 +5303,69 @@ }, "DeploymentOperationProperties": { "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, "provisioningState": { "readOnly": true, "type": "string", @@ -5735,7 +5819,8 @@ "required": true, "type": "string", "description": "The resource scope.", - "x-ms-parameter-location": "method" + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true }, "GroupIdParameter": { "name": "groupId", @@ -5754,6 +5839,13 @@ "type": "string", "description": "The ID of the target subscription." }, + "SourceSubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the source subscription." + }, "DeploymentNameParameter": { "name": "deploymentName", "in": "path", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json new file mode 100644 index 000000000000..587ecdee7ccd --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/centralus", + "name": "centralus", + "displayName": "Central US", + "regionalDisplayName": "(US) Central US", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-93.6208", + "latitude": "41.5908", + "physicalLocation": "Iowa", + "pairedRegion": [ + { + "name": "eastus2", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus2" + } + ] + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastasia", + "name": "eastasia", + "displayName": "East Asia", + "regionalDisplayName": "(Asia Pacific) East Asia", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "Asia Pacific", + "longitude": "114.188", + "latitude": "22.267", + "physicalLocation": "Hong Kong", + "pairedRegion": [ + { + "name": "southeastasia", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/southeastasia" + } + ] + } + } + ] + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json new file mode 100644 index 000000000000..fca6abaef605 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "Bypassed", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json new file mode 100644 index 000000000000..56bafb43289b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + }, + { + "id": "/subscriptions/72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "subscriptionId": "72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "tenantId": "2a0ff0de-96b2-4859-bb7c-a430d07a3e0c", + "displayName": "Example Subscription2", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + }, + { + "tenantId": "f7fb6af2-321d-47c8-9c0f-b0239eaad39a" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json new file mode 100644 index 000000000000..ec04256a4cdc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/tenants/a70a1586-9c4a-4373-b907-1d310660dbd1", + "tenantId": "a70a1586-9c4a-4373-b907-1d310660dbd1", + "countryCode": "US", + "displayName": "Test_Test_aad50", + "domains": [ + "aad50.ccsctp.net" + ], + "tenantCategory": "ManagedBy", + "defaultDomain": "aad50.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "tenantId": "83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "countryCode": "US", + "displayName": "Contoso Corp.", + "domains": [ + "auxteststagemanual.ccsctp.net" + ], + "tenantCategory": "Home", + "defaultDomain": "auxteststagemanual.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "tenantId": "daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "countryCode": "US", + "displayName": "TEST_TEST_RDV", + "domains": [ + "rdvmohoro.ccsctp.net", + "rdvmohoro.mail.ccsctp.net", + "rdvmohoro.com" + ], + "tenantCategory": "ProjectedBy", + "defaultDomain": "rdvmohoro.ccsctp.net", + "tenantType": "AAD", + "tenantBrandingLogoUrl": "logo1.logo.rdvmohoro.com" + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json new file mode 100644 index 000000000000..ee5d51274e47 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json @@ -0,0 +1,587 @@ +{ + "swagger": "2.0", + "info": { + "title": "SubscriptionClient", + "version": "2020-01-01", + "description": "All resource groups and resources exist within subscriptions. These operation enable you get information about your subscriptions and tenants. A tenant is a dedicated instance of Azure Active Directory (Azure AD) for your organization." + }, + "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": { + "/providers/Microsoft.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/locations": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_ListLocations", + "summary": "Gets all available geo-locations.", + "description": "This operation provides all the locations that are available for resource providers; however, each resource provider may support a subset of this list.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of locations.", + "schema": { + "$ref": "#/definitions/LocationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get locations with a subscription id": { + "$ref": "./examples/GetLocations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_Get", + "description": "Gets details about a specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the subscription.", + "schema": { + "$ref": "#/definitions/Subscription" + } + } + }, + "x-ms-examples": { + "Get a single subscription.": { + "$ref": "./examples/GetSubscription.json" + } + } + } + }, + "/subscriptions": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_List", + "description": "Gets all subscriptions for a tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of subscriptions.", + "schema": { + "$ref": "#/definitions/SubscriptionListResult" + } + } + }, + "x-ms-examples": { + "Get all subscriptions.": { + "$ref": "./examples/GetSubscriptions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/tenants": { + "get": { + "tags": [ + "Tenants" + ], + "operationId": "Tenants_List", + "description": "Gets the tenants for your account.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tenants.", + "schema": { + "$ref": "#/definitions/TenantListResult" + } + } + }, + "x-ms-examples": { + "Get all tenants.": { + "$ref": "./examples/GetTenants.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PairedRegion": { + "description": "Information regarding paired region.", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the paired region." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + } + } + }, + "LocationMetadata": { + "description": "Location metadata information", + "properties": { + "regionType": { + "readOnly": true, + "type": "string", + "description": "The type of the region.", + "enum": [ + "Physical", + "Logical" + ], + "x-ms-enum": { + "name": "RegionType", + "modelAsString": true + } + }, + "regionCategory": { + "readOnly": true, + "type": "string", + "description": "The category of the region.", + "enum": [ + "Recommended", + "Other" + ], + "x-ms-enum": { + "name": "RegionCategory", + "modelAsString": true + } + }, + "geographyGroup": { + "readOnly": true, + "type": "string", + "description": "The geography group of the location." + }, + "longitude": { + "readOnly": true, + "type": "string", + "description": "The longitude of the location." + }, + "latitude": { + "readOnly": true, + "type": "string", + "description": "The latitude of the location." + }, + "physicalLocation": { + "readOnly": true, + "type": "string", + "description": "The physical location of the Azure location." + }, + "pairedRegion": { + "type": "array", + "description": "The regions paired to this region.", + "items": { + "$ref": "#/definitions/PairedRegion" + } + } + } + }, + "Location": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The location name." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location." + }, + "regionalDisplayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location and its region." + }, + "metadata": { + "description": "Metadata of the location, such as lat/long, paired region, and others.", + "$ref": "#/definitions/LocationMetadata" + } + }, + "description": "Location information." + }, + "LocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Location" + }, + "description": "An array of locations." + } + }, + "description": "Location list operation response." + }, + "Subscription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID for the subscription. For example, /subscriptions/00000000-0000-0000-0000-000000000000." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The subscription display name." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The subscription tenant ID." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.", + "enum": [ + "Enabled", + "Warned", + "PastDue", + "Disabled", + "Deleted" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "subscriptionPolicies": { + "$ref": "#/definitions/SubscriptionPolicies", + "description": "The subscription policies." + }, + "authorizationSource": { + "type": "string", + "description": "The authorization source of the request. Valid values are one or more combinations of Legacy, RoleBased, Bypassed, Direct and Management. For example, 'Legacy, RoleBased'." + }, + "managedByTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedByTenant" + }, + "description": "An array containing the tenants managing the subscription." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the subscription." + } + }, + "description": "Subscription information." + }, + "SubscriptionPolicies": { + "properties": { + "locationPlacementId": { + "readOnly": true, + "type": "string", + "description": "The subscription location placement ID. The ID indicates which regions are visible for a subscription. For example, a subscription with a location placement Id of Public_2014-09-01 has access to Azure public regions." + }, + "quotaId": { + "readOnly": true, + "type": "string", + "description": "The subscription quota ID." + }, + "spendingLimit": { + "readOnly": true, + "type": "string", + "description": "The subscription spending limit.", + "enum": [ + "On", + "Off", + "CurrentPeriodOff" + ], + "x-ms-enum": { + "name": "spendingLimit", + "modelAsString": false + } + } + }, + "description": "Subscription policies." + }, + "ManagedByTenant": { + "properties": { + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the managing tenant. This is a GUID." + } + }, + "description": "Information about a tenant managing the subscription." + }, + "SubscriptionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subscription" + }, + "description": "An array of subscriptions." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Subscription list operation response." + }, + "TenantIdDescription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the tenant. For example, /tenants/00000000-0000-0000-0000-000000000000." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." + }, + "tenantCategory": { + "readOnly": true, + "type": "string", + "description": "Category of the tenant.", + "enum": [ + "Home", + "ProjectedBy", + "ManagedBy" + ], + "x-ms-enum": { + "name": "TenantCategory", + "modelAsString": false + } + }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the tenant." + }, + "domains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "The domain name for a tenant." + }, + "description": "The list of domains for the tenant." + }, + "defaultDomain": { + "readOnly": true, + "type": "string", + "description": "The default domain for the tenant." + }, + "tenantType": { + "readOnly": true, + "type": "string", + "description": "The tenant type. Only available for 'Home' tenant category." + }, + "tenantBrandingLogoUrl": { + "readOnly": true, + "type": "string", + "description": "The tenant's branding logo URL. Only available for 'Home' tenant category." + } + }, + "description": "Tenant Id information." + }, + "TenantListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TenantIdDescription" + }, + "description": "An array of tenants." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Tenant Ids information." + }, + "Operation": { + "description": "Microsoft.Resources operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources 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 Microsoft.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json index 82d30ad10387..6a3432f615ea 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json @@ -1606,16 +1606,41 @@ "type": "string", "description": "The identity type.", "enum": [ - "SystemAssigned" + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" ], "x-ms-enum": { "name": "ResourceIdentityType", "modelAsString": false } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/userAssignedResourceIdentity" + }, + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "description": "Identity for the resource." }, + "userAssignedResourceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of user assigned identity." + } + }, + "description": "Represents the user assigned identity that is contained within the UserAssignedIdentities dictionary on ResourceIdentity" + }, "Resource": { "properties": { "id": { diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index f1bbaf275a71..4a49cd9c9b42 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -43,6 +43,7 @@ batch: - tag: package-resources-2016-07 - tag: package-resources-2016-02 - tag: package-resources-2015-11 + - tag: package-subscriptions-2019-11 - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 @@ -275,6 +276,16 @@ namespace: resources output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-11-01/resources ``` +### Tag: package-subscriptions-2019-11 and go + +These settings apply only when `--tag=package-subscriptions-2019-11 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-11' && $(go) +namespace: subscriptions +output-folder: $(go-sdk-folder)/services/resources/mgmt/2019-11-01/subscriptions +``` + ### Tag: package-subscriptions-2019-06 and go These settings apply only when `--tag=package-subscriptions-2019-06 --go` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.java.md b/specification/resources/resource-manager/readme.java.md index 3f11f6b2e9f2..c8705dc8d7f5 100644 --- a/specification/resources/resource-manager/readme.java.md +++ b/specification/resources/resource-manager/readme.java.md @@ -38,7 +38,6 @@ batch: - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 ``` -``` ### Tag: package-features-2015-12 and java diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index c390c1a0b58d..32aea908a345 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -60,6 +60,15 @@ tag: package-managedapplications-2018-06 tag: package-deploymentscripts-2019-10-preview ``` +### Tag: package-subscriptions-2020-01 + +These settings apply only when `--tag=package-subscriptions-2020-01` is specified on the command line. + +```yaml $(tag) == 'package-subscriptions-2020-01' +input-file: + - Microsoft.Resources/stable/2020-01-01/subscriptions.json +``` + ### Tag: package-deploymentscripts-2019-10-preview These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. @@ -535,6 +544,13 @@ directive: suppress: OperationsAPIImplementation where: $.paths reason: OperationsAPI will come from Resources + - from: deploymentScripts.json + suppress: R3006 #BodyTopLevelProperties + where: + - $.definitions.DeploymentScript.properties + - $.definitions.AzureCliScript.properties + - $.definitions.AzurePowerShellScript.properties + reason: Currently systemData is not allowed ``` --- @@ -614,6 +630,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Resources/stable/2020-01-01/subscriptions.json - $(this-folder)/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index cd039ad6c930..e000118f5bbd 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -```yaml $(python) +```yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -14,11 +14,18 @@ python: debug: true ``` +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resource +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: - tag: package-features-2015-12 - tag: package-links-2016-09 @@ -52,12 +59,56 @@ batch: - tag: package-deploymentscripts-2019-10-preview ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-features-2015-12 + - tag: package-links-2016-09 + - tag: package-locks-2016-09 + - tag: package-locks-2015-01 + - tag: package-managedapplications-2018-06 + - tag: package-policy-2019-09 + - tag: package-policy-2019-06 + - tag: package-policy-2019-01 + - tag: package-policy-2018-05 + - tag: package-policy-2018-03 + - tag: package-policy-2017-06 + - tag: package-policy-2016-12 + - tag: package-policy-2016-04 + - tag: package-policy-2015-10 + - tag: package-resources-2019-10 + - tag: package-resources-2019-08 + - tag: package-resources-2019-07 + - tag: package-resources-2019-0510 + - tag: package-resources-2019-05 + - tag: package-resources-2019-03 + - tag: package-resources-2018-05 + - tag: package-resources-2018-02 + - tag: package-resources-2017-05 + - tag: package-resources-2016-09 + - tag: package-resources-2016-02 + - tag: package-subscriptions-2019-11 + - tag: package-subscriptions-2019-06 + - tag: package-subscriptions-2018-06 + - tag: package-subscriptions-2016-06 + - tag: package-deploymentscripts-2019-10-preview + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/ +clear-output-folder: false +perform-load: false +``` + ### Tag: package-features-2015-12 and python These settings apply only when `--tag=package-features-2015-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-features-2015-12' && $(python) +``` yaml $(tag) == 'package-features-2015-12' +namespace: azure.mgmt.resource.features.v2015_12_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/features/v2015_12_01 python: namespace: azure.mgmt.resource.features.v2015_12_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/features/v2015_12_01 @@ -68,7 +119,9 @@ python: These settings apply only when `--tag=package-links-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-links-2016-09' && $(python) +``` yaml $(tag) == 'package-links-2016-09' +namespace: azure.mgmt.resource.links.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/links/v2016_09_01 python: namespace: azure.mgmt.resource.links.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/links/v2016_09_01 @@ -79,7 +132,9 @@ python: These settings apply only when `--tag=package-locks-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-locks-2016-09' && $(python) +``` yaml $(tag) == 'package-locks-2016-09' +namespace: azure.mgmt.resource.locks.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2016_09_01 python: namespace: azure.mgmt.resource.locks.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2016_09_01 @@ -90,7 +145,9 @@ python: These settings apply only when `--tag=package-locks-2015-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-locks-2015-01' && $(python) +``` yaml $(tag) == 'package-locks-2015-01' +namespace: azure.mgmt.resource.locks.v2015_01_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2015_01_01 python: namespace: azure.mgmt.resource.locks.v2015_01_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2015_01_01 @@ -101,7 +158,9 @@ python: These settings apply only when `--tag=package-managedapplications-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-managedapplications-2018-06' && $(python) +``` yaml $(tag) == 'package-managedapplications-2018-06' +namespace: azure.mgmt.resource.managedapplications +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications python: namespace: azure.mgmt.resource.managedapplications output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications @@ -112,7 +171,9 @@ python: These settings apply only when `--tag=package-policy-2019-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-09' && $(python) +``` yaml $(tag) == 'package-policy-2019-09' +namespace: azure.mgmt.resource.policy.v2019_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_09_01 python: namespace: azure.mgmt.resource.policy.v2019_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_09_01 @@ -123,7 +184,9 @@ python: These settings apply only when `--tag=package-policy-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-06' && $(python) +``` yaml $(tag) == 'package-policy-2019-06' +namespace: azure.mgmt.resource.policy.v2019_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_06_01 python: namespace: azure.mgmt.resource.policy.v2019_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_06_01 @@ -134,7 +197,9 @@ python: These settings apply only when `--tag=package-policy-2019-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-01' && $(python) +``` yaml $(tag) == 'package-policy-2019-01' +namespace: azure.mgmt.resource.policy.v2019_01_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_01_01 python: namespace: azure.mgmt.resource.policy.v2019_01_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_01_01 @@ -145,7 +210,9 @@ python: These settings apply only when `--tag=package-policy-2018-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2018-05' && $(python) +``` yaml $(tag) == 'package-policy-2018-05' +namespace: azure.mgmt.resource.policy.v2018_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_05_01 python: namespace: azure.mgmt.resource.policy.v2018_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_05_01 @@ -156,7 +223,9 @@ python: These settings apply only when `--tag=package-policy-2018-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2018-03' && $(python) +``` yaml $(tag) == 'package-policy-2018-03' +namespace: azure.mgmt.resource.policy.v2018_03_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_03_01 python: namespace: azure.mgmt.resource.policy.v2018_03_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_03_01 @@ -167,7 +236,9 @@ python: These settings apply only when `--tag=package-policy-2017-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2017-06' && $(python) +``` yaml $(tag) == 'package-policy-2017-06' +namespace: azure.mgmt.resource.policy.v2017_06_01_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2017_06_01_preview python: namespace: azure.mgmt.resource.policy.v2017_06_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2017_06_01_preview @@ -178,7 +249,9 @@ python: These settings apply only when `--tag=package-policy-2016-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2016-12' && $(python) +``` yaml $(tag) == 'package-policy-2016-12' +namespace: azure.mgmt.resource.policy.v2016_12_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_12_01 python: namespace: azure.mgmt.resource.policy.v2016_12_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_12_01 @@ -189,7 +262,9 @@ python: These settings apply only when `--tag=package-policy-2016-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2016-04' && $(python) +``` yaml $(tag) == 'package-policy-2016-04' +namespace: azure.mgmt.resource.policy.v2016_04_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_04_01 python: namespace: azure.mgmt.resource.policy.v2016_04_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_04_01 @@ -200,7 +275,9 @@ python: These settings apply only when `--tag=package-policy-2015-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2015-10' && $(python) +``` yaml $(tag) == 'package-policy-2015-10' +namespace: azure.mgmt.resource.policy.v2015_10_01_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview python: namespace: azure.mgmt.resource.policy.v2015_10_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview @@ -211,7 +288,9 @@ python: These settings apply only when `--tag=package-resources-2019-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-10' && $(python) +``` yaml $(tag) == 'package-resources-2019-10' +namespace: azure.mgmt.resource.resources.v2019_10_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_10_01 python: namespace: azure.mgmt.resource.resources.v2019_10_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_10_01 @@ -222,7 +301,9 @@ python: These settings apply only when `--tag=package-resources-2019-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-08' && $(python) +``` yaml $(tag) == 'package-resources-2019-08' +namespace: azure.mgmt.resource.resources.v2019_08_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_08_01 python: namespace: azure.mgmt.resource.resources.v2019_08_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_08_01 @@ -233,7 +314,9 @@ python: These settings apply only when `--tag=package-resources-2019-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-07' && $(python) +``` yaml $(tag) == 'package-resources-2019-07' +namespace: azure.mgmt.resource.resources.v2019_07_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_07_01 python: namespace: azure.mgmt.resource.resources.v2019_07_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_07_01 @@ -244,7 +327,9 @@ python: These settings apply only when `--tag=package-resources-2019-0510 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-0510' && $(python) +``` yaml $(tag) == 'package-resources-2019-0510' +namespace: azure.mgmt.resource.resources.v2019_05_10 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_10 python: namespace: azure.mgmt.resource.resources.v2019_05_10 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_10 @@ -255,7 +340,9 @@ python: These settings apply only when `--tag=package-resources-2019-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-05' && $(python) +``` yaml $(tag) == 'package-resources-2019-05' +namespace: azure.mgmt.resource.resources.v2019_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_01 python: namespace: azure.mgmt.resource.resources.v2019_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_01 @@ -266,7 +353,9 @@ python: These settings apply only when `--tag=package-resources-2018-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2018-05' && $(python) +``` yaml $(tag) == 'package-resources-2018-05' +namespace: azure.mgmt.resource.resources.v2018_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_05_01 python: namespace: azure.mgmt.resource.resources.v2018_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_05_01 @@ -277,7 +366,9 @@ python: These settings apply only when `--tag=package-resources-2018-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2018-02' && $(python) +``` yaml $(tag) == 'package-resources-2018-02' +namespace: azure.mgmt.resource.resources.v2018_02_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_02_01 python: namespace: azure.mgmt.resource.resources.v2018_02_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_02_01 @@ -288,7 +379,9 @@ python: These settings apply only when `--tag=package-resources-2017-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2017-05' && $(python) +``` yaml $(tag) == 'package-resources-2017-05' +namespace: azure.mgmt.resource.resources.v2017_05_10 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2017_05_10 python: namespace: azure.mgmt.resource.resources.v2017_05_10 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2017_05_10 @@ -299,7 +392,9 @@ python: These settings apply only when `--tag=package-resources-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2016-09' && $(python) +``` yaml $(tag) == 'package-resources-2016-09' +namespace: azure.mgmt.resource.resources.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_09_01 python: namespace: azure.mgmt.resource.resources.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_09_01 @@ -310,7 +405,9 @@ python: These settings apply only when `--tag=package-resources-2016-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2016-02' && $(python) +``` yaml $(tag) == 'package-resources-2016-02' +namespace: azure.mgmt.resource.resources.v2016_02_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_02_01 python: namespace: azure.mgmt.resource.resources.v2016_02_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_02_01 @@ -321,7 +418,9 @@ python: These settings apply only when `--tag=package-subscriptions-2019-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2019-11' && $(python) +``` yaml $(tag) == 'package-subscriptions-2019-11' +namespace: azure.mgmt.resource.subscriptions.v2019_11_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_11_01 python: namespace: azure.mgmt.resource.subscriptions.v2019_11_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_11_01 @@ -332,7 +431,9 @@ python: These settings apply only when `--tag=package-subscriptions-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2019-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2019-06' +namespace: azure.mgmt.resource.subscriptions.v2019_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2019_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_06_01 @@ -343,7 +444,9 @@ python: These settings apply only when `--tag=package-subscriptions-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2018-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2018-06' +namespace: azure.mgmt.resource.subscriptions.v2018_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2018_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2018_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2018_06_01 @@ -354,7 +457,9 @@ python: These settings apply only when `--tag=package-subscriptions-2016-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2016-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2016-06' +namespace: azure.mgmt.resource.subscriptions.v2016_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2016_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2016_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2016_06_01 @@ -365,7 +470,9 @@ python: These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' && $(python) +``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' +namespace: azure.mgmt.resource.deploymentscripts.v2019_10_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2019_10_preview python: namespace: azure.mgmt.resource.deploymentscripts.v2019_10_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2019_10_preview diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json index c00ad863e1eb..e469954065d6 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json @@ -120,6 +120,11 @@ "applicationId": "00000000-0000-0000-0000-000000000000", "applicationSecret": "myapplicationsecret" } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 } } }, @@ -356,6 +361,11 @@ "applicationId": "00000000-0000-0000-0000-000000000000", "applicationSecret": null } + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.BM25Similarity", + "b": 0.5, + "k1": 1.3 } } } diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json index e60268c5c8cd..8d73eb29c474 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json @@ -120,6 +120,9 @@ "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", "keyVaultUri": "https://myKeyVault.vault.azure.net", "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" } } }, @@ -353,6 +356,9 @@ "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", "keyVaultUri": "https://myKeyVault.vault.azure.net", "accessCredentials": null + }, + "similarity": { + "@odata.type": "#Microsoft.Azure.Search.ClassicSimilarity" } } }, diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json index b813d6d1346a..8f751cb3e6c4 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json @@ -190,7 +190,19 @@ ], "x-ms-enum": { "name": "QueryType", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "simple", + "name": "Simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a simple query language that allows for symbols such as +, * and \"\". Queries are evaluated across all searchable fields by default, unless the searchFields parameter is specified." + }, + { + "value": "full", + "name": "Full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted using the Lucene query language which allows field-specific and weighted searches, as well as other advanced features." + } + ] }, "x-nullable": false, "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", @@ -243,7 +255,19 @@ ], "x-ms-enum": { "name": "SearchMode", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "any", + "name": "Any", + "description": "Any of the search terms must be matched in order to count the document as a match." + }, + { + "value": "all", + "name": "All", + "description": "All of the search terms must be matched in order to count the document as a match." + } + ] }, "x-nullable": false, "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", @@ -716,7 +740,24 @@ ], "x-ms-enum": { "name": "AutocompleteMode", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "oneTerm", + "name": "OneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is completed. For example, if the input is 'washington medic', the suggested terms could include 'medicaid', 'medicare', and 'medicine'." + }, + { + "value": "twoTerms", + "name": "TwoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the input is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "value": "oneTermWithContext", + "name": "OneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two terms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] }, "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", "x-ms-parameter-grouping": { @@ -1024,7 +1065,29 @@ ], "x-ms-enum": { "name": "IndexActionType", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "upload", + "name": "Upload", + "description": "Inserts the document into the index if it is new and updates it if it exists. All fields are replaced in the update case." + }, + { + "value": "merge", + "name": "Merge", + "description": "Merges the specified field values with an existing document. If the document does not exist, the merge will fail. Any field you specify in a merge will replace the existing field in the document. This also applies to collections of primitive and complex types." + }, + { + "value": "mergeOrUpload", + "name": "MergeOrUpload", + "description": "Behaves like merge if a document with the given key already exists in the index. If the document does not exist, it behaves like upload with a new document." + }, + { + "value": "delete", + "name": "Delete", + "description": "Removes the specified document from the index. Any field you specify in a delete operation other than the key field will be ignored. If you want to remove an individual field from a document, use merge instead and set the field explicitly to null." + } + ] }, "x-ms-client-name": "ActionType", "x-nullable": false, @@ -1093,7 +1156,19 @@ ], "x-ms-enum": { "name": "SearchMode", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "any", + "name": "Any", + "description": "Any of the search terms must be matched in order to count the document as a match." + }, + { + "value": "all", + "name": "All", + "description": "All of the search terms must be matched in order to count the document as a match." + } + ] }, "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." }, @@ -1105,7 +1180,19 @@ ], "x-ms-enum": { "name": "QueryType", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "simple", + "name": "Simple", + "description": "Uses the simple query syntax for searches. Search text is interpreted using a simple query language that allows for symbols such as +, * and \"\". Queries are evaluated across all searchable fields by default, unless the searchFields parameter is specified." + }, + { + "value": "full", + "name": "Full", + "description": "Uses the full Lucene query syntax for searches. Search text is interpreted using the Lucene query language which allows field-specific and weighted searches, as well as other advanced features." + } + ] }, "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." }, @@ -1118,7 +1205,24 @@ ], "x-ms-enum": { "name": "AutocompleteMode", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "oneTerm", + "name": "OneTerm", + "description": "Only one term is suggested. If the query has two terms, only the last term is completed. For example, if the input is 'washington medic', the suggested terms could include 'medicaid', 'medicare', and 'medicine'." + }, + { + "value": "twoTerms", + "name": "TwoTerms", + "description": "Matching two-term phrases in the index will be suggested. For example, if the input is 'medic', the suggested terms could include 'medicare coverage' and 'medical assistant'." + }, + { + "value": "oneTermWithContext", + "name": "OneTermWithContext", + "description": "Completes the last term in a query with two or more terms, where the last two terms are a phrase that exists in the index. For example, if the input is 'washington medic', the suggested terms could include 'washington medicaid' and 'washington medical'." + } + ] }, "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." }, diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json index 74a006942dc2..d41c4f4d31dc 100644 --- a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json @@ -52,7 +52,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" }, "description": "The definition of the datasource to create or update." }, @@ -77,13 +77,13 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" } }, "201": { "description": "", "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" } }, "default": { @@ -179,7 +179,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" } }, "default": { @@ -257,7 +257,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" }, "description": "The definition of the datasource to create." }, @@ -273,7 +273,7 @@ "201": { "description": "", "schema": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" } }, "default": { @@ -401,7 +401,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" }, "description": "The definition of the indexer to create or update." }, @@ -426,13 +426,13 @@ "201": { "description": "", "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" } }, "200": { "description": "", "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" } }, "default": { @@ -528,7 +528,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" } }, "default": { @@ -606,7 +606,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" }, "description": "The definition of the indexer to create." }, @@ -622,7 +622,7 @@ "201": { "description": "", "schema": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" } }, "default": { @@ -669,7 +669,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/IndexerExecutionInfo" + "$ref": "#/definitions/SearchIndexerStatus" } }, "default": { @@ -709,7 +709,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" }, "description": "The skillset containing one or more skills to create or update in a search service." }, @@ -734,13 +734,13 @@ "200": { "description": "The skillset is successfully updated.", "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" } }, "201": { "description": "The skillset is successfully created.", "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" } }, "default": { @@ -836,7 +836,7 @@ "200": { "description": "The skillset is successfully returned.", "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" } }, "default": { @@ -914,7 +914,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" }, "description": "The skillset containing one or more skills to create in a search service." }, @@ -930,7 +930,7 @@ "201": { "description": "The skillset is successfully created.", "schema": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" } }, "default": { @@ -1224,7 +1224,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" }, "description": "The definition of the index to create." }, @@ -1240,7 +1240,7 @@ "201": { "description": "", "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" } }, "default": { @@ -1294,6 +1294,9 @@ "$ref": "#/definitions/SearchError" } } + }, + "x-ms-pageable": { + "nextLinkName": null } } }, @@ -1325,7 +1328,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" }, "description": "The definition of the index to create or update." }, @@ -1357,13 +1360,13 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" } }, "201": { "description": "", "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" } }, "default": { @@ -1384,7 +1387,7 @@ "$ref": "./examples/SearchServiceDeleteIndex.json" } }, - "description": "Deletes a search index and all the documents it contains.", + "description": "Deletes a search index and all the documents it contains. This operation is permanent, with no recovery option. Make sure you have a master copy of your index definition, data ingestion code, and a backup of the primary data source in case you need to re-build the index.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" }, @@ -1459,7 +1462,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" } }, "default": { @@ -1620,11 +1623,11 @@ "description": "The text to break into tokens." }, "analyzer": { - "$ref": "#/definitions/AnalyzerName", + "$ref": "#/definitions/LexicalAnalyzerName", "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." }, "tokenizer": { - "$ref": "#/definitions/TokenizerName", + "$ref": "#/definitions/LexicalTokenizerName", "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." }, "tokenFilters": { @@ -1654,7 +1657,7 @@ "tokens": { "type": "array", "items": { - "$ref": "#/definitions/TokenInfo" + "$ref": "#/definitions/AnalyzedTokenInfo" }, "description": "The list of tokens returned by the analyzer specified in the request." } @@ -1664,7 +1667,7 @@ ], "description": "The result of testing an analyzer on text." }, - "TokenInfo": { + "AnalyzedTokenInfo": { "properties": { "token": { "type": "string", @@ -1701,7 +1704,7 @@ ], "description": "Information about a token returned by an analyzer." }, - "AnalyzerName": { + "LexicalAnalyzerName": { "type": "string", "enum": [ "ar.microsoft", @@ -1799,15 +1802,482 @@ "whitespace" ], "x-ms-enum": { - "name": "AnalyzerName", - "modelAsString": true + "name": "LexicalAnalyzerName", + "modelAsString": true, + "values": [ + { + "value": "ar.microsoft", + "name": "ArMicrosoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "value": "ar.lucene", + "name": "ArLucene", + "description": "Lucene analyzer for Arabic." + }, + { + "value": "hy.lucene", + "name": "HyLucene", + "description": "Lucene analyzer for Armenian." + }, + { + "value": "bn.microsoft", + "name": "BnMicrosoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "value": "eu.lucene", + "name": "EuLucene", + "description": "Lucene analyzer for Basque." + }, + { + "value": "bg.microsoft", + "name": "BgMicrosoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "value": "bg.lucene", + "name": "BgLucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "value": "ca.microsoft", + "name": "CaMicrosoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "value": "ca.lucene", + "name": "CaLucene", + "description": "Lucene analyzer for Catalan." + }, + { + "value": "zh-Hans.microsoft", + "name": "ZhHansMicrosoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "value": "zh-Hans.lucene", + "name": "ZhHansLucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "value": "zh-Hant.microsoft", + "name": "ZhHantMicrosoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "value": "zh-Hant.lucene", + "name": "ZhHantLucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "value": "hr.microsoft", + "name": "HrMicrosoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "value": "cs.microsoft", + "name": "CsMicrosoft", + "description": "Microsoft analyzer for Czech." + }, + { + "value": "cs.lucene", + "name": "CsLucene", + "description": "Lucene analyzer for Czech." + }, + { + "value": "da.microsoft", + "name": "DaMicrosoft", + "description": "Microsoft analyzer for Danish." + }, + { + "value": "da.lucene", + "name": "DaLucene", + "description": "Lucene analyzer for Danish." + }, + { + "value": "nl.microsoft", + "name": "NlMicrosoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "value": "nl.lucene", + "name": "NlLucene", + "description": "Lucene analyzer for Dutch." + }, + { + "value": "en.microsoft", + "name": "EnMicrosoft", + "description": "Microsoft analyzer for English." + }, + { + "value": "en.lucene", + "name": "EnLucene", + "description": "Lucene analyzer for English." + }, + { + "value": "et.microsoft", + "name": "EtMicrosoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "value": "fi.microsoft", + "name": "FiMicrosoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "value": "fi.lucene", + "name": "FiLucene", + "description": "Lucene analyzer for Finnish." + }, + { + "value": "fr.microsoft", + "name": "FrMicrosoft", + "description": "Microsoft analyzer for French." + }, + { + "value": "fr.lucene", + "name": "FrLucene", + "description": "Lucene analyzer for French." + }, + { + "value": "gl.lucene", + "name": "GlLucene", + "description": "Lucene analyzer for Galician." + }, + { + "value": "de.microsoft", + "name": "DeMicrosoft", + "description": "Microsoft analyzer for German." + }, + { + "value": "de.lucene", + "name": "DeLucene", + "description": "Lucene analyzer for German." + }, + { + "value": "el.microsoft", + "name": "ElMicrosoft", + "description": "Microsoft analyzer for Greek." + }, + { + "value": "el.lucene", + "name": "ElLucene", + "description": "Lucene analyzer for Greek." + }, + { + "value": "gu.microsoft", + "name": "GuMicrosoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "value": "he.microsoft", + "name": "HeMicrosoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "value": "hi.microsoft", + "name": "HiMicrosoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "value": "hi.lucene", + "name": "HiLucene", + "description": "Lucene analyzer for Hindi." + }, + { + "value": "hu.microsoft", + "name": "HuMicrosoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "value": "hu.lucene", + "name": "HuLucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "value": "is.microsoft", + "name": "IsMicrosoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "value": "id.microsoft", + "name": "IdMicrosoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "value": "id.lucene", + "name": "IdLucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "value": "ga.lucene", + "name": "GaLucene", + "description": "Lucene analyzer for Irish." + }, + { + "value": "it.microsoft", + "name": "ItMicrosoft", + "description": "Microsoft analyzer for Italian." + }, + { + "value": "it.lucene", + "name": "ItLucene", + "description": "Lucene analyzer for Italian." + }, + { + "value": "ja.microsoft", + "name": "JaMicrosoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "value": "ja.lucene", + "name": "JaLucene", + "description": "Lucene analyzer for Japanese." + }, + { + "value": "kn.microsoft", + "name": "KnMicrosoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "value": "ko.microsoft", + "name": "KoMicrosoft", + "description": "Microsoft analyzer for Korean." + }, + { + "value": "ko.lucene", + "name": "KoLucene", + "description": "Lucene analyzer for Korean." + }, + { + "value": "lv.microsoft", + "name": "LvMicrosoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "value": "lv.lucene", + "name": "LvLucene", + "description": "Lucene analyzer for Latvian." + }, + { + "value": "lt.microsoft", + "name": "LtMicrosoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "value": "ml.microsoft", + "name": "MlMicrosoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "value": "ms.microsoft", + "name": "MsMicrosoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "value": "mr.microsoft", + "name": "MrMicrosoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "value": "nb.microsoft", + "name": "NbMicrosoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "value": "no.lucene", + "name": "NoLucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "value": "fa.lucene", + "name": "FaLucene", + "description": "Lucene analyzer for Persian." + }, + { + "value": "pl.microsoft", + "name": "PlMicrosoft", + "description": "Microsoft analyzer for Polish." + }, + { + "value": "pl.lucene", + "name": "PlLucene", + "description": "Lucene analyzer for Polish." + }, + { + "value": "pt-BR.microsoft", + "name": "PtBrMicrosoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "value": "pt-BR.lucene", + "name": "PtBrLucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "value": "pt-PT.microsoft", + "name": "PtPtMicrosoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "value": "pt-PT.lucene", + "name": "PtPtLucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "value": "pa.microsoft", + "name": "PaMicrosoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "value": "ro.microsoft", + "name": "RoMicrosoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "value": "ro.lucene", + "name": "RoLucene", + "description": "Lucene analyzer for Romanian." + }, + { + "value": "ru.microsoft", + "name": "RuMicrosoft", + "description": "Microsoft analyzer for Russian." + }, + { + "value": "ru.lucene", + "name": "RuLucene", + "description": "Lucene analyzer for Russian." + }, + { + "value": "sr-cyrillic.microsoft", + "name": "SrCyrillicMicrosoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "value": "sr-latin.microsoft", + "name": "SrLatinMicrosoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "value": "sk.microsoft", + "name": "SkMicrosoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "value": "sl.microsoft", + "name": "SlMicrosoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "value": "es.microsoft", + "name": "EsMicrosoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "value": "es.lucene", + "name": "EsLucene", + "description": "Lucene analyzer for Spanish." + }, + { + "value": "sv.microsoft", + "name": "SvMicrosoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "value": "sv.lucene", + "name": "SvLucene", + "description": "Lucene analyzer for Swedish." + }, + { + "value": "ta.microsoft", + "name": "TaMicrosoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "value": "te.microsoft", + "name": "TeMicrosoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "value": "th.microsoft", + "name": "ThMicrosoft", + "description": "Microsoft analyzer for Thai." + }, + { + "value": "th.lucene", + "name": "ThLucene", + "description": "Lucene analyzer for Thai." + }, + { + "value": "tr.microsoft", + "name": "TrMicrosoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "value": "tr.lucene", + "name": "TrLucene", + "description": "Lucene analyzer for Turkish." + }, + { + "value": "uk.microsoft", + "name": "UkMicrosoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "value": "ur.microsoft", + "name": "UrMicrosoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "value": "vi.microsoft", + "name": "ViMicrosoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "value": "standard.lucene", + "name": "StandardLucene", + "description": "Standard Lucene analyzer." + }, + { + "value": "standardasciifolding.lucene", + "name": "StandardAsciiFoldingLucene", + "description": "Standard ASCII Folding Lucene analyzer. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "value": "keyword", + "name": "Keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "value": "pattern", + "name": "Pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "value": "simple", + "name": "Simple", + "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "value": "stop", + "name": "Stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] }, "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" } }, - "TokenizerName": { + "LexicalTokenizerName": { "type": "string", "enum": [ "classic", @@ -1825,7 +2295,7 @@ "whitespace" ], "x-ms-enum": { - "name": "TokenizerName", + "name": "LexicalTokenizerName", "modelAsString": true, "values": [ { @@ -1960,7 +2430,7 @@ { "value": "cjk_bigram", "name": "CjkBigram", - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" }, { "value": "cjk_width", @@ -2154,14 +2624,56 @@ ], "x-ms-enum": { "name": "RegexFlags", - "modelAsString": true + "modelAsString": true, + "values": [ + { + "value": "CANON_EQ", + "name": "CanonEq", + "description": "Enables canonical equivalence." + }, + { + "value": "CASE_INSENSITIVE", + "name": "CaseInsensitive", + "description": "Enables case-insensitive matching." + }, + { + "value": "COMMENTS", + "name": "Comments", + "description": "Permits whitespace and comments in the pattern." + }, + { + "value": "DOTALL", + "name": "DotAll", + "description": "Enables dotall mode." + }, + { + "value": "LITERAL", + "name": "Literal", + "description": "Enables literal parsing of the pattern." + }, + { + "value": "MULTILINE", + "name": "Multiline", + "description": "Enables multiline mode." + }, + { + "value": "UNICODE_CASE", + "name": "UnicodeCase", + "description": "Enables Unicode-aware case folding." + }, + { + "value": "UNIX_LINES", + "name": "UnixLines", + "description": "Enables Unix lines mode." + } + ] }, "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", "externalDocs": { "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" } }, - "DataType": { + "SearchFieldDataType": { "type": "string", "enum": [ "Edm.String", @@ -2174,16 +2686,59 @@ "Edm.ComplexType" ], "x-ms-enum": { - "name": "DataType", - "modelAsString": true + "name": "SearchFieldDataType", + "modelAsString": true, + "values": [ + { + "value": "Edm.String", + "name": "String", + "description": "Indicates that a field contains a string." + }, + { + "value": "Edm.Int32", + "name": "Int32", + "description": "Indicates that a field contains a 32-bit signed integer." + }, + { + "value": "Edm.Int64", + "name": "Int64", + "description": "Indicates that a field contains a 64-bit signed integer." + }, + { + "value": "Edm.Double", + "name": "Double", + "description": "Indicates that a field contains an IEEE double-precision floating point number." + }, + { + "value": "Edm.Boolean", + "name": "Boolean", + "description": "Indicates that a field contains a Boolean value (true or false)." + }, + { + "value": "Edm.DateTimeOffset", + "name": "DateTimeOffset", + "description": "Indicates that a field contains a date/time value, including timezone information." + }, + { + "value": "Edm.GeographyPoint", + "name": "GeographyPoint", + "description": "Indicates that a field contains a geo-location in terms of longitude and latitude." + }, + { + "value": "Edm.ComplexType", + "name": "Complex", + "description": "Indicates that a field contains one or more complex objects that in turn have sub-fields of other types." + } + ] }, "description": "Defines the data type of a field in a search index." }, - "Analyzer": { + "LexicalAnalyzer": { "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the analyzer." }, "name": { "type": "string", @@ -2197,18 +2752,18 @@ "@odata.type", "name" ], - "description": "Abstract base class for analyzers." + "description": "Base type for analyzers." }, "CustomAnalyzer": { "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", "allOf": [ { - "$ref": "#/definitions/Analyzer" + "$ref": "#/definitions/LexicalAnalyzer" } ], "properties": { "tokenizer": { - "$ref": "#/definitions/TokenizerName", + "$ref": "#/definitions/LexicalTokenizerName", "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." }, "tokenFilters": { @@ -2237,7 +2792,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", "allOf": [ { - "$ref": "#/definitions/Analyzer" + "$ref": "#/definitions/LexicalAnalyzer" } ], "properties": { @@ -2250,7 +2805,7 @@ "pattern": { "type": "string", "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more non-word characters." }, "flags": { "$ref": "#/definitions/RegexFlags", @@ -2269,11 +2824,11 @@ "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" } }, - "StandardAnalyzer": { + "LuceneStandardAnalyzer": { "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", "allOf": [ { - "$ref": "#/definitions/Analyzer" + "$ref": "#/definitions/LexicalAnalyzer" } ], "properties": { @@ -2301,7 +2856,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", "allOf": [ { - "$ref": "#/definitions/Analyzer" + "$ref": "#/definitions/LexicalAnalyzer" } ], "properties": { @@ -2318,11 +2873,12 @@ "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" } }, - "Tokenizer": { + "LexicalTokenizer": { "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the tokenizer." }, "name": { "type": "string", @@ -2336,7 +2892,7 @@ "@odata.type", "name" ], - "description": "Abstract base class for tokenizers.", + "description": "Base type for tokenizers.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -2345,7 +2901,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2373,7 +2929,34 @@ ], "x-ms-enum": { "name": "TokenCharacterKind", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "letter", + "name": "Letter", + "description": "Keeps letters in tokens." + }, + { + "value": "digit", + "name": "Digit", + "description": "Keeps digits in tokens." + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "Keeps whitespace in tokens." + }, + { + "value": "punctuation", + "name": "Punctuation", + "description": "Keeps punctuation in tokens." + }, + { + "value": "symbol", + "name": "Symbol", + "description": "Keeps symbols in tokens." + } + ] }, "description": "Represents classes of characters on which a token filter can operate." }, @@ -2381,7 +2964,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2417,7 +3000,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2438,7 +3021,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2503,15 +3086,227 @@ ], "x-ms-enum": { "name": "MicrosoftTokenizerLanguage", - "modelAsString": false - }, - "description": "Lists the languages supported by the Microsoft language tokenizer." - }, + "modelAsString": false, + "values": [ + { + "value": "bangla", + "name": "Bangla", + "description": "Selects the Microsoft tokenizer for Bangla." + }, + { + "value": "bulgarian", + "name": "Bulgarian", + "description": "Selects the Microsoft tokenizer for Bulgarian." + }, + { + "value": "catalan", + "name": "Catalan", + "description": "Selects the Microsoft tokenizer for Catalan." + }, + { + "value": "chineseSimplified", + "name": "ChineseSimplified", + "description": "Selects the Microsoft tokenizer for Chinese (Simplified)." + }, + { + "value": "chineseTraditional", + "name": "ChineseTraditional", + "description": "Selects the Microsoft tokenizer for Chinese (Traditional)." + }, + { + "value": "croatian", + "name": "Croatian", + "description": "Selects the Microsoft tokenizer for Croatian." + }, + { + "value": "czech", + "name": "Czech", + "description": "Selects the Microsoft tokenizer for Czech." + }, + { + "value": "danish", + "name": "Danish", + "description": "Selects the Microsoft tokenizer for Danish." + }, + { + "value": "dutch", + "name": "Dutch", + "description": "Selects the Microsoft tokenizer for Dutch." + }, + { + "value": "english", + "name": "English", + "description": "Selects the Microsoft tokenizer for English." + }, + { + "value": "french", + "name": "French", + "description": "Selects the Microsoft tokenizer for French." + }, + { + "value": "german", + "name": "German", + "description": "Selects the Microsoft tokenizer for German." + }, + { + "value": "greek", + "name": "Greek", + "description": "Selects the Microsoft tokenizer for Greek." + }, + { + "value": "gujarati", + "name": "Gujarati", + "description": "Selects the Microsoft tokenizer for Gujarati." + }, + { + "value": "hindi", + "name": "Hindi", + "description": "Selects the Microsoft tokenizer for Hindi." + }, + { + "value": "icelandic", + "name": "Icelandic", + "description": "Selects the Microsoft tokenizer for Icelandic." + }, + { + "value": "indonesian", + "name": "Indonesian", + "description": "Selects the Microsoft tokenizer for Indonesian." + }, + { + "value": "italian", + "name": "Italian", + "description": "Selects the Microsoft tokenizer for Italian." + }, + { + "value": "japanese", + "name": "Japanese", + "description": "Selects the Microsoft tokenizer for Japanese." + }, + { + "value": "kannada", + "name": "Kannada", + "description": "Selects the Microsoft tokenizer for Kannada." + }, + { + "value": "korean", + "name": "Korean", + "description": "Selects the Microsoft tokenizer for Korean." + }, + { + "value": "malay", + "name": "Malay", + "description": "Selects the Microsoft tokenizer for Malay." + }, + { + "value": "malayalam", + "name": "Malayalam", + "description": "Selects the Microsoft tokenizer for Malayalam." + }, + { + "value": "marathi", + "name": "Marathi", + "description": "Selects the Microsoft tokenizer for Marathi." + }, + { + "value": "norwegianBokmaal", + "name": "NorwegianBokmaal", + "description": "Selects the Microsoft tokenizer for Norwegian (Bokmål)." + }, + { + "value": "polish", + "name": "Polish", + "description": "Selects the Microsoft tokenizer for Polish." + }, + { + "value": "portuguese", + "name": "Portuguese", + "description": "Selects the Microsoft tokenizer for Portuguese." + }, + { + "value": "portugueseBrazilian", + "name": "PortugueseBrazilian", + "description": "Selects the Microsoft tokenizer for Portuguese (Brazil)." + }, + { + "value": "punjabi", + "name": "Punjabi", + "description": "Selects the Microsoft tokenizer for Punjabi." + }, + { + "value": "romanian", + "name": "Romanian", + "description": "Selects the Microsoft tokenizer for Romanian." + }, + { + "value": "russian", + "name": "Russian", + "description": "Selects the Microsoft tokenizer for Russian." + }, + { + "value": "serbianCyrillic", + "name": "SerbianCyrillic", + "description": "Selects the Microsoft tokenizer for Serbian (Cyrillic)." + }, + { + "value": "serbianLatin", + "name": "SerbianLatin", + "description": "Selects the Microsoft tokenizer for Serbian (Latin)." + }, + { + "value": "slovenian", + "name": "Slovenian", + "description": "Selects the Microsoft tokenizer for Slovenian." + }, + { + "value": "spanish", + "name": "Spanish", + "description": "Selects the Microsoft tokenizer for Spanish." + }, + { + "value": "swedish", + "name": "Swedish", + "description": "Selects the Microsoft tokenizer for Swedish." + }, + { + "value": "tamil", + "name": "Tamil", + "description": "Selects the Microsoft tokenizer for Tamil." + }, + { + "value": "telugu", + "name": "Telugu", + "description": "Selects the Microsoft tokenizer for Telugu." + }, + { + "value": "thai", + "name": "Thai", + "description": "Selects the Microsoft tokenizer for Thai." + }, + { + "value": "ukrainian", + "name": "Ukrainian", + "description": "Selects the Microsoft tokenizer for Ukrainian." + }, + { + "value": "urdu", + "name": "Urdu", + "description": "Selects the Microsoft tokenizer for Urdu." + }, + { + "value": "vietnamese", + "name": "Vietnamese", + "description": "Selects the Microsoft tokenizer for Vietnamese." + } + ] + }, + "description": "Lists the languages supported by the Microsoft language tokenizer." + }, "MicrosoftLanguageTokenizer": { "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2585,7 +3380,234 @@ ], "x-ms-enum": { "name": "MicrosoftStemmingTokenizerLanguage", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "arabic", + "name": "Arabic", + "description": "Selects the Microsoft stemming tokenizer for Arabic." + }, + { + "value": "bangla", + "name": "Bangla", + "description": "Selects the Microsoft stemming tokenizer for Bangla." + }, + { + "value": "bulgarian", + "name": "Bulgarian", + "description": "Selects the Microsoft stemming tokenizer for Bulgarian." + }, + { + "value": "catalan", + "name": "Catalan", + "description": "Selects the Microsoft stemming tokenizer for Catalan." + }, + { + "value": "croatian", + "name": "Croatian", + "description": "Selects the Microsoft stemming tokenizer for Croatian." + }, + { + "value": "czech", + "name": "Czech", + "description": "Selects the Microsoft stemming tokenizer for Czech." + }, + { + "value": "danish", + "name": "Danish", + "description": "Selects the Microsoft stemming tokenizer for Danish." + }, + { + "value": "dutch", + "name": "Dutch", + "description": "Selects the Microsoft stemming tokenizer for Dutch." + }, + { + "value": "english", + "name": "English", + "description": "Selects the Microsoft stemming tokenizer for English." + }, + { + "value": "estonian", + "name": "Estonian", + "description": "Selects the Microsoft stemming tokenizer for Estonian." + }, + { + "value": "finnish", + "name": "Finnish", + "description": "Selects the Microsoft stemming tokenizer for Finnish." + }, + { + "value": "french", + "name": "French", + "description": "Selects the Microsoft stemming tokenizer for French." + }, + { + "value": "german", + "name": "German", + "description": "Selects the Microsoft stemming tokenizer for German." + }, + { + "value": "greek", + "name": "Greek", + "description": "Selects the Microsoft stemming tokenizer for Greek." + }, + { + "value": "gujarati", + "name": "Gujarati", + "description": "Selects the Microsoft stemming tokenizer for Gujarati." + }, + { + "value": "hebrew", + "name": "Hebrew", + "description": "Selects the Microsoft stemming tokenizer for Hebrew." + }, + { + "value": "hindi", + "name": "Hindi", + "description": "Selects the Microsoft stemming tokenizer for Hindi." + }, + { + "value": "hungarian", + "name": "Hungarian", + "description": "Selects the Microsoft stemming tokenizer for Hungarian." + }, + { + "value": "icelandic", + "name": "Icelandic", + "description": "Selects the Microsoft stemming tokenizer for Icelandic." + }, + { + "value": "indonesian", + "name": "Indonesian", + "description": "Selects the Microsoft stemming tokenizer for Indonesian." + }, + { + "value": "italian", + "name": "Italian", + "description": "Selects the Microsoft stemming tokenizer for Italian." + }, + { + "value": "kannada", + "name": "Kannada", + "description": "Selects the Microsoft stemming tokenizer for Kannada." + }, + { + "value": "latvian", + "name": "Latvian", + "description": "Selects the Microsoft stemming tokenizer for Latvian." + }, + { + "value": "lithuanian", + "name": "Lithuanian", + "description": "Selects the Microsoft stemming tokenizer for Lithuanian." + }, + { + "value": "malay", + "name": "Malay", + "description": "Selects the Microsoft stemming tokenizer for Malay." + }, + { + "value": "malayalam", + "name": "Malayalam", + "description": "Selects the Microsoft stemming tokenizer for Malayalam." + }, + { + "value": "marathi", + "name": "Marathi", + "description": "Selects the Microsoft stemming tokenizer for Marathi." + }, + { + "value": "norwegianBokmaal", + "name": "NorwegianBokmaal", + "description": "Selects the Microsoft stemming tokenizer for Norwegian (Bokmål)." + }, + { + "value": "polish", + "name": "Polish", + "description": "Selects the Microsoft stemming tokenizer for Polish." + }, + { + "value": "portuguese", + "name": "Portuguese", + "description": "Selects the Microsoft stemming tokenizer for Portuguese." + }, + { + "value": "portugueseBrazilian", + "name": "PortugueseBrazilian", + "description": "Selects the Microsoft stemming tokenizer for Portuguese (Brazil)." + }, + { + "value": "punjabi", + "name": "Punjabi", + "description": "Selects the Microsoft stemming tokenizer for Punjabi." + }, + { + "value": "romanian", + "name": "Romanian", + "description": "Selects the Microsoft stemming tokenizer for Romanian." + }, + { + "value": "russian", + "name": "Russian", + "description": "Selects the Microsoft stemming tokenizer for Russian." + }, + { + "value": "serbianCyrillic", + "name": "SerbianCyrillic", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Cyrillic)." + }, + { + "value": "serbianLatin", + "name": "SerbianLatin", + "description": "Selects the Microsoft stemming tokenizer for Serbian (Latin)." + }, + { + "value": "slovak", + "name": "Slovak", + "description": "Selects the Microsoft stemming tokenizer for Slovak." + }, + { + "value": "slovenian", + "name": "Slovenian", + "description": "Selects the Microsoft stemming tokenizer for Slovenian." + }, + { + "value": "spanish", + "name": "Spanish", + "description": "Selects the Microsoft stemming tokenizer for Spanish." + }, + { + "value": "swedish", + "name": "Swedish", + "description": "Selects the Microsoft stemming tokenizer for Swedish." + }, + { + "value": "tamil", + "name": "Tamil", + "description": "Selects the Microsoft stemming tokenizer for Tamil." + }, + { + "value": "telugu", + "name": "Telugu", + "description": "Selects the Microsoft stemming tokenizer for Telugu." + }, + { + "value": "turkish", + "name": "Turkish", + "description": "Selects the Microsoft stemming tokenizer for Turkish." + }, + { + "value": "ukrainian", + "name": "Ukrainian", + "description": "Selects the Microsoft stemming tokenizer for Ukrainian." + }, + { + "value": "urdu", + "name": "Urdu", + "description": "Selects the Microsoft stemming tokenizer for Urdu." + } + ] }, "description": "Lists the languages supported by the Microsoft language stemming tokenizer." }, @@ -2593,7 +3615,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2620,7 +3642,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2656,7 +3678,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2702,14 +3724,14 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { "pattern": { "type": "string", "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more non-word characters." }, "flags": { "$ref": "#/definitions/RegexFlags", @@ -2727,11 +3749,11 @@ "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" } }, - "StandardTokenizer": { + "LuceneStandardTokenizer": { "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2748,11 +3770,11 @@ }, "x-az-search-deprecated": true }, - "StandardTokenizerV2": { + "LuceneStandardTokenizerV2": { "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2773,7 +3795,7 @@ "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", "allOf": [ { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" } ], "properties": { @@ -2794,7 +3816,8 @@ "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the token filter." }, "name": { "type": "string", @@ -2808,7 +3831,7 @@ "@odata.type", "name" ], - "description": "Abstract base class for token filters.", + "description": "Base type for token filters.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -2842,7 +3865,29 @@ ], "x-ms-enum": { "name": "CjkBigramTokenFilterScripts", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "han", + "name": "Han", + "description": "Ignore Han script when forming bigrams of CJK terms." + }, + { + "value": "hiragana", + "name": "Hiragana", + "description": "Ignore Hiragana script when forming bigrams of CJK terms." + }, + { + "value": "katakana", + "name": "Katakana", + "description": "Ignore Katakana script when forming bigrams of CJK terms." + }, + { + "value": "hangul", + "name": "Hangul", + "description": "Ignore Hangul script when forming bigrams of CJK terms." + } + ] }, "description": "Scripts that can be ignored by CjkBigramTokenFilter." }, @@ -2868,7 +3913,7 @@ "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." } }, - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", + "description": "Forms bigrams of CJK terms that are generated from the standard tokenizer. This token filter is implemented using Apache Lucene.", "externalDocs": { "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" } @@ -2966,7 +4011,19 @@ ], "x-ms-enum": { "name": "EdgeNGramTokenFilterSide", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "front", + "name": "Front", + "description": "Specifies that the n-gram should be generated from the front of the input." + }, + { + "value": "back", + "name": "Back", + "description": "Specifies that the n-gram should be generated from the back of the input." + } + ] }, "description": "Specifies which side of the input an n-gram should be generated from." }, @@ -3124,6 +4181,7 @@ ], "properties": { "min": { + "x-ms-client-name": "minLength", "type": "integer", "format": "int32", "default": 0, @@ -3131,6 +4189,7 @@ "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." }, "max": { + "x-ms-client-name": "maxLength", "type": "integer", "format": "int32", "default": 300, @@ -3295,7 +4354,64 @@ ], "x-ms-enum": { "name": "PhoneticEncoder", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "metaphone", + "name": "Metaphone", + "description": "Encodes a token into a Metaphone value." + }, + { + "value": "doubleMetaphone", + "name": "DoubleMetaphone", + "description": "Encodes a token into a double metaphone value." + }, + { + "value": "soundex", + "name": "Soundex", + "description": "Encodes a token into a Soundex value." + }, + { + "value": "refinedSoundex", + "name": "RefinedSoundex", + "description": "Encodes a token into a Refined Soundex value." + }, + { + "value": "caverphone1", + "name": "Caverphone1", + "description": "Encodes a token into a Caverphone 1.0 value." + }, + { + "value": "caverphone2", + "name": "Caverphone2", + "description": "Encodes a token into a Caverphone 2.0 value." + }, + { + "value": "cologne", + "name": "Cologne", + "description": "Encodes a token into a Cologne Phonetic value." + }, + { + "value": "nysiis", + "name": "Nysiis", + "description": "Encodes a token into a NYSIIS value." + }, + { + "value": "koelnerPhonetik", + "name": "KoelnerPhonetik", + "description": "Encodes a token using the Kölner Phonetik algorithm." + }, + { + "value": "haasePhonetik", + "name": "HaasePhonetik", + "description": "Encodes a token using the Haase refinement of the Kölner Phonetik algorithm." + }, + { + "value": "beiderMorse", + "name": "BeiderMorse", + "description": "Encodes a token into a Beider-Morse value." + } + ] }, "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." }, @@ -3400,7 +4516,119 @@ ], "x-ms-enum": { "name": "SnowballTokenFilterLanguage", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "armenian", + "name": "Armenian", + "description": "Selects the Lucene Snowball stemming tokenizer for Armenian." + }, + { + "value": "basque", + "name": "Basque", + "description": "Selects the Lucene Snowball stemming tokenizer for Basque." + }, + { + "value": "catalan", + "name": "Catalan", + "description": "Selects the Lucene Snowball stemming tokenizer for Catalan." + }, + { + "value": "danish", + "name": "Danish", + "description": "Selects the Lucene Snowball stemming tokenizer for Danish." + }, + { + "value": "dutch", + "name": "Dutch", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch." + }, + { + "value": "english", + "name": "English", + "description": "Selects the Lucene Snowball stemming tokenizer for English." + }, + { + "value": "finnish", + "name": "Finnish", + "description": "Selects the Lucene Snowball stemming tokenizer for Finnish." + }, + { + "value": "french", + "name": "French", + "description": "Selects the Lucene Snowball stemming tokenizer for French." + }, + { + "value": "german", + "name": "German", + "description": "Selects the Lucene Snowball stemming tokenizer for German." + }, + { + "value": "german2", + "name": "German2", + "description": "Selects the Lucene Snowball stemming tokenizer that uses the German variant algorithm." + }, + { + "value": "hungarian", + "name": "Hungarian", + "description": "Selects the Lucene Snowball stemming tokenizer for Hungarian." + }, + { + "value": "italian", + "name": "Italian", + "description": "Selects the Lucene Snowball stemming tokenizer for Italian." + }, + { + "value": "kp", + "name": "Kp", + "description": "Selects the Lucene Snowball stemming tokenizer for Dutch that uses the Kraaij-Pohlmann stemming algorithm." + }, + { + "value": "lovins", + "name": "Lovins", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Lovins stemming algorithm." + }, + { + "value": "norwegian", + "name": "Norwegian", + "description": "Selects the Lucene Snowball stemming tokenizer for Norwegian." + }, + { + "value": "porter", + "name": "Porter", + "description": "Selects the Lucene Snowball stemming tokenizer for English that uses the Porter stemming algorithm." + }, + { + "value": "portuguese", + "name": "Portuguese", + "description": "Selects the Lucene Snowball stemming tokenizer for Portuguese." + }, + { + "value": "romanian", + "name": "Romanian", + "description": "Selects the Lucene Snowball stemming tokenizer for Romanian." + }, + { + "value": "russian", + "name": "Russian", + "description": "Selects the Lucene Snowball stemming tokenizer for Russian." + }, + { + "value": "spanish", + "name": "Spanish", + "description": "Selects the Lucene Snowball stemming tokenizer for Spanish." + }, + { + "value": "swedish", + "name": "Swedish", + "description": "Selects the Lucene Snowball stemming tokenizer for Swedish." + }, + { + "value": "turkish", + "name": "Turkish", + "description": "Selects the Lucene Snowball stemming tokenizer for Turkish." + } + ] }, "description": "The language to use for a Snowball token filter." }, @@ -3485,7 +4713,279 @@ ], "x-ms-enum": { "name": "StemmerTokenFilterLanguage", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "arabic", + "name": "Arabic", + "description": "Selects the Lucene stemming tokenizer for Arabic." + }, + { + "value": "armenian", + "name": "Armenian", + "description": "Selects the Lucene stemming tokenizer for Armenian." + }, + { + "value": "basque", + "name": "Basque", + "description": "Selects the Lucene stemming tokenizer for Basque." + }, + { + "value": "brazilian", + "name": "Brazilian", + "description": "Selects the Lucene stemming tokenizer for Portuguese (Brazil)." + }, + { + "value": "bulgarian", + "name": "Bulgarian", + "description": "Selects the Lucene stemming tokenizer for Bulgarian." + }, + { + "value": "catalan", + "name": "Catalan", + "description": "Selects the Lucene stemming tokenizer for Catalan." + }, + { + "value": "czech", + "name": "Czech", + "description": "Selects the Lucene stemming tokenizer for Czech." + }, + { + "value": "danish", + "name": "Danish", + "description": "Selects the Lucene stemming tokenizer for Danish." + }, + { + "value": "dutch", + "name": "Dutch", + "description": "Selects the Lucene stemming tokenizer for Dutch." + }, + { + "value": "dutchKp", + "name": "DutchKp", + "description": "Selects the Lucene stemming tokenizer for Dutch that uses the Kraaij-Pohlmann stemming algorithm." + }, + { + "value": "english", + "name": "English", + "description": "Selects the Lucene stemming tokenizer for English." + }, + { + "value": "lightEnglish", + "name": "LightEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does light stemming." + }, + { + "value": "minimalEnglish", + "name": "MinimalEnglish", + "description": "Selects the Lucene stemming tokenizer for English that does minimal stemming." + }, + { + "value": "possessiveEnglish", + "name": "PossessiveEnglish", + "description": "Selects the Lucene stemming tokenizer for English that removes trailing possessives from words." + }, + { + "value": "porter2", + "name": "Porter2", + "description": "Selects the Lucene stemming tokenizer for English that uses the Porter2 stemming algorithm." + }, + { + "value": "lovins", + "name": "Lovins", + "description": "Selects the Lucene stemming tokenizer for English that uses the Lovins stemming algorithm." + }, + { + "value": "finnish", + "name": "Finnish", + "description": "Selects the Lucene stemming tokenizer for Finnish." + }, + { + "value": "lightFinnish", + "name": "LightFinnish", + "description": "Selects the Lucene stemming tokenizer for Finnish that does light stemming." + }, + { + "value": "french", + "name": "French", + "description": "Selects the Lucene stemming tokenizer for French." + }, + { + "value": "lightFrench", + "name": "LightFrench", + "description": "Selects the Lucene stemming tokenizer for French that does light stemming." + }, + { + "value": "minimalFrench", + "name": "MinimalFrench", + "description": "Selects the Lucene stemming tokenizer for French that does minimal stemming." + }, + { + "value": "galician", + "name": "Galician", + "description": "Selects the Lucene stemming tokenizer for Galician." + }, + { + "value": "minimalGalician", + "name": "MinimalGalician", + "description": "Selects the Lucene stemming tokenizer for Galician that does minimal stemming." + }, + { + "value": "german", + "name": "German", + "description": "Selects the Lucene stemming tokenizer for German." + }, + { + "value": "german2", + "name": "German2", + "description": "Selects the Lucene stemming tokenizer that uses the German variant algorithm." + }, + { + "value": "lightGerman", + "name": "LightGerman", + "description": "Selects the Lucene stemming tokenizer for German that does light stemming." + }, + { + "value": "minimalGerman", + "name": "MinimalGerman", + "description": "Selects the Lucene stemming tokenizer for German that does minimal stemming." + }, + { + "value": "greek", + "name": "Greek", + "description": "Selects the Lucene stemming tokenizer for Greek." + }, + { + "value": "hindi", + "name": "Hindi", + "description": "Selects the Lucene stemming tokenizer for Hindi." + }, + { + "value": "hungarian", + "name": "Hungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian." + }, + { + "value": "lightHungarian", + "name": "LightHungarian", + "description": "Selects the Lucene stemming tokenizer for Hungarian that does light stemming." + }, + { + "value": "indonesian", + "name": "Indonesian", + "description": "Selects the Lucene stemming tokenizer for Indonesian." + }, + { + "value": "irish", + "name": "Irish", + "description": "Selects the Lucene stemming tokenizer for Irish." + }, + { + "value": "italian", + "name": "Italian", + "description": "Selects the Lucene stemming tokenizer for Italian." + }, + { + "value": "lightItalian", + "name": "LightItalian", + "description": "Selects the Lucene stemming tokenizer for Italian that does light stemming." + }, + { + "value": "sorani", + "name": "Sorani", + "description": "Selects the Lucene stemming tokenizer for Sorani." + }, + { + "value": "latvian", + "name": "Latvian", + "description": "Selects the Lucene stemming tokenizer for Latvian." + }, + { + "value": "norwegian", + "name": "Norwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål)." + }, + { + "value": "lightNorwegian", + "name": "LightNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does light stemming." + }, + { + "value": "minimalNorwegian", + "name": "MinimalNorwegian", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Bokmål) that does minimal stemming." + }, + { + "value": "lightNynorsk", + "name": "LightNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does light stemming." + }, + { + "value": "minimalNynorsk", + "name": "MinimalNynorsk", + "description": "Selects the Lucene stemming tokenizer for Norwegian (Nynorsk) that does minimal stemming." + }, + { + "value": "portuguese", + "name": "Portuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese." + }, + { + "value": "lightPortuguese", + "name": "LightPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does light stemming." + }, + { + "value": "minimalPortuguese", + "name": "MinimalPortuguese", + "description": "Selects the Lucene stemming tokenizer for Portuguese that does minimal stemming." + }, + { + "value": "portugueseRslp", + "name": "PortugueseRslp", + "description": "Selects the Lucene stemming tokenizer for Portuguese that uses the RSLP stemming algorithm." + }, + { + "value": "romanian", + "name": "Romanian", + "description": "Selects the Lucene stemming tokenizer for Romanian." + }, + { + "value": "russian", + "name": "Russian", + "description": "Selects the Lucene stemming tokenizer for Russian." + }, + { + "value": "lightRussian", + "name": "LightRussian", + "description": "Selects the Lucene stemming tokenizer for Russian that does light stemming." + }, + { + "value": "spanish", + "name": "Spanish", + "description": "Selects the Lucene stemming tokenizer for Spanish." + }, + { + "value": "lightSpanish", + "name": "LightSpanish", + "description": "Selects the Lucene stemming tokenizer for Spanish that does light stemming." + }, + { + "value": "swedish", + "name": "Swedish", + "description": "Selects the Lucene stemming tokenizer for Swedish." + }, + { + "value": "lightSwedish", + "name": "LightSwedish", + "description": "Selects the Lucene stemming tokenizer for Swedish that does light stemming." + }, + { + "value": "turkish", + "name": "Turkish", + "description": "Selects the Lucene stemming tokenizer for Turkish." + } + ] }, "description": "The language to use for a stemmer token filter." }, @@ -3571,7 +5071,164 @@ ], "x-ms-enum": { "name": "StopwordsList", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "arabic", + "name": "Arabic", + "description": "Selects the stopword list for Arabic." + }, + { + "value": "armenian", + "name": "Armenian", + "description": "Selects the stopword list for Armenian." + }, + { + "value": "basque", + "name": "Basque", + "description": "Selects the stopword list for Basque." + }, + { + "value": "brazilian", + "name": "Brazilian", + "description": "Selects the stopword list for Portuguese (Brazil)." + }, + { + "value": "bulgarian", + "name": "Bulgarian", + "description": "Selects the stopword list for Bulgarian." + }, + { + "value": "catalan", + "name": "Catalan", + "description": "Selects the stopword list for Catalan." + }, + { + "value": "czech", + "name": "Czech", + "description": "Selects the stopword list for Czech." + }, + { + "value": "danish", + "name": "Danish", + "description": "Selects the stopword list for Danish." + }, + { + "value": "dutch", + "name": "Dutch", + "description": "Selects the stopword list for Dutch." + }, + { + "value": "english", + "name": "English", + "description": "Selects the stopword list for English." + }, + { + "value": "finnish", + "name": "Finnish", + "description": "Selects the stopword list for Finnish." + }, + { + "value": "french", + "name": "French", + "description": "Selects the stopword list for French." + }, + { + "value": "galician", + "name": "Galician", + "description": "Selects the stopword list for Galician." + }, + { + "value": "german", + "name": "German", + "description": "Selects the stopword list for German." + }, + { + "value": "greek", + "name": "Greek", + "description": "Selects the stopword list for Greek." + }, + { + "value": "hindi", + "name": "Hindi", + "description": "Selects the stopword list for Hindi." + }, + { + "value": "hungarian", + "name": "Hungarian", + "description": "Selects the stopword list for Hungarian." + }, + { + "value": "indonesian", + "name": "Indonesian", + "description": "Selects the stopword list for Indonesian." + }, + { + "value": "irish", + "name": "Irish", + "description": "Selects the stopword list for Irish." + }, + { + "value": "italian", + "name": "Italian", + "description": "Selects the stopword list for Italian." + }, + { + "value": "latvian", + "name": "Latvian", + "description": "Selects the stopword list for Latvian." + }, + { + "value": "norwegian", + "name": "Norwegian", + "description": "Selects the stopword list for Norwegian." + }, + { + "value": "persian", + "name": "Persian", + "description": "Selects the stopword list for Persian." + }, + { + "value": "portuguese", + "name": "Portuguese", + "description": "Selects the stopword list for Portuguese." + }, + { + "value": "romanian", + "name": "Romanian", + "description": "Selects the stopword list for Romanian." + }, + { + "value": "russian", + "name": "Russian", + "description": "Selects the stopword list for Russian." + }, + { + "value": "sorani", + "name": "Sorani", + "description": "Selects the stopword list for Sorani." + }, + { + "value": "spanish", + "name": "Spanish", + "description": "Selects the stopword list for Spanish." + }, + { + "value": "swedish", + "name": "Swedish", + "description": "Selects the stopword list for Swedish." + }, + { + "value": "thai", + "name": "Thai", + "description": "Selects the stopword list for Thai." + }, + { + "value": "turkish", + "name": "Turkish", + "description": "Selects the stopword list for Turkish." + } + ] }, "description": "Identifies a predefined list of language-specific stopwords." }, @@ -3756,7 +5413,8 @@ "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the char filter." }, "name": { "type": "string", @@ -3770,7 +5428,7 @@ "@odata.type", "name" ], - "description": "Abstract base class for character filters.", + "description": "Base type for character filters.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" } @@ -3825,6 +5483,51 @@ "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" } }, + "Similarity": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Base type for similarity algorithms. Similarity algorithms are used to calculate scores that tie queries to documents. The higher the score, the more relevant the document is to that specific query. Those scores are used to rank the search results.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/index-ranking-similarity" + } + }, + "ClassicSimilarity": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicSimilarity", + "allOf": [ + { + "$ref": "#/definitions/Similarity" + } + ], + "description": "Legacy similarity algorithm which uses the Lucene TFIDFSimilarity implementation of TF-IDF. This variation of TF-IDF introduces static document length normalization as well as coordinating factors that penalize documents that only partially match the searched queries." + }, + "BM25Similarity": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.BM25Similarity", + "allOf": [ + { + "$ref": "#/definitions/Similarity" + } + ], + "properties": { + "k1": { + "type": "number", + "format": "double", + "description": "This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency." + }, + "b": { + "type": "number", + "format": "double", + "description": "This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document." + } + }, + "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a TF-IDF-like algorithm that includes length normalization (controlled by the 'b' parameter) as well as term frequency saturation (controlled by the 'k1' parameter)." + }, "DataSourceCredentials": { "properties": { "connectionString": { @@ -3837,7 +5540,7 @@ }, "description": "Represents credentials that can be used to connect to a datasource." }, - "DataContainer": { + "SearchIndexerDataContainer": { "properties": { "name": { "type": "string", @@ -3857,13 +5560,14 @@ "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the data change detection policy." } }, "required": [ "@odata.type" ], - "description": "Abstract base class for data change detection policies." + "description": "Base type for data change detection policies." }, "HighWaterMarkChangeDetectionPolicy": { "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", @@ -3896,13 +5600,14 @@ "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the data deletion detection policy." } }, "required": [ "@odata.type" ], - "description": "Abstract base class for data deletion detection policies." + "description": "Base type for data deletion detection policies." }, "SoftDeleteColumnDeletionDetectionPolicy": { "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", @@ -3923,7 +5628,7 @@ } } }, - "DataSourceType": { + "SearchIndexerDataSourceType": { "type": "string", "enum": [ "azuresql", @@ -3933,34 +5638,39 @@ "mysql" ], "x-ms-enum": { - "name": "DataSourceType", + "name": "SearchIndexerDataSourceType", "modelAsString": true, "values": [ { "value": "azuresql", - "name": "AzureSql" + "name": "AzureSql", + "description": "Indicates an Azure SQL datasource." }, { "value": "cosmosdb", - "name": "CosmosDb" + "name": "CosmosDb", + "description": "Indicates a CosmosDB datasource." }, { "value": "azureblob", - "name": "AzureBlob" + "name": "AzureBlob", + "description": "Indicates a Azure Blob datasource." }, { "value": "azuretable", - "name": "AzureTable" + "name": "AzureTable", + "description": "Indicates a Azure Table datasource." }, { "value": "mysql", - "name": "MySql" + "name": "MySql", + "description": "Indicates a MySql datasource." } ] }, "description": "Defines the type of a datasource." }, - "DataSource": { + "SearchIndexerDataSource": { "properties": { "name": { "externalDocs": { @@ -3974,7 +5684,7 @@ "description": "The description of the datasource." }, "type": { - "$ref": "#/definitions/DataSourceType", + "$ref": "#/definitions/SearchIndexerDataSourceType", "description": "The type of the datasource." }, "credentials": { @@ -3982,7 +5692,7 @@ "description": "Credentials for the datasource." }, "container": { - "$ref": "#/definitions/DataContainer", + "$ref": "#/definitions/SearchIndexerDataContainer", "description": "The data container for the datasource." }, "dataChangeDetectionPolicy": { @@ -3996,7 +5706,7 @@ "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", - "description": "The ETag of the DataSource." + "description": "The ETag of the data source." } }, "required": [ @@ -4014,7 +5724,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/DataSource" + "$ref": "#/definitions/SearchIndexerDataSource" }, "description": "The datasources in the Search service." } @@ -4116,7 +5826,7 @@ "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" } }, - "Indexer": { + "SearchIndexer": { "properties": { "name": { "externalDocs": { @@ -4178,7 +5888,7 @@ "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", - "description": "The ETag of the Indexer." + "description": "The ETag of the indexer." } }, "required": [ @@ -4198,7 +5908,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/Indexer" + "$ref": "#/definitions/SearchIndexer" }, "description": "The indexers in the Search service." } @@ -4208,7 +5918,7 @@ ], "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." }, - "ItemError": { + "SearchIndexerError": { "properties": { "key": { "type": "string", @@ -4249,7 +5959,7 @@ ], "description": "Represents an item- or document-level indexing error." }, - "ItemWarning": { + "SearchIndexerWarning": { "properties": { "key": { "type": "string", @@ -4310,7 +6020,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/ItemError" + "$ref": "#/definitions/SearchIndexerError" }, "description": "The item-level indexing errors." }, @@ -4318,7 +6028,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/ItemWarning" + "$ref": "#/definitions/SearchIndexerWarning" }, "description": "The item-level indexing warnings." }, @@ -4368,12 +6078,34 @@ ], "x-ms-enum": { "name": "IndexerExecutionStatus", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "transientFailure", + "name": "TransientFailure", + "description": "An indexer invocation has failed, but the failure may be transient. Indexer invocations will continue per schedule." + }, + { + "value": "success", + "name": "Success", + "description": "Indexer execution completed successfully." + }, + { + "value": "inProgress", + "name": "InProgress", + "description": "Indexer execution is in progress." + }, + { + "value": "reset", + "name": "Reset", + "description": "Indexer has been reset." + } + ] }, "x-nullable": false, "description": "Represents the status of an individual indexer execution." }, - "IndexerExecutionInfo": { + "SearchIndexerStatus": { "properties": { "status": { "$ref": "#/definitions/IndexerStatus", @@ -4394,7 +6126,7 @@ "description": "History of the recent indexer executions, sorted in reverse chronological order." }, "limits": { - "$ref": "#/definitions/IndexerLimits", + "$ref": "#/definitions/SearchIndexerLimits", "readOnly": true, "description": "The execution limits for the indexer." } @@ -4415,12 +6147,29 @@ ], "x-ms-enum": { "name": "IndexerStatus", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "unknown", + "name": "Unknown", + "description": "Indicates that the indexer is in an unknown state." + }, + { + "value": "error", + "name": "Error", + "description": "Indicates that the indexer experienced an error that cannot be corrected without human intervention." + }, + { + "value": "running", + "name": "Running", + "description": "Indicates that the indexer is running normally." + } + ] }, "x-nullable": false, "description": "Represents the overall indexer status." }, - "IndexerLimits": { + "SearchIndexerLimits": { "properties": { "maxRunTime": { "type": "string", @@ -4442,7 +6191,7 @@ } } }, - "Field": { + "SearchField": { "properties": { "name": { "type": "string", @@ -4452,7 +6201,7 @@ } }, "type": { - "$ref": "#/definitions/DataType", + "$ref": "#/definitions/SearchFieldDataType", "description": "The data type of the field.", "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" @@ -4486,22 +6235,22 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the language analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." }, "searchAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This analyzer can be updated on an existing field. Must be null for complex fields." + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields." }, "indexAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "$ref": "#/definitions/LexicalAnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." }, "synonymMaps": { "externalDocs": { @@ -4516,7 +6265,7 @@ "fields": { "type": "array", "items": { - "$ref": "#/definitions/Field" + "$ref": "#/definitions/SearchField" }, "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." } @@ -4551,7 +6300,8 @@ "discriminator": "type", "properties": { "type": { - "type": "string" + "type": "string", + "description": "Indicates the type of function to use. Valid values include magnitude, freshness, distance, and tag. The function type must be lower case." }, "fieldName": { "type": "string", @@ -4575,7 +6325,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" }, - "description": "Abstract base class for functions that can modify document scores during ranking." + "description": "Base type for functions that can modify document scores during ranking." }, "DistanceScoringFunction": { "x-ms-discriminator-value": "distance", @@ -4742,7 +6492,29 @@ ], "x-ms-enum": { "name": "ScoringFunctionInterpolation", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "linear", + "name": "Linear", + "description": "Boosts scores by a linearly decreasing amount. This is the default interpolation for scoring functions." + }, + { + "value": "constant", + "name": "Constant", + "description": "Boosts scores by a constant factor." + }, + { + "value": "quadratic", + "name": "Quadratic", + "description": "Boosts scores by an amount that decreases quadratically. Boosts decrease slowly for higher scores, and more quickly as the scores decrease. This interpolation option is not allowed in tag scoring functions." + }, + { + "value": "logarithmic", + "name": "Logarithmic", + "description": "Boosts scores by an amount that decreases logarithmically. Boosts decrease quickly for higher scores, and more slowly as the scores decrease. This interpolation option is not allowed in tag scoring functions." + } + ] }, "description": "Defines the function used to interpolate score boosting across a range of documents." }, @@ -4791,7 +6563,34 @@ ], "x-ms-enum": { "name": "ScoringFunctionAggregation", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "sum", + "name": "Sum", + "description": "Boost scores by the sum of all scoring function results." + }, + { + "value": "average", + "name": "Average", + "description": "Boost scores by the average of all scoring function results." + }, + { + "value": "minimum", + "name": "Minimum", + "description": "Boost scores by the minimum of all scoring function results." + }, + { + "value": "maximum", + "name": "Maximum", + "description": "Boost scores by the maximum of all scoring function results." + }, + { + "value": "firstMatching", + "name": "FirstMatching", + "description": "Boost scores using the first applicable scoring function in the scoring profile." + } + ] }, "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." }, @@ -4830,8 +6629,15 @@ "analyzingInfixMatching" ], "x-ms-enum": { - "name": "searchMode", - "modelAsString": false + "name": "SuggesterSearchMode", + "modelAsString": false, + "values": [ + { + "value": "analyzingInfixMatching", + "name": "AnalyzingInfixMatching", + "description": "Matches consecutive whole terms and prefixes in a field. For example, for the field 'The fastest brown fox', the queries 'fast' and 'fastest brow' would both match." + } + ] }, "description": "A value indicating the capabilities of the suggester." }, @@ -4850,7 +6656,7 @@ ], "description": "Defines how the Suggest API should apply to a group of fields in the index." }, - "Index": { + "SearchIndex": { "properties": { "name": { "externalDocs": { @@ -4862,7 +6668,7 @@ "fields": { "type": "array", "items": { - "$ref": "#/definitions/Field" + "$ref": "#/definitions/SearchField" }, "description": "The fields of the index." }, @@ -4891,7 +6697,7 @@ "analyzers": { "type": "array", "items": { - "$ref": "#/definitions/Analyzer" + "$ref": "#/definitions/LexicalAnalyzer" }, "description": "The analyzers for the index.", "externalDocs": { @@ -4901,7 +6707,7 @@ "tokenizers": { "type": "array", "items": { - "$ref": "#/definitions/Tokenizer" + "$ref": "#/definitions/LexicalTokenizer" }, "description": "The tokenizers for the index.", "externalDocs": { @@ -4929,12 +6735,19 @@ } }, "encryptionKey": { - "$ref": "#/definitions/EncryptionKey", + "$ref": "#/definitions/SearchResourceEncryptionKey", "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" } }, + "similarity": { + "$ref": "#/definitions/Similarity", + "description": "The type of similarity algorithm to be used when scoring and ranking the documents matching a search query. The similarity algorithm can only be defined at index creation time and cannot be modified on existing indexes. If null, the ClassicSimilarity algorithm is used.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/index-ranking-similarity" + } + }, "@odata.etag": { "x-ms-client-name": "ETag", "type": "string", @@ -4977,7 +6790,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/Index" + "$ref": "#/definitions/SearchIndex" }, "description": "The indexes in the Search service." } @@ -4987,7 +6800,7 @@ ], "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." }, - "Skillset": { + "SearchIndexerSkillset": { "properties": { "name": { "type": "string", @@ -5000,7 +6813,7 @@ "skills": { "type": "array", "items": { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" }, "description": "A list of skills in the skillset." }, @@ -5029,16 +6842,18 @@ "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the cognitive service resource attached to a skillset." }, "description": { - "type": "string" + "type": "string", + "description": "Description of the cognitive service resource attached to a skillset." } }, "required": [ "@odata.type" ], - "description": "Abstract base class for describing any cognitive service resource attached to the skillset." + "description": "Base type for describing any cognitive service resource attached to a skillset." }, "DefaultCognitiveServicesAccount": { "description": "An empty object that represents the default cognitive service resource for a skillset.", @@ -5059,18 +6874,20 @@ ], "properties": { "key": { - "type": "string" + "type": "string", + "description": "The key used to provision the cognitive service resource attached to a skillset." } }, "required": [ "key" ] }, - "Skill": { + "SearchIndexerSkill": { "discriminator": "@odata.type", "properties": { "@odata.type": { - "type": "string" + "type": "string", + "description": "Identifies the concrete type of the skill." }, "name": { "type": "string", @@ -5107,7 +6924,7 @@ "externalDocs": { "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" }, - "description": "Abstract base class for skills." + "description": "Base type for skills." }, "InputFieldMappingEntry": { "properties": { @@ -5159,7 +6976,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "externalDocs": { @@ -5171,7 +6988,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5195,7 +7012,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5223,7 +7040,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5257,7 +7074,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "externalDocs": { @@ -5269,7 +7086,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "externalDocs": { @@ -5281,7 +7098,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5305,7 +7122,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5342,7 +7159,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5360,7 +7177,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5389,7 +7206,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5418,7 +7235,7 @@ "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", "allOf": [ { - "$ref": "#/definitions/Skill" + "$ref": "#/definitions/SearchIndexerSkill" } ], "properties": { @@ -5474,7 +7291,7 @@ "type": "array", "readOnly": true, "items": { - "$ref": "#/definitions/Skillset" + "$ref": "#/definitions/SearchIndexerSkillset" }, "description": "The skillsets defined in the Search service." } @@ -5482,7 +7299,7 @@ "required": [ "value" ], - "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." + "description": "Response from a list skillset request. If successful, it includes the full definitions of all skillsets." }, "TextExtractionAlgorithm": { "type": "string", @@ -5492,7 +7309,19 @@ ], "x-ms-enum": { "name": "TextExtractionAlgorithm", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "printed", + "name": "Printed", + "description": "An algorithm suitable for printed text." + }, + { + "value": "handwritten", + "name": "Handwritten", + "description": "An algorithm suitable for handwritten text." + } + ] }, "description": "A value indicating which algorithm to use. Default is printed." }, @@ -5504,7 +7333,19 @@ ], "x-ms-enum": { "name": "TextSplitMode", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "pages", + "name": "Pages", + "description": "Split the text into individual pages." + }, + { + "value": "sentences", + "name": "Sentences", + "description": "Split the text into individual sentences." + } + ] }, "description": "A value indicating which split mode to perform." }, @@ -5521,7 +7362,44 @@ ], "x-ms-enum": { "name": "VisualFeature", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "adult", + "name": "Adult", + "description": "Visual features recognized as adult persons." + }, + { + "value": "brands", + "name": "Brands", + "description": "Visual features recognized as commercial brands." + }, + { + "value": "categories", + "name": "Categories", + "description": "Categories." + }, + { + "value": "description", + "name": "Description", + "description": "Description." + }, + { + "value": "faces", + "name": "Faces", + "description": "Visual features recognized as people faces." + }, + { + "value": "objects", + "name": "Objects", + "description": "Visual features recognized as objects." + }, + { + "value": "tags", + "name": "Tags", + "description": "Tags." + } + ] }, "description": "The strings indicating what visual feature types to return." }, @@ -5533,7 +7411,19 @@ ], "x-ms-enum": { "name": "ImageDetail", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "celebrities", + "name": "Celebrities", + "description": "Details recognized as celebrities." + }, + { + "value": "landmarks", + "name": "Landmarks", + "description": "Details recognized as landmarks." + } + ] }, "description": "A string indicating which domain-specific details to return." }, @@ -5550,7 +7440,44 @@ ], "x-ms-enum": { "name": "EntityCategory", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "location", + "name": "Location", + "description": "Entities describing a physical location." + }, + { + "value": "organization", + "name": "Organization", + "description": "Entities describing an organization." + }, + { + "value": "person", + "name": "Person", + "description": "Entities describing a person." + }, + { + "value": "quantity", + "name": "Quantity", + "description": "Entities describing a quantity." + }, + { + "value": "datetime", + "name": "Datetime", + "description": "Entities describing a date and time." + }, + { + "value": "url", + "name": "Url", + "description": "Entities describing a URL." + }, + { + "value": "email", + "name": "Email", + "description": "Entities describing an email address." + } + ] }, "description": "A string indicating what entity categories to return." }, @@ -6439,7 +8366,14 @@ ], "x-ms-enum": { "name": "SynonymMapFormat", - "modelAsString": false + "modelAsString": false, + "values": [ + { + "value": "solr", + "name": "Solr", + "description": "Selects the SOLR format for synonym maps." + } + ] }, "description": "The format of the synonym map. Only the 'solr' format is currently supported." }, @@ -6451,7 +8385,7 @@ } }, "encryptionKey": { - "$ref": "#/definitions/EncryptionKey", + "$ref": "#/definitions/SearchResourceEncryptionKey", "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" @@ -6487,17 +8421,20 @@ ], "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." }, - "EncryptionKey": { + "SearchResourceEncryptionKey": { "properties": { "keyVaultKeyName": { + "x-ms-client-name": "keyName", "type": "string", "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." }, "keyVaultKeyVersion": { + "x-ms-client-name": "keyVersion", "type": "string", "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." }, "keyVaultUri": { + "x-ms-client-name": "vaultUri", "type": "string", "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be https://my-keyvault-name.vault.azure.net." }, @@ -6701,9 +8638,6 @@ "required": false, "type": "string", "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, "x-ms-parameter-location": "method" }, "IfNoneMatchParameter": { @@ -6712,9 +8646,6 @@ "required": false, "type": "string", "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, "x-ms-parameter-location": "method" }, "PreferHeaderParameter": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json index 0bc9ad4e6522..d3eff019e3ac 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json @@ -20,6 +20,9 @@ "rating desc" ], "queryType": "simple", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", "scoringParameters": [ "currentLocation--122.123,44.77233" ], @@ -74,6 +77,16 @@ "Fancy Hotel" ] }, + "@search.features": { + "description": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.023745812 + }, + "title": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.016049799 + } + }, "description": "Best hotel in town", "docId": "2", "title": "Fancy Hotel" diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json index 732a0a19680a..c95e8c51acd2 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json @@ -23,6 +23,9 @@ "search": "nice hotels", "searchFields": "title,description", "searchMode": "any", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", "select": "docId,title,description", "skip": 0, "top": 10 @@ -56,6 +59,9 @@ "minimumCoverage": null, "orderby": "search.score() desc,rating desc", "queryType": "simple", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", "scoringParameters": [ "currentLocation--122.123,44.77233" ], @@ -86,6 +92,16 @@ "Fancy Hotel" ] }, + "@search.features": { + "description": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.023745812 + }, + "title": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.016049799 + } + }, "description": "Best hotel in town", "docId": "2", "title": "Fancy Hotel" diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json index b1cc8cbb9aac..073df28cd754 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json @@ -248,6 +248,51 @@ "name": "SearchParameters" } }, + { + "name": "featuresMode", + "in": "query", + "type": "string", + "enum": [ + "disabled", + "enabled" + ], + "x-ms-enum": { + "name": "FeaturesMode", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether the results should include scoring features such as per field similarity.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "scoringStatistics", + "in": "query", + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "sessionId", + "in": "query", + "type": "string", + "description": "A value to be used to create a sticky session, which can help to get more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, { "name": "$select", "in": "query", @@ -857,6 +902,27 @@ "additionalProperties": true, "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." }, + "SearchFeatures": { + "properties": { + "uniqueTokenMatches": { + "type": "number", + "readOnly": true, + "format": "double", + "description": "The number of unique tokens from the search query that matched this field." + }, + "similarityScore": { + "type": "number", + "readOnly": true, + "format": "double", + "description": "The similarity score computed between the search query and this field." + } + }, + "required": [ + "uniqueTokenMatches", + "similarityScore" + ], + "description": "A list of features describing the scoring of a specific field against the search query." + }, "DocumentSearchResult": { "properties": { "@odata.count": { @@ -930,6 +996,15 @@ "readOnly": true, "x-ms-client-name": "Highlights", "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." + }, + "@search.features": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SearchFeatures" + }, + "readOnly": true, + "x-ms-client-name": "Features", + "description": "description for the feature" } }, "additionalProperties": true, @@ -1039,6 +1114,30 @@ }, "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." }, + "FeaturesMode": { + "type": "string", + "enum": [ + "disabled", + "enabled" + ], + "x-ms-enum": { + "name": "FeaturesMode", + "modelAsString": false + }, + "description": "A value that specifies whether the results should include scoring features, such as per field similarity. The default is 'disabled'. Use 'enabled' to expose additional scoring features." + }, + "ScoringStatistics": { + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": false + }, + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. The default is 'local'. Use 'global' to aggregate scoring statistics globally before scoring. Using global scoring statistics can increase latency of search queries." + }, "AutocompleteMode": { "type": "string", "enum": [ @@ -1103,6 +1202,18 @@ "$ref": "#/definitions/QueryType", "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." }, + "featuresMode": { + "$ref": "#/definitions/FeaturesMode", + "description": "A value that specifies whether the results should include scoring features, such as per field similarity. The default is 'disabled'. Use 'enabled' to expose additional scoring features." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. The default is 'local'. Use 'global' to aggregate scoring statistics globally before scoring. Using global scoring statistics can increase latency of search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character." + }, "scoringParameters": { "type": "array", "items": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json index 62105b161af6..f81a0818c296 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json @@ -5321,7 +5321,7 @@ ], "x-ms-enum": { "name": "TextSplitMode", - "modelAsString": false + "modelAsString": true }, "description": "A value indicating which split mode to perform." }, @@ -5337,7 +5337,7 @@ ], "x-ms-enum": { "name": "VisualFeature", - "modelAsString": false + "modelAsString": true }, "description": "The strings indicating what visual feature types to return." }, @@ -5349,7 +5349,7 @@ ], "x-ms-enum": { "name": "ImageDetail", - "modelAsString": false + "modelAsString": true }, "description": "A string indicating which domain-specific details to return." }, @@ -5366,7 +5366,7 @@ ], "x-ms-enum": { "name": "EntityCategory", - "modelAsString": false + "modelAsString": true }, "description": "A string indicating what entity categories to return." }, diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json new file mode 100644 index 000000000000..b5c469638cb5 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource", + "sharedPrivateLinkResource": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + }, + "201": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json new file mode 100644 index 000000000000..236065a4d0fc --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json new file mode 100644 index 000000000000..67bbc1de7bf8 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json new file mode 100644 index 000000000000..a9ab49bbc5b7 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json new file mode 100644 index 000000000000..7049d4037776 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json new file mode 100644 index 000000000000..ffb6908fc3c2 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateLinkResources/searchService", + "name": "searchService", + "type": "Microsoft.Search/searchServices/privateLinkResources", + "properties": { + "groupId": "searchService", + "requiredMembers": [ + "searchService" + ], + "requiredZoneNames": [ + "privatelink.search.windows.net" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "blob", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "blob", + "description": "Azure Cognitive Search indexers can connect to blobs in Azure Storage for reading data (data source), for writing intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "table", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "table", + "description": "Azure Cognitive Search indexers can connect to tables in Azure Storage for reading data (data source), for writing book-keeping information about intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "Sql", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Sql", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the SQL head for reading data (data source)." + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.Sql/servers", + "groupId": "sqlServer", + "description": "Azure Cognitive Search indexers can connect to AzureSQL databases in a SQL server for reading data (data source)." + } + }, + { + "name": "vault", + "properties": { + "type": "Microsoft.KeyVault/vaults", + "groupId": "vault", + "description": "Azure Cognitive Search can access keys in Azure Key Vault to encrypt search index and synonym map data" + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.DBforMySQL/servers", + "groupId": "mysqlServer", + "description": "Azure Cognitive Search indexers can connect to MySQL databases for reading data (data source, preview)." + } + }, + { + "name": "site", + "properties": { + "type": "Microsoft.Web/sites", + "groupId": "sites", + "description": "Azure Cognitive Search indexers can connect to App Services when executing custom web api skills that can be present in a skillset (optional) attached to the indexer." + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json index 59c8a03031b2..101b058d119b 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json @@ -43,7 +43,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } }, @@ -70,7 +71,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json index 879b5741afc0..07cda1191dbd 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json @@ -46,7 +46,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "SystemAssigned", @@ -78,7 +79,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "SystemAssigned", diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json index 1e56e251f98b..f06e389bff2e 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json @@ -29,7 +29,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json index 4745a7e47ae3..49a38ed0914a 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json @@ -30,7 +30,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } }, { @@ -55,7 +56,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } ] diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json index 9b8b4d6b9ab5..e7984e1d37b4 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json @@ -29,7 +29,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } }, { @@ -54,7 +55,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } ] diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json index 3af307242c6d..8b3d56bbf2f1 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json @@ -39,7 +39,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json index 75012045c018..f3132081a997 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json @@ -48,7 +48,8 @@ } ] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json index f5976ef7516d..46b48947b09f 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json @@ -38,7 +38,8 @@ "networkRuleSet": { "endpointAccess": "Private" }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json index ed629af8d9d1..0690361f0fd5 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json @@ -34,7 +34,9 @@ "networkRuleSet": { "endpointAccess": "Public", "ipRules": [] - } + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "None" diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json index 1335dec6988a..33da30768990 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json @@ -231,7 +231,7 @@ "QueryKeys" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "QueryKeys_ListBySearchService", "x-ms-examples": { @@ -574,7 +574,7 @@ "Services" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "Services_ListByResourceGroup", "x-ms-examples": { @@ -616,6 +616,57 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "operationId": "PrivateLinkResources_ListSupported", + "x-ms-examples": { + "ListSupportedPrivateLinkResources": { + "$ref": "./examples/ListSupportedPrivateLinkResources.json" + } + }, + "description": "Gets a list of all supported private link resource types for the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all supported private link resource types for the given service.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections/{privateEndpointConnectionName}": { "put": { "tags": [ @@ -777,13 +828,279 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "PrivateEndpointConnections_ListByService", + "x-ms-examples": { + "ListPrivateEndpointConnectionsByService": { + "$ref": "./examples/ListPrivateEndpointConnectionsByService.json" + } + }, + "description": "Gets a list of all private endpoint connections in the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all private endpoint connections for the given service.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "put": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_CreateOrUpdate", + "x-ms-examples": { + "SharedPrivateLinkResourceCreateOrUpdate": { + "$ref": "./examples/CreateOrUpdateSharedPrivateLinkResource.json" + } + }, + "description": "Creates or updates a shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "name": "sharedPrivateLinkResource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The definition of the shared private link resource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing shared private link resource definition was successfully updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "The shared private link resource was successfully created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given shared private link resource name or the shared private link resource definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or shared private link resource could not be found. HTTP 409 (Conflict): The specified subscription is disabled. HTTP 409 (Conflict): A shared private link resource of the same name is being deleted, please retry in a few minutes.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Get", + "x-ms-examples": { + "SharedPrivateLinkResourceGet": { + "$ref": "./examples/GetSharedPrivateLinkResource.json" + } + }, + "description": "Gets the details of the shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the shared private link resource was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or shared private link resource could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Delete", + "x-ms-examples": { + "SharedPrivateLinkResourceDelete": { + "$ref": "./examples/DeleteSharedPrivateLinkResource.json" + } + }, + "description": "Deletes the shared private link resource from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The shared private link resource was successfully deleted from the search service." + }, + "404": { + "description": "The subscription, resource group, Search service or shared private link resource could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "SharedPrivateLinkResources_ListByService", + "x-ms-examples": { + "ListSharedPrivateLinkResourcesByService": { + "$ref": "./examples/ListSharedPrivateLinkResourcesByService.json" + } + }, + "description": "Gets a list of all shared private link resources managed by the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all shared private link resources managed by the given service.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.Search/searchServices": { "get": { "tags": [ "Services" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "Services_ListBySubscription", "x-ms-examples": { @@ -1106,6 +1423,194 @@ }, "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of Private Endpoint connections." + } + }, + "description": "Response containing a list of Private Endpoint connections.", + "x-ms-external": true + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the shared private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource managed by the Azure Cognitive Search service." + } + }, + "description": "Describes a Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceProperties": { + "properties": { + "privateLinkResourceId": { + "type": "string", + "description": "The resource id of the resource the shared private link resource is for." + }, + "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 managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of Shared Private Link Resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of shared private link resources, if there are any." + } + }, + "description": "Response containing a list of Shared Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResourcesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "The list of supported Private Link Resources." + } + }, + "description": "Response containing a list of supported Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private link resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service." + } + }, + "description": "Describes a supported private link resource for the Azure Cognitive Search service." + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "readOnly": true, + "type": "string", + "description": "The group ID of the private link resource." + }, + "requiredMembers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required members of the private link resource." + }, + "requiredZoneNames": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required DNS zone names of the private link resource." + }, + "shareablePrivateLinkResourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + }, + "description": "The list of resources that are onboarded to private link service, that are supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service. For a given API version, this represents the 'supported' groupIds when creating a shared private link resource." + }, + "ShareablePrivateLinkResourceType": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes an resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "ShareablePrivateLinkResourceProperties": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The resource provider type for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "groupId": { + "readOnly": true, + "type": "string", + "description": "The resource provider group id for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "description": { + "readOnly": true, + "type": "string", + "description": "The description of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, "SearchService": { "properties": { "properties": { @@ -1206,6 +1711,14 @@ "$ref": "#/definitions/PrivateEndpointConnection" }, "description": "The list of private endpoint connections to the Azure Cognitive Search service." + }, + "sharedPrivateLinkResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources managed by the Azure Cognitive Search service." } }, "description": "Properties of the Search service." @@ -1421,6 +1934,14 @@ "description": "The name of the private endpoint connection to the Azure Cognitive Search service with the specified resource group.", "x-ms-parameter-location": "method" }, + "SharedPrivateLinkResourceNameParameter": { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the shared private link resource managed by the Azure Cognitive Search service within the specified resource group.", + "x-ms-parameter-location": "method" + }, "ClientRequestIdParameter": { "name": "x-ms-client-request-id", "x-ms-client-name": "clientRequestId", diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json new file mode 100644 index 000000000000..ef0592e7e14f --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource", + "sharedPrivateLinkResource": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + }, + "201": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..83c5643e0580 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "", + "actionsRequired": "None" + } + } + } + }, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json new file mode 100644 index 000000000000..71b307bfd2d2 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..d524adb6e969 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json new file mode 100644 index 000000000000..b2b8b3183ad9 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json new file mode 100644 index 000000000000..0c301fd20831 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json new file mode 100644 index 000000000000..b456979fed5f --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json new file mode 100644 index 000000000000..f4794759ea8c --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateLinkResources/searchService", + "name": "searchService", + "type": "Microsoft.Search/searchServices/privateLinkResources", + "properties": { + "groupId": "searchService", + "requiredMembers": [ + "searchService" + ], + "requiredZoneNames": [ + "privatelink.search.windows.net" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "blob", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "blob", + "description": "Azure Cognitive Search indexers can connect to blobs in Azure Storage for reading data (data source), for writing intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "table", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "table", + "description": "Azure Cognitive Search indexers can connect to tables in Azure Storage for reading data (data source), for writing book-keeping information about intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "Sql", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Sql", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the SQL head for reading data (data source)." + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.Sql/servers", + "groupId": "sqlServer", + "description": "Azure Cognitive Search indexers can connect to AzureSQL databases in a SQL server for reading data (data source)." + } + }, + { + "name": "vault", + "properties": { + "type": "Microsoft.KeyVault/vaults", + "groupId": "vault", + "description": "Azure Cognitive Search can access keys in Azure Key Vault to encrypt search index and synonym map data" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json new file mode 100644 index 000000000000..66143fc7ce73 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-13", + "subscriptionId": "subid", + "checkNameAvailabilityInput": { + "name": "mysearchservice", + "type": "searchServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json new file mode 100644 index 000000000000..54d65779055b --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "hostingMode": "default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints.json new file mode 100644 index 000000000000..c0c46c253951 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "publicNetworkAccess": "disabled", + "hostingMode": "default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "disabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "disabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs.json new file mode 100644 index 000000000000..04a1a93a0753 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "networkRuleSet": { + "ipRules": [ + { + "value": "123.4.5.6" + }, + { + "value": "123.4.6.0/18" + } + ] + }, + "hostingMode": "default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [ + { + "value": "123.4.5.6" + }, + { + "value": "123.4.6.0/18" + } + ] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [ + { + "value": "123.4.5.6" + }, + { + "value": "123.4.6.0/18" + } + ] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json new file mode 100644 index 000000000000..ffcb5f2574d3 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "hostingMode": "default" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "SystemAssigned", + "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "SystemAssigned", + "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json new file mode 100644 index 000000000000..2525e9d18a9b --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "name": "Query key for browser-based clients", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Query key for browser-based clients", + "key": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json new file mode 100644 index 000000000000..078a153323e6 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "key": "", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json new file mode 100644 index 000000000000..ac28c9111c48 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json new file mode 100644 index 000000000000..9cf108082b34 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json new file mode 100644 index 000000000000..673753347e5a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json new file mode 100644 index 000000000000..a2f48aa37a1e --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Query key for browser-based clients", + "key": "" + }, + { + "name": "Query key for mobile clients", + "key": "" + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json new file mode 100644 index 000000000000..9a06f209589a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice2", + "name": "mysearchservice2", + "location": "eastus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json new file mode 100644 index 000000000000..907991ee8dbe --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Search/searchServices/mysearchservice2", + "name": "mysearchservice2", + "location": "eastus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json new file mode 100644 index 000000000000..2390b70c5149 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "keyKind": "primary", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json new file mode 100644 index 000000000000..063d1a9325c4 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "properties": { + "replicaCount": 2 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 2, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json new file mode 100644 index 000000000000..cb73c5c6854a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "publicNetworkAccess": "disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "disabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPublicCustomIPs.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPublicCustomIPs.json new file mode 100644 index 000000000000..2220cb66433a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPublicCustomIPs.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [ + { + "value": "123.4.5.6" + }, + { + "value": "123.4.6.0/18" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [ + { + "value": "10.2.3.4" + } + ] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json new file mode 100644 index 000000000000..5fcb2deacab0 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "sku": { + "name": "standard" + }, + "identity": { + "type": "None" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": {}, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "None" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..00290d4e4d54 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "privateEndpointConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "properties": { + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "Rejected for some reason" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "Rejected for some reason", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json new file mode 100644 index 000000000000..3d29a817eecc --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json @@ -0,0 +1,1980 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchManagementClient", + "description": "Client that can be used to manage Azure Cognitive Search services and API keys.", + "version": "2020-03-13" + }, + "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": { + "/providers/Microsoft.Search/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.Search provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/listAdminKeys": { + "post": { + "tags": [ + "AdminKeys" + ], + "operationId": "AdminKeys_Get", + "x-ms-examples": { + "SearchGetAdminKeys": { + "$ref": "./examples/SearchGetAdminKeys.json" + } + }, + "description": "Gets the primary and secondary admin API keys for the specified Azure Cognitive Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The admin keys were successfully retrieved and are in the response. You can use either the primary or secondary key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform any operations on your Search service, including privileged operations. Privileged operations include managing resources like indexes and data sources as well as uploading, modifying, or deleting data in your indexes.", + "schema": { + "$ref": "#/definitions/AdminKeyResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/regenerateAdminKey/{keyKind}": { + "post": { + "tags": [ + "AdminKeys" + ], + "operationId": "AdminKeys_Regenerate", + "x-ms-examples": { + "SearchRegenerateAdminKey": { + "$ref": "./examples/SearchRegenerateAdminKey.json" + } + }, + "description": "Regenerates either the primary or secondary admin API key. You can only regenerate one key at a time.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "keyKind", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "AdminKeyKind", + "modelAsString": false + }, + "description": "Specifies which key to regenerate. Valid values include 'primary' and 'secondary'." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The specified admin key was successfully regenerated. Both admin keys are included in the response, including the newly-regenerated key.", + "schema": { + "$ref": "#/definitions/AdminKeyResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/createQueryKey/{name}": { + "post": { + "tags": [ + "QueryKeys" + ], + "operationId": "QueryKeys_Create", + "x-ms-examples": { + "SearchCreateQueryKey": { + "$ref": "./examples/SearchCreateQueryKey.json" + } + }, + "description": "Generates a new query key for the specified Search service. You can create up to 50 query keys per service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the new query API key." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The query key was successfully created and is in the response. You can use the query key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "schema": { + "$ref": "#/definitions/QueryKey" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/listQueryKeys": { + "post": { + "tags": [ + "QueryKeys" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "QueryKeys_ListBySearchService", + "x-ms-examples": { + "SearchListQueryKeysBySearchService": { + "$ref": "./examples/SearchListQueryKeysBySearchService.json" + } + }, + "description": "Returns the list of query API keys for the given Azure Cognitive Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "All query keys for the given Search service were successfully retrieved and are in the response. You can use any of the query keys as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "schema": { + "$ref": "#/definitions/ListQueryKeysResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/deleteQueryKey/{key}": { + "delete": { + "tags": [ + "QueryKeys" + ], + "operationId": "QueryKeys_Delete", + "x-ms-examples": { + "SearchDeleteQueryKey": { + "$ref": "./examples/SearchDeleteQueryKey.json" + } + }, + "description": "Deletes the specified query key. Unlike admin keys, query keys are not regenerated. The process for regenerating a query key is to delete and then recreate it.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "key", + "in": "path", + "required": true, + "type": "string", + "description": "The query key to be deleted. Query keys are identified by value, not by name." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The query key was successfully deleted." + }, + "204": { + "description": "The query key was successfully deleted." + }, + "404": { + "description": "The subscription, resource group, Search service, or query key could not be found." + }, + "default": { + "description": "HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}": { + "put": { + "tags": [ + "Services" + ], + "operationId": "Services_CreateOrUpdate", + "x-ms-examples": { + "SearchCreateOrUpdateService": { + "$ref": "./examples/SearchCreateOrUpdateService.json" + }, + "SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs": { + "$ref": "./examples/SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs.json" + }, + "SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints": { + "$ref": "./examples/SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints.json" + }, + "SearchCreateOrUpdateServiceWithIdentity": { + "$ref": "./examples/SearchCreateOrUpdateServiceWithIdentity.json" + } + }, + "description": "Creates or updates a Search service in the given resource group. If the Search service already exists, all properties will be updated with the given values.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service to create or update. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net). You cannot change the service name after the service is created." + }, + { + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchService" + }, + "description": "The definition of the Search service to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing service definition was successfully updated. If you changed the number of replicas or partitions, the scale operation will happen asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "201": { + "description": "If you requested creation of a free Search service, the service is now provisioned and ready to use, subject to DNS propagation delay. For other SKU types, provisioning happens asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given service name or service definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription or resource group could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Services" + ], + "operationId": "Services_Update", + "x-ms-examples": { + "SearchUpdateService": { + "$ref": "./examples/SearchUpdateService.json" + }, + "SearchUpdateServiceToRemoveIdentity": { + "$ref": "./examples/SearchUpdateServiceToRemoveIdentity.json" + }, + "searchUpdateServiceToAllowAccessFromPublicCustomIPs": { + "$ref": "./examples/SearchUpdateServiceToAllowAccessFromPublicCustomIPs.json" + }, + "searchUpdateServiceToAllowAccessFromPrivateEndpoints": { + "$ref": "./examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json" + } + }, + "description": "Updates an existing Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service to update." + }, + { + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchService" + }, + "description": "The definition of the Search service to update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing service definition was successfully updated. If you changed the number of replicas or partitions, the scale operation will happen asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given service definition is invalid or you attempted to change a property that is immutable; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription or resource group could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "Services" + ], + "operationId": "Services_Get", + "x-ms-examples": { + "SearchGetService": { + "$ref": "./examples/SearchGetService.json" + } + }, + "description": "Gets the Search service with the given name in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Search service definition was successfully retrieved and is in the response. If you are polling for the completion of a provisioning or scale operation, you can check its status via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service name could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Services" + ], + "operationId": "Services_Delete", + "x-ms-examples": { + "SearchDeleteService": { + "$ref": "./examples/SearchDeleteService.json" + } + }, + "description": "Deletes a Search service in the given resource group, along with its associated resources.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Search service was successfully deleted." + }, + "204": { + "description": "The Search service was successfully deleted." + }, + "404": { + "description": "The subscription, resource group, or Search service could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices": { + "get": { + "tags": [ + "Services" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "Services_ListByResourceGroup", + "x-ms-examples": { + "SearchListServicesByResourceGroup": { + "$ref": "./examples/SearchListServicesByResourceGroup.json" + } + }, + "description": "Gets a list of all Search services in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all Search service definitions for the given resource group.", + "schema": { + "$ref": "#/definitions/SearchServiceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "operationId": "PrivateLinkResources_ListSupported", + "x-ms-examples": { + "ListSupportedPrivateLinkResources": { + "$ref": "./examples/ListSupportedPrivateLinkResources.json" + } + }, + "description": "Gets a list of all supported private link resource types for the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all supported private link resource types for the given service.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnectionUpdate": { + "$ref": "./examples/UpdatePrivateEndpointConnection.json" + } + }, + "description": "Updates a Private Endpoint connection to the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The definition of the private endpoint connection to update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing private endpoint connection definition was successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given private endpoint connection name or the private endpoint connection definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or private endpoint connection could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnectionGet": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + }, + "description": "Gets the details of the private endpoint connection to the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the private endpoint connection was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or private endpoint connection could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnectionDelete": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + }, + "description": "Disconnects the private endpoint connection and deletes it from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully disconnected and removed from the search service. The response will contain the updated definition of the private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "404": { + "description": "The subscription, resource group, Search service or private endpoint connection could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "PrivateEndpointConnections_ListByService", + "x-ms-examples": { + "ListPrivateEndpointConnectionsByService": { + "$ref": "./examples/ListPrivateEndpointConnectionsByService.json" + } + }, + "description": "Gets a list of all private endpoint connections in the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all private endpoint connections for the given service.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "put": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_CreateOrUpdate", + "x-ms-examples": { + "SharedPrivateLinkResourceCreateOrUpdate": { + "$ref": "./examples/CreateOrUpdateSharedPrivateLinkResource.json" + } + }, + "description": "Creates or updates a shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "name": "sharedPrivateLinkResource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The definition of the shared private link resource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing shared private link resource definition was successfully updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "The shared private link resource was successfully created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given shared private link resource name or the shared private link resource definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or shared private link resource could not be found. HTTP 409 (Conflict): The specified subscription is disabled. HTTP 409 (Conflict): A shared private link resource of the same name is being deleted, please retry in a few minutes.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Get", + "x-ms-examples": { + "SharedPrivateLinkResourceGet": { + "$ref": "./examples/GetSharedPrivateLinkResource.json" + } + }, + "description": "Gets the details of the shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the shared private link resource was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or shared private link resource could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Delete", + "x-ms-examples": { + "SharedPrivateLinkResourceDelete": { + "$ref": "./examples/DeleteSharedPrivateLinkResource.json" + } + }, + "description": "Deletes the shared private link resource from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The shared private link resource was successfully deleted from the search service." + }, + "404": { + "description": "The subscription, resource group, Search service or shared private link resource could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "SharedPrivateLinkResources_ListByService", + "x-ms-examples": { + "ListSharedPrivateLinkResourcesByService": { + "$ref": "./examples/ListSharedPrivateLinkResourcesByService.json" + } + }, + "description": "Gets a list of all shared private link resources managed by the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all shared private link resources managed by the given service.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Search/searchServices": { + "get": { + "tags": [ + "Services" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "Services_ListBySubscription", + "x-ms-examples": { + "SearchListServicesBySubscription": { + "$ref": "./examples/SearchListServicesBySubscription.json" + } + }, + "description": "Gets a list of all Search services in the given subscription.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all Search service definitions for the given subscription.", + "schema": { + "$ref": "#/definitions/SearchServiceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Search/checkNameAvailability": { + "post": { + "tags": [ + "Services" + ], + "description": "Checks whether or not the given Search service name is available for use. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net).", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "operationId": "Services_CheckNameAvailability", + "x-ms-examples": { + "SearchCheckNameAvailability": { + "$ref": "./examples/SearchCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "The resource name and type to check.", + "x-ms-client-flatten": true, + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The name check completed. The response contains details of whether the name is valid and available. If the name is invalid, the response also contains a message explaining why not.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given resource type is not 'searchServices'.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityInput": { + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The Search service name to validate. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated. This value must always be 'searchServices'.", + "type": "string", + "enum": [ + "searchServices" + ], + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + } + }, + "description": "Input of check name availability API." + }, + "CheckNameAvailabilityOutput": { + "type": "object", + "properties": { + "nameAvailable": { + "x-ms-client-name": "IsNameAvailable", + "description": "A value indicating whether the name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason why the name is not available. 'Invalid' indicates the name provided does not match the naming requirements (incorrect length, unsupported characters, etc.). 'AlreadyExists' indicates that the name is already in use and is therefore unavailable.", + "type": "string", + "readOnly": true, + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "UnavailableNameReason", + "modelAsString": true + } + }, + "message": { + "description": "A message that explains why the name is invalid and provides resource naming requirements. Available only if 'Invalid' is returned in the 'reason' property.", + "type": "string", + "readOnly": true + } + }, + "description": "Output of check name availability API." + }, + "AdminKeyResult": { + "properties": { + "primaryKey": { + "readOnly": true, + "type": "string", + "description": "The primary admin API key of the Search service." + }, + "secondaryKey": { + "readOnly": true, + "type": "string", + "description": "The secondary admin API key of the Search service." + } + }, + "description": "Response containing the primary and secondary admin API keys for a given Azure Cognitive Search service." + }, + "QueryKey": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the query API key; may be empty." + }, + "key": { + "readOnly": true, + "type": "string", + "description": "The value of the query API key." + } + }, + "description": "Describes an API key for a given Azure Cognitive Search service that has permissions for query operations only." + }, + "ListQueryKeysResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/QueryKey" + }, + "description": "The query keys for the Azure Cognitive Search service." + } + }, + "description": "Response containing the query API keys for a given Azure Cognitive Search service.", + "x-ms-external": true + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The SKU of the Search service. Valid values include: 'free': Shared service. 'basic': Dedicated service with up to 3 replicas. 'standard': Dedicated service with up to 12 partitions and 12 replicas. 'standard2': Similar to standard, but with more capacity per search unit. 'standard3': The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity'). 'storage_optimized_l1': Supports 1TB per partition, up to 12 partitions. 'storage_optimized_l2': Supports 2TB per partition, up to 12 partitions.'", + "enum": [ + "free", + "basic", + "standard", + "standard2", + "standard3", + "storage_optimized_l1", + "storage_optimized_l2" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false + } + } + }, + "description": "Defines the SKU of an Azure Cognitive Search Service, which determines price tier and capacity limits.", + "externalDocs": { + "url": "https://azure.microsoft.com/documentation/articles/search-sku-tier/" + } + }, + "PrivateEndpointConnection": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the private endpoint connection. This can be used with the Azure Resource Manager to link resources together.", + "externalDocs": { + "url": "https://aka.ms/search-linked-resources" + } + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." + } + }, + "description": "Describes an existing Private Endpoint connection to the Azure Cognitive Search service." + }, + "NetworkRuleSet": { + "properties": { + "ipRules": { + "type": "array", + "description": "A list of IP restriction rules that defines the inbound network(s) with allowing access to the search service endpoint. At the meantime, all other public IP networks are blocked by the firewall. These restriction rules are applied only when the 'publicNetworkAccess' of the search service is 'enabled'; otherwise, traffic over public interface is not allowed even with any public IP rules, and private endpoint connections would be the exclusive access method.", + "items": { + "$ref": "#/definitions/IpRule" + } + } + }, + "description": "Network specific rules that determine how the Azure Cognitive Search service may be reached." + }, + "IpRule": { + "properties": { + "value": { + "type": "string", + "description": "Value corresponding to a single IPv4 address (eg., 123.1.2.3) or an IP range in CIDR format (eg., 123.1.2.3/24) to be allowed." + } + }, + "description": "The IP restriction rule of the Azure Cognitive Search service." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "properties": { + "id": { + "type": "string", + "description": "The resource id of the private endpoint resource from Microsoft.Network provider." + } + }, + "description": "The private endpoint resource from Microsoft.Network provider." + }, + "privateLinkServiceConnectionState": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Status of the the private link service connection. Can be Pending, Approved, Rejected, or Disconnected.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": false + } + }, + "description": { + "type": "string", + "description": "The description for the private link service connection state." + }, + "actionsRequired": { + "type": "string", + "description": "A description of any extra actions that may be required.", + "default": "None" + } + }, + "description": "Describes the current state of an existing Private Link Service connection to the Azure Private Endpoint." + } + }, + "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of Private Endpoint connections." + } + }, + "description": "Response containing a list of Private Endpoint connections.", + "x-ms-external": true + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the shared private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource managed by the Azure Cognitive Search service." + } + }, + "description": "Describes a Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceProperties": { + "properties": { + "privateLinkResourceId": { + "type": "string", + "description": "The resource id of the resource the shared private link resource is for." + }, + "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 managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of Shared Private Link Resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of shared private link resources, if there are any." + } + }, + "description": "Response containing a list of Shared Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResourcesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "The list of supported Private Link Resources." + } + }, + "description": "Response containing a list of supported Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private link resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service." + } + }, + "description": "Describes a supported private link resource for the Azure Cognitive Search service." + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "readOnly": true, + "type": "string", + "description": "The group ID of the private link resource." + }, + "requiredMembers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required members of the private link resource." + }, + "requiredZoneNames": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required DNS zone names of the private link resource." + }, + "shareablePrivateLinkResourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + }, + "description": "The list of resources that are onboarded to private link service, that are supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service. For a given API version, this represents the 'supported' groupIds when creating a shared private link resource." + }, + "ShareablePrivateLinkResourceType": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes an resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "ShareablePrivateLinkResourceProperties": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The resource provider type for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "groupId": { + "readOnly": true, + "type": "string", + "description": "The resource provider group id for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "description": { + "readOnly": true, + "type": "string", + "description": "The description of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "SearchService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SearchServiceProperties", + "description": "Properties of the Search service." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the Search Service, which determines price tier and capacity limits. This property is required when creating a new Search Service.", + "externalDocs": { + "url": "https://azure.microsoft.com/documentation/articles/search-sku-tier/" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes an Azure Cognitive Search service and its current state." + }, + "SearchServiceProperties": { + "properties": { + "replicaCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 12, + "default": 1, + "description": "The number of replicas in the Search service. If specified, it must be a value between 1 and 12 inclusive for standard SKUs or between 1 and 3 inclusive for basic SKU." + }, + "partitionCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 12, + "default": 1, + "description": "The number of partitions in the Search service; if specified, it can be 1, 2, 3, 4, 6, or 12. Values greater than 1 are only valid for standard SKUs. For 'standard3' services with hostingMode set to 'highDensity', the allowed values are between 1 and 3." + }, + "hostingMode": { + "type": "string", + "default": "default", + "description": "Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.", + "enum": [ + "default", + "highDensity" + ], + "x-ms-enum": { + "name": "HostingMode", + "modelAsString": false + } + }, + "publicNetworkAccess": { + "type": "string", + "default": "enabled", + "description": "This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.", + "enum": [ + "enabled", + "disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": false + } + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the Search service. Possible values include: 'running': The Search service is running and no provisioning operations are underway. 'provisioning': The Search service is being provisioned or scaled up or down. 'deleting': The Search service is being deleted. 'degraded': The Search service is degraded. This can occur when the underlying search units are not healthy. The Search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The Search service is disabled. In this state, the service will reject all API requests. 'error': The Search service is in an error state. If your service is in the degraded, disabled, or error states, it means the Azure Cognitive Search team is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.", + "enum": [ + "running", + "provisioning", + "deleting", + "degraded", + "disabled", + "error" + ], + "x-ms-enum": { + "name": "SearchServiceStatus", + "modelAsString": false + } + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "The details of the Search service status." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the last provisioning operation performed on the Search service. Provisioning is an intermediate state that occurs while service capacity is being established. After capacity is set up, provisioningState changes to either 'succeeded' or 'failed'. Client applications can poll provisioning status (the recommended polling interval is from 30 seconds to one minute) by using the Get Search Service operation to see when an operation is completed. If you are using the free service, this value tends to come back as 'succeeded' directly in the call to Create Search service. This is because the free service uses capacity that is already set up.", + "enum": [ + "succeeded", + "provisioning", + "failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "networkRuleSet": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "Network specific rules that determine how the Azure Cognitive Search service may be reached." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections to the Azure Cognitive Search service." + }, + "sharedPrivateLinkResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources managed by the Azure Cognitive Search service." + } + }, + "description": "Properties of the Search service." + }, + "SearchServiceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SearchService" + }, + "description": "The list of Search services." + } + }, + "description": "Response containing a list of Azure Cognitive Search services.", + "x-ms-external": true + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource. This can be used with the Azure Resource Manager to link resources together.", + "externalDocs": { + "url": "https://aka.ms/search-linked-resources" + } + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The geographic location of the resource. This must be one of the supported and registered Azure Geo Regions (for example, West US, East US, Southeast Asia, and so forth). This property is required when creating a new resource.", + "externalDocs": { + "url": "https://aka.ms/search-rp-info" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags to help categorize the resource in the Azure portal." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + } + }, + "description": "Base type for all Azure resources.", + "x-ms-azure-resource": true + }, + "CloudError": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Describes a particular API error with an error code and a message." + } + }, + "description": "Contains information about an API error.", + "x-ms-external": true + }, + "CloudErrorBody": { + "type": "object", + "description": "Describes a particular API error with an error code and a message.", + "properties": { + "code": { + "type": "string", + "description": "An error code that describes the error condition more precisely than an HTTP status code. Can be used to programmatically handle specific error cases." + }, + "message": { + "type": "string", + "description": "A message that describes the error in detail and provides debugging information." + }, + "target": { + "type": "string", + "description": "The target of the particular error (for example, the name of the property in error)." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "Contains nested errors that are related to this error." + } + }, + "x-ms-external": true + }, + "Operation": { + "description": "Describes a REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation. This name is of the form {provider}/{resource}/{operation}.", + "readOnly": true, + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "readOnly": true, + "properties": { + "provider": { + "description": "The friendly name of the resource provider.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "The operation type: read, write, delete, listKeys/action, etc.", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "The resource type on which the operation is performed.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The friendly name of the operation.", + "readOnly": true, + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "The result of the request to list REST API operations. It contains a list of operations and a URL to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true, + "description": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of operation list results, if any." + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + } + }, + "parameters": { + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the current subscription. You can obtain this value from the Azure Resource Manager API or the portal.", + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service associated with the specified resource group.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection to the Azure Cognitive Search service with the specified resource group.", + "x-ms-parameter-location": "method" + }, + "SharedPrivateLinkResourceNameParameter": { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the shared private link resource managed by the Azure Cognitive Search service within the specified resource group.", + "x-ms-parameter-location": "method" + }, + "ClientRequestIdParameter": { + "name": "x-ms-client-request-id", + "x-ms-client-name": "clientRequestId", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "A client-generated GUID value that identifies this request. If specified, this will be included in response information as a way to track the request.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "search-management-request-options" + }, + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The unique identifier for a Microsoft Azure subscription. You can obtain this value from the Azure Resource Manager API or the portal." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for each request. The current version is 2019-10-01-Preview." + } + } +} diff --git a/specification/search/resource-manager/readme.md b/specification/search/resource-manager/readme.md index 24d291ac3c59..2013e0992ec4 100644 --- a/specification/search/resource-manager/readme.md +++ b/specification/search/resource-manager/readme.md @@ -29,6 +29,13 @@ openapi-type: arm tag: package-2015-08 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. +``` yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.Search/stable/2020-03-13/search.json +``` ### Tag: package-2015-08 @@ -118,6 +125,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-search batch: - tag: package-2015-02 - tag: package-2015-08 + - tag: package-2020-03 ``` ### Tag: package-2015-02 and java @@ -146,6 +154,18 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.search.v2020_03_13 + output-folder: $(azure-libraries-for-java-folder)/sdk/search/mgmt-resource-manager/v2020_03_13 +regenerate-manager: true +generate-interface: true +``` ## Multi-API/Profile support for AutoRest v3 generators @@ -160,6 +180,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Search/stable/2020-03-13/search.json - $(this-folder)/Microsoft.Search/stable/2015-08-19/search.json - $(this-folder)/Microsoft.Search/stable/2015-02-28/search.json - $(this-folder)/Microsoft.Search/preview/2019-10-01-preview/search.json diff --git a/specification/search/resource-manager/readme.ruby.md b/specification/search/resource-manager/readme.ruby.md index 33006770fb29..8919ed6a6c05 100644 --- a/specification/search/resource-manager/readme.ruby.md +++ b/specification/search/resource-manager/readme.ruby.md @@ -13,6 +13,7 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: - tag: package-2015-08 + - tag: package-2020-03 ``` ### Tag: package-2015-08 and ruby @@ -24,3 +25,13 @@ Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(ruby) +namespace: "Azure::Search::Mgmt::V2020_03_13" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_search/lib +``` \ No newline at end of file diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json index eeb717b89952..e686d82a10d0 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json @@ -3,10 +3,7 @@ "api-version": "2017-08-01-preview", "scope": "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", "informationProtectionPolicyName": "custom", - "InformationProtectionPolicy": { - "id": "/providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom", - "name": "custom", - "type": "Microsoft.Security/informationProtectionPolicies", + "informationProtectionPolicy": { "properties": { "labels": { "1345da73-bc5a-4a8f-b7dd-3820eb713da8": { diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json index 160233ecc06e..83320e280a34 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json @@ -95,6 +95,9 @@ }, { "$ref": "#/parameters/InformationProtectionPolicyName" + }, + { + "$ref": "#/parameters/InformationProtectionPolicy" } ], "responses": { @@ -205,6 +208,11 @@ "readOnly": true, "description": "Describes the last UTC time the policy was modified." }, + "version": { + "type": "string", + "readOnly": true, + "description": "Describes the version of the policy." + }, "labels": { "type": "object", "description": "Dictionary of sensitivity labels.", @@ -231,9 +239,29 @@ "type": "string", "description": "The name of the sensitivity label." }, + "description": { + "type": "string", + "description": "The description of the sensitivity label." + }, + "rank": { + "type": "string", + "description": "The rank of the sensitivity label.", + "enum": [ + "None", + "Low", + "Medium", + "High", + "Critical" + ], + "x-ms-enum": { + "name": "rank", + "modelAsString": false + } + }, "order": { - "type": "number", - "description": "The order of the sensitivity label." + "format": "int32", + "description": "The order of the sensitivity label.", + "type": "integer" }, "enabled": { "type": "boolean", @@ -249,9 +277,14 @@ "type": "string", "description": "The name of the information type." }, + "description": { + "type": "string", + "description": "The description of the information type." + }, "order": { - "type": "number", - "description": "The order of the information type." + "format": "int32", + "description": "The order of the information type.", + "type": "integer" }, "recommendedLabelId": { "type": "string", @@ -310,6 +343,16 @@ ], "description": "Name of the information protection policy.", "x-ms-parameter-location": "method" + }, + "InformationProtectionPolicy": { + "name": "informationProtectionPolicy", + "in": "body", + "required": true, + "description": "Information protection policy.", + "schema": { + "$ref": "#/definitions/InformationProtectionPolicy" + }, + "x-ms-parameter-location": "method" } } } diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSetting_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSetting_example.json index 31c7b88df1db..808d5e9e47c4 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSetting_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSetting_example.json @@ -9,7 +9,7 @@ "body": { "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/settings/MCAS", "name": "MCAS", - "kind": "DataExportSetting", + "kind": "DataExportSettings", "type": "Microsoft.Security/settings", "properties": { "enabled": true diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSettings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSettings_example.json index 87d7aa5a6c58..4def4e3f66c6 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSettings_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/GetSettings_example.json @@ -10,7 +10,7 @@ { "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/settings/MCAS", "name": "MCAS", - "kind": "DataExportSetting", + "kind": "DataExportSettings", "type": "Microsoft.Security/settings", "properties": { "enabled": true @@ -19,7 +19,7 @@ { "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/settings/WDATP", "name": "WDATP", - "kind": "DataExportSetting", + "kind": "DataExportSettings", "type": "Microsoft.Security/settings", "properties": { "enabled": false diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/UpdateSetting_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/UpdateSetting_example.json index 789ebb7d6219..f0f251081910 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/UpdateSetting_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/Settings/UpdateSetting_example.json @@ -4,10 +4,7 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "settingName": "MCAS", "setting": { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/settings/MCAS", - "name": "MCAS", - "kind": "DataExportSetting", - "type": "Microsoft.Security/settings", + "kind": "DataExportSettings", "properties": { "enabled": true } @@ -18,7 +15,7 @@ "body": { "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/settings/MCAS", "name": "MCAS", - "kind": "DataExportSetting", + "kind": "DataExportSettings", "type": "Microsoft.Security/settings", "properties": { "enabled": true diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/settings.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/settings.json index 15e9f74f8d87..e408c16ecaa8 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/settings.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/settings.json @@ -175,7 +175,6 @@ "Setting": { "type": "object", "description": "Represents a security setting in Azure Security Center.", - "discriminator": "kind", "properties": {}, "allOf": [ { @@ -183,10 +182,9 @@ } ] }, - "DataExportSetting": { + "DataExportSettings": { "type": "object", "description": "Represents a data export setting", - "x-ms-discriminator-value": "DataExportSetting", "properties": { "properties": { "x-ms-client-flatten": true, @@ -198,7 +196,8 @@ { "$ref": "#/definitions/Setting" } - ] + ], + "x-ms-discriminator-value": "DataExportSettings" }, "SettingResource": { "type": "object", @@ -206,9 +205,9 @@ "properties": { "kind": { "type": "string", - "description": "the kind of the settings string (DataExportSetting)", + "description": "the kind of the settings string (DataExportSettings)", "enum": [ - "DataExportSetting", + "DataExportSettings", "AlertSuppressionSetting" ], "x-ms-enum": { @@ -216,7 +215,7 @@ "modelAsString": true, "values": [ { - "value": "DataExportSetting" + "value": "DataExportSettings" }, { "value": "AlertSuppressionSetting" @@ -225,6 +224,7 @@ } } }, + "discriminator": "kind", "required": [ "kind" ], diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json index 7214aad87283..61bfab4a4553 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json @@ -273,6 +273,7 @@ "CustomAlertRule": { "type": "object", "description": "A custom alert rule.", + "discriminator": "ruleType", "properties": { "displayName": { "type": "string", @@ -347,39 +348,42 @@ "items": { "type": "string" } - }, - "ruleType": { - "type": "string", - "description": "The type of the custom alert rule.", - "enum": [ - "ConnectionToIpNotAllowed", - "LocalUserNotAllowed", - "ProcessNotAllowed" - ], - "x-ms-enum": { - "name": "AllowListRuleType", - "modelAsString": true, - "values": [ - { - "value": "ConnectionToIpNotAllowed", - "description": "Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation." - }, - { - "value": "LocalUserNotAllowed", - "description": "Login by a local user that isn't allowed. Allow list consists of login names to allow." - }, - { - "value": "ProcessNotAllowed", - "description": "Execution of a process that isn't allowed. Allow list consists of process names to allow." - } - ] - } } }, "required": [ "allowlistValues" ] }, + "ConnectionToIpNotAllowed": { + "type": "object", + "description": "Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, + "LocalUserNotAllowed": { + "type": "object", + "description": "Login by a local user that isn't allowed. Allow list consists of login names to allow.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, + "ProcessNotAllowed": { + "type": "object", + "description": "Execution of a process that isn't allowed. Allow list consists of process names to allow.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, "DenylistCustomAlertRule": { "type": "object", "description": "A custom alert rule that checks if a value (depends on the custom alert type) is denied.", @@ -437,103 +441,171 @@ "type": "string", "description": "The time window size in iso8601 format.", "format": "duration" - }, - "ruleType": { - "type": "string", - "description": "The type of the custom alert rule.", - "enum": [ - "ActiveConnectionsNotInAllowedRange", - "AmqpC2DMessagesNotInAllowedRange", - "MqttC2DMessagesNotInAllowedRange", - "HttpC2DMessagesNotInAllowedRange", - "AmqpC2DRejectedMessagesNotInAllowedRange", - "MqttC2DRejectedMessagesNotInAllowedRange", - "HttpC2DRejectedMessagesNotInAllowedRange", - "AmqpD2CMessagesNotInAllowedRange", - "MqttD2CMessagesNotInAllowedRange", - "HttpD2CMessagesNotInAllowedRange", - "DirectMethodInvokesNotInAllowedRange", - "FailedLocalLoginsNotInAllowedRange", - "FileUploadsNotInAllowedRange", - "QueuePurgesNotInAllowedRange", - "TwinUpdatesNotInAllowedRange", - "UnauthorizedOperationsNotInAllowedRange" - ], - "x-ms-enum": { - "name": "ThresholdRuleType", - "modelAsString": true, - "values": [ - { - "value": "ActiveConnectionsNotInAllowedRange", - "description": "Number of active connections is not in allowed range." - }, - { - "value": "AmqpC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (HTTP protocol) is not in allowed range." - }, - { - "value": "AmqpC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range." - }, - { - "value": "AmqpD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (HTTP protocol) is not in allowed range." - }, - { - "value": "DirectMethodInvokesNotInAllowedRange", - "description": "Number of direct method invokes is not in allowed range." - }, - { - "value": "FailedLocalLoginsNotInAllowedRange", - "description": "Number of failed local logins is not in allowed range." - }, - { - "value": "FileUploadsNotInAllowedRange", - "description": "Number of file uploads is not in allowed range." - }, - { - "value": "QueuePurgesNotInAllowedRange", - "description": "Number of device queue purges is not in allowed range." - }, - { - "value": "TwinUpdatesNotInAllowedRange", - "description": "Number of twin updates is not in allowed range." - }, - { - "value": "UnauthorizedOperationsNotInAllowedRange", - "description": "Number of unauthorized operations is not in allowed range." - } - ] - } } }, "required": [ "timeWindowSize" ] + }, + "ActiveConnectionsNotInAllowedRange": { + "type": "object", + "description": "Number of active connections is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "DirectMethodInvokesNotInAllowedRange": { + "type": "object", + "description": "Number of direct method invokes is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "FailedLocalLoginsNotInAllowedRange": { + "type": "object", + "description": "Number of failed local logins is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "FileUploadsNotInAllowedRange": { + "type": "object", + "description": "Number of file uploads is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "QueuePurgesNotInAllowedRange": { + "type": "object", + "description": "Number of device queue purges is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "TwinUpdatesNotInAllowedRange": { + "type": "object", + "description": "Number of twin updates is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "UnauthorizedOperationsNotInAllowedRange": { + "type": "object", + "description": "Number of unauthorized operations is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} } }, "parameters": { diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json new file mode 100644 index 000000000000..df4f9737d4e8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings": { + "get": { + "x-ms-examples": { + "List Adaptive Network Hardenings resources of an extended resource": { + "$ref": "./examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json" + } + }, + "description": "Gets a list of Adaptive Network Hardenings resources in scope of an extended resource.", + "tags": [ + "AdaptiveNetworkHardenings" + ], + "operationId": "AdaptiveNetworkHardenings_ListByExtendedResource", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardeningsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}": { + "get": { + "x-ms-examples": { + "Get a single Adaptive Network Hardening resource": { + "$ref": "./examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json" + } + }, + "tags": [ + "AdaptiveNetworkHardenings" + ], + "description": "Gets a single Adaptive Network Hardening resource", + "operationId": "AdaptiveNetworkHardenings_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardening" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}/{adaptiveNetworkHardeningEnforceAction}": { + "post": { + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enforces the given rules on the NSG(s) listed in the request": { + "$ref": "./examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json" + } + }, + "tags": [ + "AdaptiveNetworkHardenings" + ], + "description": "Enforces the given rules on the NSG(s) listed in the request", + "operationId": "AdaptiveNetworkHardenings_Enforce", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceAction" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceRequest" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "PortNumber": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + }, + "Rule": { + "description": "Describes remote addresses that is recommended to communicate with the Azure resource on some (Protocol, Port, Direction). All other remote addresses are recommended to be blocked", + "properties": { + "name": { + "description": "The name of the rule", + "type": "string" + }, + "direction": { + "description": "The rule's direction", + "type": "string", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "direction", + "modelAsString": true + } + }, + "destinationPort": { + "description": "The rule's destination port", + "$ref": "#/definitions/PortNumber" + }, + "protocols": { + "description": "The rule's transport protocols", + "type": "array", + "items": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "transportProtocol", + "modelAsString": true + } + } + }, + "ipAddresses": { + "description": "The remote IP addresses that should be able to communicate with the Azure resource on the rule's destination port and protocol", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "EffectiveNetworkSecurityGroups": { + "description": "Describes the Network Security Groups effective on a network interface", + "properties": { + "networkInterface": { + "description": "The Azure resource ID of the network interface", + "type": "string" + }, + "networkSecurityGroups": { + "description": "The Network Security Groups effective on the network interface", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AdaptiveNetworkHardeningProperties": { + "description": "Adaptive Network Hardening resource properties", + "properties": { + "rules": { + "description": "The security rules which are recommended to be effective on the VM", + "type": "array", + "items": { + "$ref": "#/definitions/Rule" + } + }, + "rulesCalculationTime": { + "type": "string", + "format": "date-time", + "description": "The UTC time on which the rules were calculated" + }, + "effectiveNetworkSecurityGroups": { + "description": "The Network Security Groups effective on the network interfaces of the protected resource", + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroups" + } + } + } + }, + "AdaptiveNetworkHardening": { + "description": "The resource whose properties describes the Adaptive Network Hardening settings for some Azure resource", + "properties": { + "properties": { + "description": "Properties of the Adaptive Network Hardening resource", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AdaptiveNetworkHardeningProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "AdaptiveNetworkHardeningsList": { + "description": "Response for ListAdaptiveNetworkHardenings API service call", + "properties": { + "value": { + "description": "A list of Adaptive Network Hardenings resources", + "type": "array", + "items": { + "$ref": "#/definitions/AdaptiveNetworkHardening" + } + }, + "nextLink": { + "description": "The URL to get the next set of results", + "type": "string" + } + } + }, + "AdaptiveNetworkHardeningEnforceRequest": { + "type": "object", + "properties": { + "rules": { + "type": "array", + "description": "The rules to enforce", + "items": { + "$ref": "#/definitions/Rule" + } + }, + "networkSecurityGroups": { + "type": "array", + "description": "The Azure resource IDs of the effective network security groups that will be updated with the created security rules from the Adaptive Network Hardening rules", + "items": { + "type": "string" + } + } + }, + "required": [ + "rules", + "networkSecurityGroups" + ] + } + }, + "parameters": { + "AdaptiveNetworkHardeningResourceName": { + "name": "adaptiveNetworkHardeningResourceName", + "in": "path", + "description": "The name of the Adaptive Network Hardening resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AdaptiveNetworkHardeningEnforceAction": { + "name": "adaptiveNetworkHardeningEnforceAction", + "type": "string", + "in": "path", + "required": true, + "description": "Enforces the given rules on the NSG(s) listed in the request", + "enum": [ + "enforce" + ], + "x-ms-parameter-location": "method" + }, + "AdaptiveNetworkHardeningEnforceRequest": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardeningEnforceRequest" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json new file mode 100644 index 000000000000..377faa308c52 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json @@ -0,0 +1,297 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/allowedConnections": { + "get": { + "x-ms-examples": { + "Get allowed connections on a subscription": { + "$ref": "./examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription", + "operationId": "AllowedConnections_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections": { + "get": { + "x-ms-examples": { + "Get allowed connections on a subscription from security data location": { + "$ref": "./examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription and location.", + "operationId": "AllowedConnections_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections/{connectionType}": { + "get": { + "x-ms-examples": { + "Get allowed connections": { + "$ref": "./examples/AllowedConnections/GetAllowedConnections_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription and location, based on connection type.", + "operationId": "AllowedConnections_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/ConnectionType" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AllowedConnectionsList": { + "type": "object", + "description": "List of all possible traffic between Azure resources", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AllowedConnectionsResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "AllowedConnectionsResource": { + "type": "object", + "description": "The resource whose properties describes the allowed traffic between Azure resources", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "readOnly": true, + "$ref": "#/definitions/AllowedConnectionsResourceProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "AllowedConnectionsResourceProperties": { + "type": "object", + "description": "Describes the allowed traffic between Azure resources", + "properties": { + "calculatedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The UTC time on which the allowed connections resource was calculated" + }, + "connectableResources": { + "type": "array", + "readOnly": true, + "description": "List of connectable resources", + "items": { + "$ref": "#/definitions/ConnectableResource" + } + } + } + }, + "ConnectableResource": { + "type": "object", + "description": "Describes the allowed inbound and outbound traffic of an Azure resource", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The Azure resource id" + }, + "inboundConnectedResources": { + "type": "array", + "readOnly": true, + "description": "The list of Azure resources that the resource has inbound allowed connection from", + "items": { + "$ref": "#/definitions/ConnectedResource" + } + }, + "outboundConnectedResources": { + "type": "array", + "readOnly": true, + "description": "The list of Azure resources that the resource has outbound allowed connection to", + "items": { + "$ref": "#/definitions/ConnectedResource" + } + } + } + }, + "ConnectedResource": { + "type": "object", + "description": "Describes properties of a connected resource", + "properties": { + "connectedResourceId": { + "type": "string", + "readOnly": true, + "description": "The Azure resource id of the connected resource" + }, + "tcpPorts": { + "type": "string", + "readOnly": true, + "description": "The allowed tcp ports" + }, + "udpPorts": { + "type": "string", + "readOnly": true, + "description": "The allowed udp ports" + } + } + } + }, + "parameters": { + "ConnectionType": { + "name": "connectionType", + "type": "string", + "in": "path", + "description": "The type of allowed connections (Internal, External)", + "required": true, + "enum": [ + "Internal", + "External" + ], + "x-ms-enum": { + "name": "connectionType", + "modelAsString": true, + "values": [ + { + "value": "Internal" + }, + { + "value": "External" + } + ] + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json new file mode 100644 index 000000000000..891ad2d1a162 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json @@ -0,0 +1,589 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/applicationWhitelistings": { + "get": { + "description": "Gets a list of application control VM/server groups for the subscription.", + "operationId": "AdaptiveApplicationControls_List", + "x-ms-examples": { + "Gets a list of application control VM/server groups for the subscription": { + "$ref": "./examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json" + } + }, + "tags": [ + "applicationWhitelistings" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/IncludePathRecommendations" + }, + { + "$ref": "#/parameters/Summary" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppWhitelistingGroups" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}": { + "get": { + "description": "Gets an application control VM/server group.", + "operationId": "AdaptiveApplicationControls_Get", + "x-ms-examples": { + "Gets a configured application control VM/server group": { + "$ref": "./examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json" + } + }, + "tags": [ + "applicationWhitelistings" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/GroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppWhitelistingGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "applicationWhitelistings" + ], + "x-ms-examples": { + "Update an application control VM/server group by adding a new file": { + "$ref": "./examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json" + } + }, + "description": "Update an application control VM/server group", + "operationId": "AdaptiveApplicationControls_Put", + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/GroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AppWhitelistingGroup" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AppWhitelistingGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an application control VM/server group": { + "$ref": "./examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json" + } + }, + "tags": [ + "applicationWhitelistings" + ], + "description": "Delete an application control VM/server group", + "operationId": "AdaptiveApplicationControls_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/GroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK - The response indicates that the delete operation completed successfully" + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "No Content. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AppWhitelistingGroups": { + "type": "object", + "description": "Represents a list of VM/server groups and set of rules that are Recommended by Azure Security Center to be allowed", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AppWhitelistingGroup" + } + } + } + }, + "AppWhitelistingGroup": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AppWhitelistingGroupData" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "AppWhitelistingGroupData": { + "type": "object", + "description": "Represents a VM/server group and set of rules to be allowed running on a machine", + "properties": { + "enforcementMode": { + "$ref": "#/definitions/EnforcementMode" + }, + "protectionMode": { + "$ref": "#/definitions/ProtectionMode" + }, + "configurationStatus": { + "readOnly": true, + "$ref": "#/definitions/ConfigurationStatus" + }, + "recommendationStatus": { + "readOnly": true, + "$ref": "#/definitions/RecommendationStatus" + }, + "issues": { + "readOnly": true, + "$ref": "#/definitions/AppWhitelistingIssuesSummaries" + }, + "sourceSystem": { + "readOnly": true, + "$ref": "#/definitions/SourceSystem" + }, + "vmRecommendations": { + "$ref": "#/definitions/VmRecommendations" + }, + "pathRecommendations": { + "$ref": "#/definitions/PathRecommendations" + } + } + }, + "ConfigurationStatus": { + "type": "string", + "description": "The configuration status of the VM/server group or machine or rule on the machine", + "enum": [ + "Configured", + "NotConfigured", + "InProgress", + "Failed", + "NoStatus" + ] + }, + "EnforcementMode": { + "type": "string", + "description": "The application control policy enforcement/protection mode of the VM/server group", + "enum": [ + "Audit", + "Enforce", + "None" + ] + }, + "EnforcementSupport": { + "type": "string", + "description": "The VM/server supportability of Enforce feature", + "enum": [ + "Supported", + "NotSupported", + "Unknown" + ] + }, + "ProtectionMode": { + "type": "object", + "description": "The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux.", + "properties": { + "exe": { + "$ref": "#/definitions/EnforcementMode" + }, + "msi": { + "$ref": "#/definitions/EnforcementMode" + }, + "script": { + "$ref": "#/definitions/EnforcementMode" + }, + "executable": { + "$ref": "#/definitions/EnforcementMode" + } + } + }, + "RecommendationStatus": { + "type": "string", + "description": "The recommendation status of the VM/server group or VM/server", + "enum": [ + "Recommended", + "NotRecommended", + "NotAvailable", + "NoStatus" + ] + }, + "RecommendationAction": { + "type": "string", + "description": "The recommendation action of the VM/server or rule", + "enum": [ + "Recommended", + "Add", + "Remove" + ] + }, + "RecommendationType": { + "type": "string", + "description": "The type of the rule to be allowed", + "enum": [ + "File", + "FileHash", + "PublisherSignature", + "ProductSignature", + "BinarySignature", + "VersionAndAboveSignature" + ] + }, + "AppWhitelistingIssue": { + "type": "string", + "description": "An alert that VMs/servers within a group can have", + "enum": [ + "ViolationsAudited", + "ViolationsBlocked", + "MsiAndScriptViolationsAudited", + "MsiAndScriptViolationsBlocked", + "ExecutableViolationsAudited", + "RulesViolatedManually" + ] + }, + "FileType": { + "type": "string", + "description": "The type of the file (for Linux files - Executable is used)", + "enum": [ + "Exe", + "Dll", + "Msi", + "Script", + "Executable", + "Unknown" + ] + }, + "SourceSystem": { + "type": "string", + "description": "The source type of the VM/server group", + "enum": [ + "Azure_AppLocker", + "Azure_AuditD", + "NonAzure_AppLocker", + "NonAzure_AuditD", + "None" + ] + }, + "AppWhitelistingIssueSummary": { + "type": "object", + "description": "Represents a summary of the alerts of the VM/server group", + "properties": { + "issue": { + "$ref": "#/definitions/AppWhitelistingIssue" + }, + "numberOfVms": { + "type": "number", + "description": "The number of machines in the VM/server group that have this alert" + } + } + }, + "AppWhitelistingIssuesSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/AppWhitelistingIssueSummary" + } + }, + "VmRecommendations": { + "type": "array", + "items": { + "$ref": "#/definitions/VmRecommendation" + } + }, + "VmRecommendation": { + "type": "object", + "description": "Represents a machine that is part of a VM/server group", + "properties": { + "configurationStatus": { + "$ref": "#/definitions/ConfigurationStatus" + }, + "recommendationAction": { + "$ref": "#/definitions/RecommendationAction" + }, + "resourceId": { + "$ref": "#/definitions/VmResourceId" + }, + "enforcementSupport": { + "$ref": "#/definitions/EnforcementSupport" + } + } + }, + "PublisherInfo": { + "type": "object", + "description": "Represents the publisher information of a process/rule", + "properties": { + "publisherName": { + "type": "string", + "description": "The Subject field of the x.509 certificate used to sign the code, using the following fields - O = Organization, L = Locality, S = State or Province, and C = Country", + "example": "O=GOOGLE INC, L=MOUNTAIN VIEW, S=CALIFORNIA, C=US" + }, + "productName": { + "type": "string", + "description": "The product name taken from the file's version resource", + "example": "GOOGLE CHROME" + }, + "binaryName": { + "type": "string", + "description": "The \"OriginalName\" field taken from the file's version resource", + "example": "CHROME.EXE" + }, + "version": { + "type": "string", + "description": "The binary file version taken from the file's version resource", + "example": "66.0.3359.139" + } + } + }, + "UserRecommendation": { + "type": "object", + "description": "Represents a user that is recommended to be allowed for a certain rule", + "properties": { + "username": { + "type": "string", + "description": "Represents a user that is recommended to be allowed for a certain rule", + "example": "LOCAL SYSTEM" + }, + "recommendationAction": { + "$ref": "#/definitions/RecommendationAction" + } + } + }, + "PathRecommendations": { + "type": "array", + "items": { + "$ref": "#/definitions/PathRecommendation" + } + }, + "PathRecommendation": { + "type": "object", + "description": "Represents a path that is recommended to be allowed and its properties", + "properties": { + "path": { + "type": "string", + "description": "The full path to whitelist", + "example": "C:\\Windows\\System32\\calc.exe" + }, + "action": { + "$ref": "#/definitions/RecommendationAction" + }, + "type": { + "$ref": "#/definitions/RecommendationType" + }, + "publisherInfo": { + "$ref": "#/definitions/PublisherInfo" + }, + "common": { + "type": "boolean", + "description": "Whether the path is commonly run on the machine" + }, + "userSids": { + "type": "array", + "items": { + "type": "string", + "description": "A security identifier", + "example": "S-1-5-18" + } + }, + "usernames": { + "type": "array", + "items": { + "$ref": "#/definitions/UserRecommendation" + } + }, + "fileType": { + "$ref": "#/definitions/FileType" + }, + "configurationStatus": { + "$ref": "#/definitions/ConfigurationStatus" + } + } + }, + "GroupResourceId": { + "type": "string", + "description": "The azure resource id of the application control VM/server group", + "example": "/subscriptions/12345678-1234-1234-1234-123456789123/providers/Microsoft.Security/applicationWhitelistings/GROUP1" + }, + "VmResourceId": { + "type": "string", + "description": "The full azure resource id of the machine", + "example": "/subscriptions/12345678-1234-1234-1234-123456789123/resourcegroups/group/providers/microsoft.compute/virtualmachines/vm" + }, + "AppWhitelistingResourceType": { + "type": "string", + "description": "The resource type of the application control resources", + "example": "Microsoft.Security/applicationWhitelistings" + } + }, + "parameters": { + "GroupName": { + "name": "groupName", + "in": "path", + "description": "Name of an application control VM/server group", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "IncludePathRecommendations": { + "name": "includePathRecommendations", + "in": "query", + "description": "Include the policy rules", + "type": "boolean", + "required": false, + "enum": [ + false, + true + ], + "x-ms-parameter-location": "method" + }, + "Summary": { + "name": "summary", + "in": "query", + "description": "Return output in a summarized form", + "type": "boolean", + "required": false, + "enum": [ + false, + true + ], + "x-ms-parameter-location": "method" + }, + "AppWhitelistingGroup": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AppWhitelistingGroup" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json new file mode 100644 index 000000000000..ea7a8b9984c1 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json @@ -0,0 +1,263 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/discoveredSecuritySolutions": { + "get": { + "x-ms-examples": { + "Get discovered security solutions": { + "$ref": "./examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json" + } + }, + "tags": [ + "DiscoveredSecuritySolutions" + ], + "description": "Gets a list of discovered Security Solutions for the subscription.", + "operationId": "DiscoveredSecuritySolutions_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiscoveredSecuritySolutionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions": { + "get": { + "x-ms-examples": { + "Get discovered security solutions from a security data location": { + "$ref": "./examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json" + } + }, + "tags": [ + "DiscoveredSecuritySolutions" + ], + "description": "Gets a list of discovered Security Solutions for the subscription and location.", + "operationId": "DiscoveredSecuritySolutions_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiscoveredSecuritySolutionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions/{discoveredSecuritySolutionName}": { + "get": { + "x-ms-examples": { + "Get discovered security solution from a security data location": { + "$ref": "./examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json" + } + }, + "tags": [ + "DiscoveredSecuritySolutions" + ], + "description": "Gets a specific discovered Security Solution.", + "operationId": "DiscoveredSecuritySolutions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/DiscoveredSecuritySolutionName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiscoveredSecuritySolution" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DiscoveredSecuritySolutionList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiscoveredSecuritySolution" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "DiscoveredSecuritySolution": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiscoveredSecuritySolutionProperties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "DiscoveredSecuritySolutionProperties": { + "type": "object", + "properties": { + "securityFamily": { + "type": "string", + "description": "The security family of the discovered solution", + "enum": [ + "Waf", + "Ngfw", + "SaasWaf", + "Va" + ], + "x-ms-enum": { + "name": "securityFamily", + "modelAsString": true, + "values": [ + { + "value": "Waf" + }, + { + "value": "Ngfw" + }, + { + "value": "SaasWaf" + }, + { + "value": "Va" + } + ] + } + }, + "offer": { + "type": "string", + "description": "The security solutions' image offer" + }, + "publisher": { + "type": "string", + "description": "The security solutions' image publisher" + }, + "sku": { + "type": "string", + "description": "The security solutions' image sku" + } + }, + "required": [ + "securityFamily", + "offer", + "publisher", + "sku" + ] + } + }, + "parameters": { + "DiscoveredSecuritySolutionName": { + "name": "discoveredSecuritySolutionName", + "type": "string", + "in": "path", + "required": true, + "description": "Name of a discovered security solution.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json new file mode 100644 index 000000000000..dcaf5b9bdbbe --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1", + "adaptiveNetworkHardeningResourceName": "default", + "adaptiveNetworkHardeningEnforceAction": "enforce", + "body": { + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg2" + ] + } + }, + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json new file mode 100644 index 000000000000..be1d1f990c52 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1", + "adaptiveNetworkHardeningResourceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Security/adaptiveNetworkHardenings/default", + "name": "default", + "type": "Microsoft.Security/adaptiveNetworkHardenings", + "properties": { + "rulesCalculationTime": "2018-08-15T00:00:00.0000000Z", + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "effectiveNetworkSecurityGroups": [ + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/subnetNsg" + ] + }, + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg2/providers/Microsoft.Network/networkInterfaces/nic2", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nicNsg" + ] + } + ] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json new file mode 100644 index 000000000000..76eadc462fe8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Security/adaptiveNetworkHardenings/default", + "name": "default", + "type": "Microsoft.Security/adaptiveNetworkHardenings", + "properties": { + "rulesCalculationTime": "2018-08-15T00:00:00.0000000Z", + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "effectiveNetworkSecurityGroups": [ + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/subnetNsg" + ] + }, + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic2", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg2" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json new file mode 100644 index 000000000000..4e6cc52eb451 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json new file mode 100644 index 000000000000..3ea22dfae99a --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json new file mode 100644 index 000000000000..db7cd6bc2e9b --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "resourceGroupName": "myResourceGroup", + "ascLocation": "centralus", + "connectionType": "Internal" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json new file mode 100644 index 000000000000..bd31aa457af2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "groupName": "GROUP1", + "ascLocation": "centralus" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json new file mode 100644 index 000000000000..1270432ac816 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "centralus", + "groupName": "ERELGROUP1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/centralus/applicationWhitelistings/ERELGROUP1", + "name": "ERELGROUP1", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "centralus", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "Audit", + "script": "None" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + } + ], + "pathRecommendations": [ + { + "path": "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "MICROSOFT® COREXT", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "C:\\directory\\file.exe", + "type": "File", + "common": true, + "action": "Add", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + } + ], + "configurationStatus": "Configured", + "issues": [], + "sourceSystem": "Azure_AppLocker" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json new file mode 100644 index 000000000000..e61f53c406f4 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json @@ -0,0 +1,1028 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "includePathRecommendations": true, + "summary": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/centralus/applicationWhitelistings/AMIT-VA", + "name": "AMIT-VA", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "centralus", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "Audit", + "script": "None" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-dsc/providers/microsoft.compute/virtualmachines/erelh-14011", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/amit-va/providers/microsoft.compute/virtualmachines/ream-test", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/v-arrikl-scheduledapps/providers/microsoft.compute/virtualmachines/v-arrikl-14060", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + } + ], + "pathRecommendations": [ + { + "path": "C:\\Windows\\SoftwareDistribution\\Download\\Install\\Windows-KB890830-x64-V5.53-delta.exe", + "type": "File", + "common": true, + "action": "Remove", + "usernames": [ + { + "username": "LOCAL SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-5-18" + ], + "fileType": "Exe", + "configurationStatus": "NoStatus" + }, + { + "path": "C:\\WindowsAzure\\GuestAgent_2.7.1198.822\\CollectGuestLogs.exe", + "type": "File", + "common": true, + "action": "Remove", + "usernames": [ + { + "username": "LOCAL SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-5-18" + ], + "fileType": "Exe", + "configurationStatus": "NoStatus" + }, + { + "path": "C:\\Windows\\System32\\wbem\\WmiPrvSE.exe", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-5-18", + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + } + ], + "configurationStatus": "Configured", + "issues": [], + "sourceSystem": "Azure_AppLocker" + } + }, + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/centralus/applicationWhitelistings/ERELGROUP1", + "name": "ERELGROUP1", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "centralus", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "None", + "script": "None" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", + "recommendationAction": "Recommended", + "enforcementSupport": "NotSupported" + } + ], + "pathRecommendations": [ + { + "path": "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + } + ], + "configurationStatus": "Configured", + "issues": [], + "sourceSystem": "Azure_AppLocker" + } + }, + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/centralus/applicationWhitelistings/GROUP1", + "name": "GROUP1", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "centralus", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "None", + "script": "None" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/talk-va/providers/microsoft.compute/virtualmachines/tal-win-vm", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/talk-va/providers/microsoft.compute/virtualmachines/tal-win-vm-jit", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/myresourcegroup/providers/microsoft.compute/virtualmachines/myvmweb", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/v-arrikl-scheduledapps/providers/microsoft.compute/virtualmachines/v-arrikl-14061", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + } + ], + "pathRecommendations": [ + { + "path": "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "MICROSOFT® COREXT", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%PROGRAMFILES%\\RAPID7\\INSIGHT AGENT\\COMPONENTS\\INSIGHT_AGENT\\2.6.7.9\\GET_PROXY.EXE", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=RAPID7 LLC, L=BOSTON, S=MASSACHUSETTS, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%PROGRAMFILES%\\GOOGLE\\CHROME\\APPLICATION\\CHROME.EXE", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "O=GOOGLE LLC, L=MOUNTAIN VIEW, S=CA, C=US", + "productName": "GOOGLE CHROME", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "O=GOOGLE INC, L=MOUNTAIN VIEW, S=CALIFORNIA, C=US\\GOOGLE UPDATE\\*\\0.0.0.0", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "O=GOOGLE INC, L=MOUNTAIN VIEW, S=CALIFORNIA, C=US", + "productName": "GOOGLE UPDATE", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + } + ], + "configurationStatus": "Configured", + "issues": [], + "sourceSystem": "Azure_AppLocker" + } + }, + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/westeurope/applicationWhitelistings/GROUP1", + "name": "GROUP1", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "westeurope", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "executable": "Audit" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/nic-no-pip/providers/microsoft.compute/virtualmachines/nic-no-pip-vm", + "recommendationAction": "Recommended", + "enforcementSupport": "Unknown" + } + ], + "pathRecommendations": [ + { + "path": "/sbin/init", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/sbin/upstart-udev-bridge", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/lib/systemd/systemd-udevd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/sbin/upstart-socket-bridge", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/sbin/dhclient", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/bin/python3.4", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/sbin/upstart-file-bridge", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/bin/dbus-daemon", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "messagebus", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/lib/systemd/systemd-logind", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/sbin/getty", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/atd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/cron", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/acpid", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/sshd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/lib/linux-lts-xenial-tools-4.4.0-103/hv_vss_daemon", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/lib/linux-lts-xenial-tools-4.4.0-103/hv_kvp_daemon", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/nscd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "unscd", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/ntpd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "ntp", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/microsoft/auoms/bin/auomscollect", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/omi/bin/omiserver", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/omi/bin/omiengine", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "omi", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/omi/bin/omiagent", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/sbin/rsyslogd", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "syslog", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/bin/python2.7", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + }, + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/microsoft/omsagent/ruby/bin/ruby", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/microsoft/auoms/bin/auoms", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/local/qualys/cloud-agent/bin/qualys-cloud-agent", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/bin/dash", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + }, + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/bin/sleep", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/dsc/bin/dsc_host", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/bin/sudo", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/bin/bash", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/bin/apt-get", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/lib/apt/methods/http", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/lib/apt/methods/gpgv", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/lib/apt/methods/copy", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "root", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/usr/bin/pgrep", + "type": "File", + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + }, + { + "path": "/opt/microsoft/omsconfig/bin/omsconsistencyinvoker", + "type": "File", + "common": false, + "action": "Recommended", + "usernames": [ + { + "username": "omsagent", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Executable", + "configurationStatus": "Configured" + } + ], + "configurationStatus": "Configured", + "issues": [ + { + "issue": "ExecutableViolationsAudited", + "numberOfVms": 1 + } + ], + "sourceSystem": "Azure_AuditD" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json new file mode 100644 index 000000000000..043e6895f54c --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json @@ -0,0 +1,229 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "centralus", + "groupName": "ERELGROUP1", + "body": { + "properties": { + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "None", + "script": "None" + }, + "vmRecommendations": [ + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + }, + { + "configurationStatus": "Configured", + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" + } + ], + "pathRecommendations": [ + { + "path": "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "MICROSOFT® COREXT", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "C:\\directory\\file.exe", + "action": "Add", + "type": "File", + "common": true + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/locations/centralus/applicationWhitelistings/ERELGROUP1", + "name": "ERELGROUP1", + "type": "Microsoft.Security/applicationWhitelistings", + "location": "centralus", + "properties": { + "recommendationStatus": "Recommended", + "enforcementMode": "Audit", + "protectionMode": { + "exe": "Audit", + "msi": "None", + "script": "None" + }, + "vmRecommendations": [ + { + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", + "recommendationAction": "Recommended" + }, + { + "resourceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", + "recommendationAction": "Recommended" + } + ], + "pathRecommendations": [ + { + "path": "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", + "type": "ProductSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "MICROSOFT® COREXT", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", + "type": "PublisherSignature", + "publisherInfo": { + "publisherName": "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", + "productName": "*", + "binaryName": "*", + "version": "0.0.0.0" + }, + "common": true, + "action": "Recommended", + "usernames": [ + { + "username": "NT AUTHORITY\\SYSTEM", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "Configured" + }, + { + "path": "C:\\directory\\file.exe", + "type": "File", + "common": true, + "action": "Add", + "usernames": [ + { + "username": "Everyone", + "recommendationAction": "Recommended" + } + ], + "userSids": [ + "S-1-1-0" + ], + "fileType": "Exe", + "configurationStatus": "NotConfigured" + } + ], + "configurationStatus": "InProgress", + "issues": [], + "sourceSystem": "Azure_AppLocker" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json new file mode 100644 index 000000000000..7fdd44705361 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myRg2", + "ascLocation": "centralus", + "discoveredSecuritySolutionName": "paloalto7" + }, + "responses": { + "200": { + "body": { + "properties": { + "securityFamily": "Ngfw", + "offer": "vmseries1", + "publisher": "paloaltonetworks", + "sku": "byol" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg2/providers/Microsoft.Security/locations/centralus/discoveredSecuritySolutions/paloalto7", + "name": "paloalto7", + "type": "Microsoft.Security/locations/discoveredSecuritySolutions", + "location": "eastus2" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json new file mode 100644 index 000000000000..dd0249b47d48 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "securityFamily": "Ngfw", + "offer": "cisco-asav", + "publisher": "cisco", + "sku": "asav-azure-byol" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/centralus/discoveredSecuritySolutions/CP", + "name": "CP", + "type": "Microsoft.Security/locations/discoveredSecuritySolutions", + "location": "eastus" + }, + { + "properties": { + "securityFamily": "Ngfw", + "offer": "vmseries1", + "publisher": "paloaltonetworks", + "sku": "byol" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg2/providers/Microsoft.Security/locations/centralus/discoveredSecuritySolutions/paloalto7", + "name": "paloalto7", + "type": "Microsoft.Security/locations/discoveredSecuritySolutions", + "location": "eastus2" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json new file mode 100644 index 000000000000..d629d7ab5bfd --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "securityFamily": "Ngfw", + "offer": "cisco-asav", + "publisher": "cisco", + "sku": "asav-azure-byol" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/centralus/discoveredSecuritySolutions/CP", + "name": "CP", + "type": "Microsoft.Security/locations/discoveredSecuritySolutions", + "location": "eastus" + }, + { + "properties": { + "securityFamily": "Ngfw", + "offer": "vmseries1", + "publisher": "paloaltonetworks", + "sku": "byol" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg2/providers/Microsoft.Security/locations/centralus/discoveredSecuritySolutions/paloalto7", + "name": "paloalto7", + "type": "Microsoft.Security/locations/discoveredSecuritySolutions", + "location": "eastus2" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json new file mode 100644 index 000000000000..063a365fcdf0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "defaultresourcegroup-eus", + "ascLocation": "centralus", + "externalSecuritySolutionsName": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus" + }, + "responses": { + "200": { + "body": { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-eus/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-eus/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "eastus" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json new file mode 100644 index 000000000000..26626803e57d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-eus/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-eus/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "eastus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-weu/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-weu/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westeurope" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-09T10:30:11.523Z", + "hostname": "barracuda", + "deviceVendor": "barracudanetworks", + "deviceType": "WAF", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_barracudanetworks_waf_barracuda", + "name": "cef_omsprd_barracudanetworks_waf_barracuda", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-08T15:42:22.57Z", + "hostname": "demovm20", + "deviceVendor": "virtualHoneypot", + "deviceType": "Microsoft", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_virtualhoneypot_Microsoft_demovm20", + "name": "cef_omsprd_virtualhoneypot_Microsoft_demovm20", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-08T10:38:53.423Z", + "hostname": "demovm10", + "deviceVendor": "virtualHoneypot", + "deviceType": "Microsoft", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_virtualhoneypot_Microsoft_demovm10", + "name": "cef_omsprd_virtualhoneypot_Microsoft_demovm10", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_omsprd", + "name": "aad_omsprd", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-ejp/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-ejp/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "japaneast" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json new file mode 100644 index 000000000000..90c72216fc02 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-eus/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-eus/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "eastus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-weu/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-weu/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-weu", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westeurope" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-09T10:30:11.523Z", + "hostname": "barracuda", + "deviceVendor": "barracudanetworks", + "deviceType": "WAF", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_barracudanetworks_waf_barracuda", + "name": "cef_omsprd_barracudanetworks_waf_barracuda", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-08T15:42:22.57Z", + "hostname": "demovm20", + "deviceVendor": "virtualHoneypot", + "deviceType": "Microsoft", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_virtualhoneypot_Microsoft_demovm20", + "name": "cef_omsprd_virtualhoneypot_Microsoft_demovm20", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "CEF", + "properties": { + "lastEventReceived": "2018-05-08T10:38:53.423Z", + "hostname": "demovm10", + "deviceVendor": "virtualHoneypot", + "deviceType": "Microsoft", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/cef_omsprd_virtualhoneypot_Microsoft_demovm10", + "name": "cef_omsprd_virtualhoneypot_Microsoft_demovm10", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/unificationprod/providers/Microsoft.OperationalInsights/workspaces/omsprd" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/unificationprod/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_omsprd", + "name": "aad_omsprd", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "westcentralus" + }, + { + "kind": "AAD", + "properties": { + "connectivityState": "Discovered", + "deviceVendor": "Microsoft", + "deviceType": "Azure Active Directory Identity Protection", + "workspace": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/defaultresourcegroup-ejp/providers/Microsoft.OperationalInsights/workspaces/defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp" + } + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/defaultresourcegroup-ejp/providers/Microsoft.Security/locations/centralus/externalSecuritySolutions/aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp", + "name": "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-ejp", + "type": "Microsoft.Security/locations/externalSecuritySolutions", + "location": "japaneast" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..a6d2b72050f2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default", + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + }, + "responses": { + "200": { + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..6b5a94c52cc3 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json new file mode 100644 index 000000000000..7c9ee01bb32b --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json new file mode 100644 index 000000000000..35e5db1c748d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myRg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json new file mode 100644 index 000000000000..fd30dbf338ea --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json new file mode 100644 index 000000000000..920ad1d0824d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..e81ccfd4cc46 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default" + }, + "responses": { + "200": { + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..d944942dbf0c --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default", + "jitNetworkAccessPolicyInitiateType": "initiate", + "body": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "duration": "PT1H", + "allowedSourceAddressPrefix": "192.127.0.2" + } + ] + } + ], + "justification": "testing a new version of the product" + } + }, + "responses": { + "202": { + "body": { + "virtualMachines": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-07-12T09:53:03.3658798Z", + "status": "Initiating", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-07-12T08:53:03.3658798Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json new file mode 100644 index 000000000000..1d7dcfcca62a --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + }, + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 5, + "location": "westus", + "parents": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/subnets", + "name": "subnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json new file mode 100644 index 000000000000..1df605aaf115 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + }, + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 5, + "location": "westus", + "parents": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/subnets", + "name": "subnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json new file mode 100644 index 000000000000..46228d4d64f0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "resourceGroupName": "myservers", + "ascLocation": "centralus", + "topologyResourceName": "vnets" + }, + "responses": { + "200": { + "body": { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "InternetFacing", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json new file mode 100644 index 000000000000..3b8b3b072232 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json @@ -0,0 +1,388 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/externalSecuritySolutions": { + "get": { + "x-ms-examples": { + "Get external security solutions on a subscription": { + "$ref": "./examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json" + } + }, + "description": "Gets a list of external security solutions for the subscription.", + "tags": [ + "ExternalSecuritySolutions" + ], + "operationId": "ExternalSecuritySolutions_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExternalSecuritySolutionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions": { + "get": { + "x-ms-examples": { + "Get external security solutions on a subscription from security data location": { + "$ref": "./examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json" + } + }, + "description": "Gets a list of external Security Solutions for the subscription and location.", + "tags": [ + "ExternalSecuritySolutions" + ], + "operationId": "ExternalSecuritySolutions_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExternalSecuritySolutionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions/{externalSecuritySolutionsName}": { + "get": { + "x-ms-examples": { + "Get external security solution": { + "$ref": "./examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json" + } + }, + "description": "Gets a specific external Security Solution.", + "tags": [ + "ExternalSecuritySolutions" + ], + "operationId": "ExternalSecuritySolutions_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/ExternalSecuritySolutionsName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExternalSecuritySolution" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ExternalSecuritySolutionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExternalSecuritySolution" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "ExternalSecuritySolution": { + "type": "object", + "description": "Represents a security solution external to Azure Security Center which sends information to an OMS workspace and whose data is displayed by Azure Security Center.", + "required": [ + "kind" + ], + "discriminator": "kind", + "properties": {}, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "#/definitions/ExternalSecuritySolutionKind" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "CefExternalSecuritySolution": { + "x-ms-discriminator-value": "CEF", + "type": "object", + "description": "Represents a security solution which sends CEF logs to an OMS workspace", + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolution" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CefSolutionProperties" + } + } + }, + "AtaExternalSecuritySolution": { + "x-ms-discriminator-value": "ATA", + "type": "object", + "description": "Represents an ATA security solution which sends logs to an OMS workspace", + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolution" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AtaSolutionProperties" + } + } + }, + "AadExternalSecuritySolution": { + "x-ms-discriminator-value": "AAD", + "type": "object", + "description": "Represents an AAD identity protection solution which sends logs to an OMS workspace.", + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolution" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AadSolutionProperties" + } + } + }, + "ExternalSecuritySolutionKind": { + "type": "object", + "description": "Describes an Azure resource with kind", + "properties": { + "kind": { + "type": "string", + "description": "The kind of the external solution", + "enum": [ + "CEF", + "ATA", + "AAD" + ], + "x-ms-enum": { + "name": "ExternalSecuritySolutionKind", + "modelAsString": true, + "values": [ + { + "value": "CEF" + }, + { + "value": "ATA" + }, + { + "value": "AAD" + } + ] + } + } + } + }, + "ExternalSecuritySolutionProperties": { + "type": "object", + "description": "The solution properties (correspond to the solution kind)", + "additionalProperties": true, + "properties": { + "deviceVendor": { + "type": "string" + }, + "deviceType": { + "type": "string" + }, + "workspace": { + "$ref": "#/definitions/ConnectedWorkspace" + } + } + }, + "ConnectedWorkspace": { + "type": "object", + "title": "Represents an OMS workspace to which the solution is connected", + "properties": { + "id": { + "type": "string", + "description": "Azure resource ID of the connected OMS workspace" + } + } + }, + "AadConnectivityState": { + "type": "object", + "description": "Describes an Azure resource with kind", + "properties": { + "connectivityState": { + "type": "string", + "title": "The connectivity state of the external AAD solution ", + "enum": [ + "Discovered", + "NotLicensed", + "Connected" + ], + "x-ms-enum": { + "name": "AadConnectivityState", + "modelAsString": true, + "values": [ + { + "value": "Discovered" + }, + { + "value": "NotLicensed" + }, + { + "value": "Connected" + } + ] + } + } + } + }, + "AadSolutionProperties": { + "type": "object", + "title": "The external security solution properties for AAD solutions", + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolutionProperties" + }, + { + "$ref": "#/definitions/AadConnectivityState" + } + ] + }, + "CefSolutionProperties": { + "type": "object", + "title": "The external security solution properties for CEF solutions", + "properties": { + "hostname": { + "type": "string" + }, + "agent": { + "type": "string" + }, + "lastEventReceived": { + "type": "string" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolutionProperties" + } + ] + }, + "AtaSolutionProperties": { + "type": "object", + "title": "The external security solution properties for ATA solutions", + "properties": { + "lastEventReceived": { + "type": "string" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ExternalSecuritySolutionProperties" + } + ] + } + }, + "parameters": { + "ExternalSecuritySolutionsName": { + "name": "externalSecuritySolutionsName", + "in": "path", + "description": "Name of an external security solution.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json new file mode 100644 index 000000000000..9014390efee0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json @@ -0,0 +1,770 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a subscription": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control.", + "operationId": "JitNetworkAccessPolicies_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a subscription from a security data location": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a resource group": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a resource group from a security data location": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByResourceGroupAndRegion", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}": { + "get": { + "x-ms-examples": { + "Get JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Create a policy for protecting resources using Just-in-Time access control", + "operationId": "JitNetworkAccessPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicy" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Delete a Just-in-Time access control policy.", + "operationId": "JitNetworkAccessPolicies_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK - Resource was deleted" + }, + "204": { + "description": "No Content - Resource does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}": { + "post": { + "x-ms-examples": { + "Initiate an action on a JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Initiate a JIT access from a specific Just-in-Time policy configuration.", + "operationId": "JitNetworkAccessPolicies_Initiate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyInitiateType" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyInitiateRequest" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/JitNetworkAccessRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "JitNetworkAccessPoliciesList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "JitNetworkAccessPolicy": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/JitNetworkAccessPolicyProperties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Kind" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "JitNetworkAccessPolicyProperties": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "description": "Configurations for Microsoft.Compute/virtualMachines resource type.", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyVirtualMachine" + } + }, + "requests": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequest" + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Gets the provisioning state of the Just-in-Time policy." + } + }, + "required": [ + "virtualMachines" + ] + }, + "JitNetworkAccessPolicyVirtualMachine": { + "type": "object", + "required": [ + "id", + "ports" + ], + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "Port configurations for the virtual machine", + "items": { + "$ref": "#/definitions/JitNetworkAccessPortRule" + } + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address of the Azure Firewall that is linked to this policy, if applicable" + } + } + }, + "JitNetworkAccessPortRule": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "*" + ], + "x-ms-enum": { + "name": "protocol", + "modelAsString": true, + "values": [ + { + "value": "TCP" + }, + { + "value": "UDP" + }, + { + "value": "*", + "name": "All" + } + ] + } + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + }, + "allowedSourceAddressPrefixes": { + "type": "array", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.", + "items": { + "type": "string", + "description": "IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + } + }, + "maxRequestAccessDuration": { + "type": "string", + "description": "Maximum duration requests can be made for. In ISO 8601 duration format. Minimum 5 minutes, maximum 1 day" + } + }, + "required": [ + "maxRequestAccessDuration", + "number", + "protocol" + ] + }, + "JitNetworkAccessRequest": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequestVirtualMachine" + } + }, + "startTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The start time of the request in UTC" + }, + "requestor": { + "type": "string", + "description": "The identity of the person who made the request" + }, + "justification": { + "type": "string", + "description": "The justification for making the initiate request" + } + }, + "required": [ + "requestor", + "startTimeUtc", + "virtualMachines" + ] + }, + "JitNetworkAccessRequestVirtualMachine": { + "type": "object", + "required": [ + "id", + "ports" + ], + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "The ports that were opened for the virtual machine", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequestPort" + } + } + } + }, + "JitNetworkAccessRequestPort": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + }, + "allowedSourceAddressPrefixes": { + "type": "array", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.", + "items": { + "description": "IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\".", + "type": "string" + } + }, + "endTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The date & time at which the request ends in UTC" + }, + "status": { + "type": "string", + "description": "The status of the port", + "enum": [ + "Revoked", + "Initiated" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true, + "values": [ + { + "value": "Revoked" + }, + { + "value": "Initiated" + } + ] + } + }, + "statusReason": { + "type": "string", + "description": "A description of why the `status` has its value", + "enum": [ + "Expired", + "UserRequested", + "NewerRequestInitiated" + ], + "x-ms-enum": { + "name": "statusReason", + "modelAsString": true, + "values": [ + { + "value": "Expired" + }, + { + "value": "UserRequested" + }, + { + "value": "NewerRequestInitiated" + } + ] + } + }, + "mappedPort": { + "type": "integer", + "description": "The port which is mapped to this port's `number` in the Azure Firewall, if applicable" + } + }, + "required": [ + "endTimeUtc", + "number", + "status", + "statusReason" + ] + }, + "JitNetworkAccessPolicyInitiateRequest": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "description": "A list of virtual machines & ports to open access for", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiateVirtualMachine" + } + }, + "justification": { + "type": "string", + "description": "The justification for making the initiate request" + } + }, + "required": [ + "virtualMachines" + ] + }, + "JitNetworkAccessPolicyInitiateVirtualMachine": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "The ports to open for the resource with the `id`", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiatePort" + } + } + }, + "required": [ + "id", + "ports" + ] + }, + "JitNetworkAccessPolicyInitiatePort": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Source of the allowed traffic. If omitted, the request will be for the source IP address of the initiate request." + }, + "endTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The time to close the request in UTC" + } + }, + "required": [ + "endTimeUtc", + "number" + ] + }, + "PortNumber": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + } + }, + "parameters": { + "JitNetworkAccessPolicyName": { + "name": "jitNetworkAccessPolicyName", + "type": "string", + "in": "path", + "required": true, + "description": "Name of a Just-in-Time access configuration policy.", + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicyInitiateType": { + "name": "jitNetworkAccessPolicyInitiateType", + "type": "string", + "in": "path", + "required": true, + "description": "Type of the action to do on the Just-in-Time access policy.", + "enum": [ + "initiate" + ], + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicyInitiateRequest": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiateRequest" + }, + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicy": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json new file mode 100644 index 000000000000..5a898ec20dcc --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json @@ -0,0 +1,301 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/topologies": { + "get": { + "x-ms-examples": { + "Get topology on a subscription": { + "$ref": "./examples/Topology/GetTopologySubscription_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a list that allows to build a topology view of a subscription.", + "operationId": "Topology_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies": { + "get": { + "x-ms-examples": { + "Get topology on a subscription from security data location": { + "$ref": "./examples/Topology/GetTopologySubscriptionLocation_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a list that allows to build a topology view of a subscription and location.", + "operationId": "Topology_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}": { + "get": { + "x-ms-examples": { + "Get topology": { + "$ref": "./examples/Topology/GetTopology_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a specific topology component.", + "operationId": "Topology_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/TopologyResourceName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "TopologyList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TopologyResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "TopologyResource": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "readOnly": true, + "$ref": "#/definitions/TopologyResourceProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "TopologyResourceProperties": { + "type": "object", + "properties": { + "calculatedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The UTC time on which the topology was calculated" + }, + "topologyResources": { + "type": "array", + "readOnly": true, + "description": "Azure resources which are part of this topology resource", + "items": { + "$ref": "#/definitions/TopologySingleResource" + } + } + } + }, + "TopologySingleResource": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id" + }, + "severity": { + "type": "string", + "readOnly": true, + "description": "The security severity of the resource" + }, + "recommendationsExist": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if the resource has security recommendations" + }, + "networkZones": { + "type": "string", + "readOnly": true, + "description": "Indicates the resource connectivity level to the Internet (InternetFacing, Internal ,etc.)" + }, + "topologyScore": { + "type": "integer", + "readOnly": true, + "description": "Score of the resource based on its security severity" + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of this resource" + }, + "parents": { + "type": "array", + "readOnly": true, + "description": "Azure resources connected to this resource which are in higher level in the topology view", + "items": { + "$ref": "#/definitions/TopologySingleResourceParent" + } + }, + "children": { + "type": "array", + "readOnly": true, + "description": "Azure resources connected to this resource which are in lower level in the topology view", + "items": { + "$ref": "#/definitions/TopologySingleResourceChild" + } + } + } + }, + "TopologySingleResourceParent": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id which serves as parent resource in topology view" + } + } + }, + "TopologySingleResourceChild": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id which serves as child resource in topology view" + } + } + } + }, + "parameters": { + "TopologyResourceName": { + "name": "topologyResourceName", + "in": "path", + "description": "Name of a topology resources collection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 299d49432ab6..4c9f60ada878 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -1,334 +1,335 @@ -# Security Center - -> see https://aka.ms/autorest - -This is the AutoRest configuration file for Security. - ---- - -## Getting Started - -To build the SDK for Security, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: - -> `autorest` - -To see additional help and options, run: - -> `autorest --help` - ---- - -## Configuration - -## Suppression - -``` yaml -directive: - - suppress: ValidFormats - from: securityContacts.json - where: $.definitions.SecurityContactProperties.properties.email.format - reason: email format is allowed - - suppress: ValidFormats - from: automations.json - where: $.definitions.AutomationActionLogicApp.properties.uri.format - reason: uri format is allowed - - suppress: PageableOperation - from: iotSecuritySolutionAnalytics.json - where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels"].get' - reason: The list returns limited number of items -``` - -### Basic Information - -These are the global settings for the Security API. - -``` yaml -title: SecurityCenter -description: API spec for Microsoft.Security (Azure Security Center) resource provider -openapi-type: arm -tag: package-composite-v3 -``` - -## Composite packages - -The following packages may be composed from multiple api-versions. - -### Tag: package-composite-v1 - -These settings apply only when `--tag=package-composite-v1` is specified on the command line. - -``` yaml $(tag) == 'package-composite-v1' -input-file: -- Microsoft.Security/preview/2019-01-01-preview/automations.json -- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json -- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json -- Microsoft.Security/preview/2017-08-01-preview/pricings.json -- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json -- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json -- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json -- Microsoft.Security/preview/2017-08-01-preview/compliances.json -- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json -- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json -- Microsoft.Security/preview/2017-08-01-preview/settings.json -- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json -- Microsoft.Security/preview/2015-06-01-preview/operations.json -- Microsoft.Security/preview/2015-06-01-preview/locations.json -- Microsoft.Security/preview/2015-06-01-preview/tasks.json -- Microsoft.Security/preview/2015-06-01-preview/alerts.json -- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json -- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json -- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/topologies.json -- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json -- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-composite-v2 - -These settings apply only when `--tag=package-composite-v2` is specified on the command line. - -``` yaml $(tag) == 'package-composite-v2' -input-file: -- Microsoft.Security/preview/2019-01-01-preview/automations.json -- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json -- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json -- Microsoft.Security/stable/2018-06-01/pricings.json -- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json -- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json -- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json -- Microsoft.Security/preview/2017-08-01-preview/compliances.json -- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json -- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json -- Microsoft.Security/preview/2017-08-01-preview/settings.json -- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json -- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json -- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json -- Microsoft.Security/preview/2015-06-01-preview/operations.json -- Microsoft.Security/preview/2015-06-01-preview/locations.json -- Microsoft.Security/preview/2015-06-01-preview/tasks.json -- Microsoft.Security/stable/2019-01-01/alerts.json -- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json -- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json -- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/topologies.json -- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json -- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-composite-v3 - -These settings apply only when `--tag=package-composite-v3` is specified on the command line. - -``` yaml $(tag) == 'package-composite-v3' -input-file: -- Microsoft.Security/stable/2017-08-01/complianceResults.json -- Microsoft.Security/stable/2018-06-01/pricings.json -- Microsoft.Security/stable/2019-01-01/alerts.json -- Microsoft.Security/stable/2019-01-01/settings.json -- Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json -- Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json -- Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json -- Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json -- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json -- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json -- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json -- Microsoft.Security/preview/2015-06-01-preview/locations.json -- Microsoft.Security/preview/2015-06-01-preview/operations.json -- Microsoft.Security/preview/2015-06-01-preview/tasks.json -- Microsoft.Security/preview/2015-06-01-preview/topologies.json -- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json -- Microsoft.Security/preview/2017-08-01-preview/compliances.json -- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json -- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json -- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json -- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json -- Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json -- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json -- Microsoft.Security/preview/2019-01-01-preview/automations.json -- Microsoft.Security/stable/2020-01-01/assessmentMetadata.json -- Microsoft.Security/stable/2020-01-01/assessments.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2015-06-preview-only - -These settings apply only when `--tag=package-2015-06-preview-only` is specified on the command line. - -``` yaml $(tag) == 'package-2015-06-preview-only' -input-file: -- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json -- Microsoft.Security/preview/2015-06-01-preview/alerts.json -- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json -- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json -- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json -- Microsoft.Security/preview/2015-06-01-preview/locations.json -- Microsoft.Security/preview/2015-06-01-preview/operations.json -- Microsoft.Security/preview/2015-06-01-preview/tasks.json -- Microsoft.Security/preview/2015-06-01-preview/topologies.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2017-08-preview-only - -These settings apply only when `--tag=package-2017-08-preview-only` is specified on the command line. - -``` yaml $(tag) == 'package-2017-08-preview-only' -input-file: -- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json -- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json -- Microsoft.Security/preview/2017-08-01-preview/compliances.json -- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json -- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json -- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json -- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json -- Microsoft.Security/preview/2017-08-01-preview/pricings.json -- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json -- Microsoft.Security/preview/2017-08-01-preview/settings.json -- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2019-01-preview-only - -These settings apply only when `--tag=package-2019-01-preview-only` is specified on the command line. - -``` yaml $(tag) == 'package-2019-01-preview-only' -input-file: -- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json -- Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json -- Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json -- Microsoft.Security/preview/2019-01-01-preview/assessments.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2017-08-only - -These settings apply only when `--tag=package-2017-08-only` is specified on the command line. - -``` yaml $(tag) == 'package-2017-08-only' -input-file: -- Microsoft.Security/stable/2017-08-01/complianceResults.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2018-06-only - -These settings apply only when `--tag=package-2018-06-only` is specified on the command line. - -``` yaml $(tag) == 'package-2018-06-only' -input-file: -- Microsoft.Security/stable/2018-06-01/pricings.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2019-01-only - -These settings apply only when `--tag=package-2019-01-only` is specified on the command line. - -``` yaml $(tag) == 'package-2019-01-only' -input-file: -- Microsoft.Security/stable/2019-01-01/alerts.json -- Microsoft.Security/stable/2019-01-01/settings.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - -### Tag: package-2019-08-only - -These settings apply only when `--tag=package-2019-08-only` is specified on the command line. - -``` yaml $(tag) == 'package-2019-08-only' -input-file: -- Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json -- Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - -# Needed when there is more than one input file -override-info: - title: SecurityCenter -``` - ---- - -# Code Generation - -## Swagger to SDK - -This section describes what SDK should be generated by the automatic system. -This is not used by Autorest itself. - -``` yaml $(swagger-to-sdk) -swagger-to-sdk: - - repo: azure-sdk-for-net - - repo: azure-sdk-for-go - - repo: azure-sdk-for-python - - repo: azure-sdk-for-js - - repo: azure-sdk-for-node -``` - -## C# - -See configuration in [readme.csharp.md](./readme.csharp.md) - -## Go - -See configuration in [readme.go.md](./readme.go.md) - -## Python - -See configuration in [readme.python.md](./readme.python.md) - -## Node.js - -See configuration in [readme.nodejs.md](./readme.nodejs.md) - -## TypeScript - -See configuration in [readme.typescript.md](./readme.typescript.md) - -## Ruby - -See configuration in [readme.ruby.md](./readme.ruby.md) - -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - +# Security Center + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Security. + +--- + +## Getting Started + +To build the SDK for Security, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` + +--- + +## Configuration + +## Suppression + +``` yaml +directive: + - suppress: ValidFormats + from: securityContacts.json + where: $.definitions.SecurityContactProperties.properties.email.format + reason: email format is allowed + - suppress: ValidFormats + from: automations.json + where: $.definitions.AutomationActionLogicApp.properties.uri.format + reason: uri format is allowed + - suppress: PageableOperation + from: iotSecuritySolutionAnalytics.json + where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels"].get' + reason: The list returns limited number of items +``` + +### Basic Information + +These are the global settings for the Security API. + +``` yaml +title: SecurityCenter +description: API spec for Microsoft.Security (Azure Security Center) resource provider +openapi-type: arm +tag: package-composite-v3 +``` + +## Composite packages + +The following packages may be composed from multiple api-versions. + +### Tag: package-composite-v1 + +These settings apply only when `--tag=package-composite-v1` is specified on the command line. + +``` yaml $(tag) == 'package-composite-v1' +input-file: +- Microsoft.Security/preview/2019-01-01-preview/automations.json +- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json +- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json +- Microsoft.Security/preview/2017-08-01-preview/pricings.json +- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json +- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json +- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json +- Microsoft.Security/preview/2017-08-01-preview/compliances.json +- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json +- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json +- Microsoft.Security/preview/2017-08-01-preview/settings.json +- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +- Microsoft.Security/preview/2015-06-01-preview/operations.json +- Microsoft.Security/preview/2015-06-01-preview/locations.json +- Microsoft.Security/preview/2015-06-01-preview/tasks.json +- Microsoft.Security/preview/2015-06-01-preview/alerts.json +- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json +- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json +- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/topologies.json +- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json +- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-composite-v2 + +These settings apply only when `--tag=package-composite-v2` is specified on the command line. + +``` yaml $(tag) == 'package-composite-v2' +input-file: +- Microsoft.Security/preview/2019-01-01-preview/automations.json +- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json +- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json +- Microsoft.Security/stable/2018-06-01/pricings.json +- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json +- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json +- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json +- Microsoft.Security/preview/2017-08-01-preview/compliances.json +- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json +- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json +- Microsoft.Security/preview/2017-08-01-preview/settings.json +- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json +- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json +- Microsoft.Security/preview/2015-06-01-preview/operations.json +- Microsoft.Security/preview/2015-06-01-preview/locations.json +- Microsoft.Security/preview/2015-06-01-preview/tasks.json +- Microsoft.Security/stable/2019-01-01/alerts.json +- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json +- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json +- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/topologies.json +- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json +- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-composite-v3 + +These settings apply only when `--tag=package-composite-v3` is specified on the command line. + +``` yaml $(tag) == 'package-composite-v3' +input-file: +- Microsoft.Security/stable/2017-08-01/complianceResults.json +- Microsoft.Security/stable/2018-06-01/pricings.json +- Microsoft.Security/stable/2019-01-01/alerts.json +- Microsoft.Security/stable/2019-01-01/settings.json +- Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json +- Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json +- Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json +- Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json +- Microsoft.Security/preview/2015-06-01-preview/locations.json +- Microsoft.Security/preview/2015-06-01-preview/operations.json +- Microsoft.Security/preview/2015-06-01-preview/tasks.json +- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json +- Microsoft.Security/preview/2017-08-01-preview/compliances.json +- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json +- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json +- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json +- Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json +- Microsoft.Security/preview/2019-01-01-preview/subAssessments.json +- Microsoft.Security/preview/2019-01-01-preview/automations.json +- Microsoft.Security/stable/2020-01-01/assessmentMetadata.json +- Microsoft.Security/stable/2020-01-01/assessments.json +- Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json +- Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json +- Microsoft.Security/stable/2020-01-01/allowedConnections.json +- Microsoft.Security/stable/2020-01-01/topologies.json +- Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json +- Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json +- Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2015-06-preview-only + +These settings apply only when `--tag=package-2015-06-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2015-06-preview-only' +input-file: +- Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json +- Microsoft.Security/preview/2015-06-01-preview/alerts.json +- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json +- Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json +- Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json +- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json +- Microsoft.Security/preview/2015-06-01-preview/locations.json +- Microsoft.Security/preview/2015-06-01-preview/operations.json +- Microsoft.Security/preview/2015-06-01-preview/tasks.json +- Microsoft.Security/preview/2015-06-01-preview/topologies.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2017-08-preview-only + +These settings apply only when `--tag=package-2017-08-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2017-08-preview-only' +input-file: +- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json +- Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json +- Microsoft.Security/preview/2017-08-01-preview/compliances.json +- Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json +- Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json +- Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json +- Microsoft.Security/preview/2017-08-01-preview/pricings.json +- Microsoft.Security/preview/2017-08-01-preview/securityContacts.json +- Microsoft.Security/preview/2017-08-01-preview/settings.json +- Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2019-01-preview-only + +These settings apply only when `--tag=package-2019-01-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-01-preview-only' +input-file: +- Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json +- Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json +- Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json +- Microsoft.Security/preview/2019-01-01-preview/assessments.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2017-08-only + +These settings apply only when `--tag=package-2017-08-only` is specified on the command line. + +``` yaml $(tag) == 'package-2017-08-only' +input-file: +- Microsoft.Security/stable/2017-08-01/complianceResults.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2018-06-only + +These settings apply only when `--tag=package-2018-06-only` is specified on the command line. + +``` yaml $(tag) == 'package-2018-06-only' +input-file: +- Microsoft.Security/stable/2018-06-01/pricings.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2019-01-only + +These settings apply only when `--tag=package-2019-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-01-only' +input-file: +- Microsoft.Security/stable/2019-01-01/alerts.json +- Microsoft.Security/stable/2019-01-01/settings.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +### Tag: package-2019-08-only + +These settings apply only when `--tag=package-2019-08-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08-only' +input-file: +- Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json +- Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json + +# Needed when there is more than one input file +override-info: + title: SecurityCenter +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-go + - repo: azure-sdk-for-python + - repo: azure-sdk-for-js + - repo: azure-sdk-for-node +``` + +## C# + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Node.js + +See configuration in [readme.nodejs.md](./readme.nodejs.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + ``` yaml $(tag) == 'all-api-versions' /* autogenerated */ # include the azure profile definitions from the standard location require: $(this-folder)/../../../profiles/readme.md @@ -371,15 +372,22 @@ input-file: - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessments.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/allowedConnections.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/topologies.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json + - $(this-folder)/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessments.json -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` \ No newline at end of file diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index 9aa47e081b7a..753356e4ea76 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -1427,7 +1427,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BookmarkRelationList" + "$ref": "#/definitions/RelationList" } }, "default": { @@ -1437,7 +1437,7 @@ } } }, - "x-ms-odata": "#/definitions/BookmarkRelation", + "x-ms-odata": "#/definitions/Relation", "x-ms-pageable": { "nextLinkName": "nextLink" } @@ -1533,7 +1533,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BookmarkRelation" + "$ref": "#/definitions/Relation" } }, "default": { @@ -1578,20 +1578,20 @@ "$ref": "#/parameters/RelationName" }, { - "$ref": "#/parameters/RelationInputModel" + "$ref": "#/parameters/Relation" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/BookmarkRelation" + "$ref": "#/definitions/Relation" } }, "201": { "description": "Created", "schema": { - "$ref": "#/definitions/BookmarkRelation" + "$ref": "#/definitions/Relation" } }, "default": { @@ -1905,7 +1905,7 @@ "Check Data Connector Requirements" ], "description": "Get requirements state for a data connector type.", - "operationId": "listDataConnectorRequirements", + "operationId": "DataConnectorsCheckRequirements_Post", "parameters": [ { "$ref": "#/parameters/ApiVersion" @@ -3268,17 +3268,27 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents AAD (Azure Active Directory) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/AADCheckRequirementsProperties", + "description": "AAD (Azure Active Directory) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADCheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], "description": "AAD (Azure Active Directory) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "type": "object" }, "AATPDataConnector": { "allOf": [ @@ -3313,17 +3323,27 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/AATPCheckRequirementsProperties", + "description": "AATP (Azure Advanced Threat Protection) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" + }, + "AATPCheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], "description": "AATP (Azure Advanced Threat Protection) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "type": "object" }, "ASCDataConnector": { "allOf": [ @@ -3358,23 +3378,31 @@ "type": "object" }, "ASCCheckRequirements": { - "description": "ASC (Azure Security Center) requirements check properties.", "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" } ], + "description": "Represents ASC (Azure Security Center) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/ASCCheckRequirementsProperties", + "description": "ASC (Azure Security Center) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureSecurityCenter" + }, + "ASCCheckRequirementsProperties": { + "description": "ASC (Azure Security Center) requirements check properties.", "properties": { "subscriptionId": { "description": "The subscription id to connect to, and get the data from.", "type": "string" } }, - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "type": "object" }, "AccountEntity": { "allOf": [ @@ -3912,12 +3940,9 @@ "$ref": "#/definitions/DataConnectorsCheckRequirements" } ], - "description": "Amazon Web Services CloudTrail requirements check properties.", + "description": "Amazon Web Services CloudTrail requirements check request.", "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "x-ms-discriminator-value": "AmazonWebServicesCloudTrail" }, "AzureResourceEntity": { "allOf": [ @@ -4051,73 +4076,6 @@ "bookmarkId" ] }, - "BookmarkRelationList": { - "description": "List of bookmark relations.", - "properties": { - "nextLink": { - "readOnly": true, - "description": "URL to fetch the next set of relations.", - "type": "string" - }, - "value": { - "description": "Array of relations.", - "type": "array", - "items": { - "$ref": "#/definitions/BookmarkRelation" - } - } - }, - "required": [ - "value" - ] - }, - "BookmarkRelation": { - "type": "object", - "description": "Represents a bookmark relation", - "allOf": [ - { - "$ref": "#/definitions/RelationBase" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Bookmark relation properties", - "$ref": "#/definitions/BookmarkRelationProperties" - } - } - }, - "BookmarkRelationProperties": { - "type": "object", - "description": "Bookmark relation properties", - "properties": { - "relationName": { - "type": "string", - "description": "Name of relation" - }, - "bookmarkId": { - "type": "string", - "description": "The case related bookmark id" - }, - "caseIdentifier": { - "type": "string", - "description": "The case identifier" - }, - "caseTitle": { - "type": "string", - "description": "The case title" - }, - "caseSeverity": { - "type": "string", - "description": "The case severity" - } - }, - "required": [ - "relationName", - "caseIdentifier", - "bookmarkId" - ] - }, "RelationsModelInput": { "type": "object", "description": "Relation input model", @@ -4827,12 +4785,18 @@ ] }, "DataConnectorsCheckRequirements": { - "allOf": [ - { - "$ref": "#/definitions/DataConnectorKind" + "description": "Data connector requirements properties.", + "properties": { + "kind": { + "$ref": "#/definitions/DataConnectorKind", + "description": "Describes the kind of connector to be checked." } - ], - "description": "Data connector requirements properties." + }, + "discriminator": "kind", + "type": "object", + "required": [ + "kind" + ] }, "DataConnectorAuthorizationState": { "description": "Describes the state of user's authorization for a connector kind.", @@ -6060,6 +6024,7 @@ "enum": [ "Undetermined", "TruePositive", + "BenignPositive", "FalsePositive" ], "type": "string", @@ -6075,6 +6040,10 @@ "description": "Incident was true positive", "value": "TruePositive" }, + { + "description": "Incident was benign positive", + "value": "BenignPositive" + }, { "description": "Incident was false positive", "value": "FalsePositive" @@ -6082,6 +6051,42 @@ ] } }, + "classificationComment": { + "description": "Describes the reason the incident was closed", + "type": "string" + }, + "classificationReason": { + "description": "The classification reason the incident was closed with", + "enum": [ + "SuspiciousActivity", + "SuspiciousButExpected", + "IncorrectAlertLogic", + "InaccurateData" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentClassificationReason", + "values": [ + { + "description": "Classification reason was suspicious activity", + "value": "SuspiciousActivity" + }, + { + "description": "Classification reason was suspicious but expected", + "value": "SuspiciousButExpected" + }, + { + "description": "Classification reason was incorrect alert logic", + "value": "IncorrectAlertLogic" + }, + { + "description": "Classification reason was inaccurate data", + "value": "InaccurateData" + } + ] + } + }, "createdTimeUtc": { "description": "The time the incident was created", "format": "date-time", @@ -6097,6 +6102,11 @@ "format": "date-time", "type": "string" }, + "incidentUrl": { + "description": "The deep-link url to the incident in Azure portal", + "readOnly": true, + "type": "string" + }, "incidentNumber": { "description": "A sequential number", "readOnly": true, @@ -6125,6 +6135,15 @@ "description": "Describes a user that the incident is assigned to", "type": "object" }, + "relatedAnalyticRuleIds": { + "description": "List of resource ids of Analytic rules related to the incident", + "items": { + "description": "Related Analytic rule resource id", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "severity": { "description": "The severity of the incident", "enum": [ @@ -6301,17 +6320,27 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents MCAS (Microsoft Cloud App Security) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/MCASCheckRequirementsProperties", + "description": "MCAS (Microsoft Cloud App Security) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftCloudAppSecurity" + }, + "MCASCheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], "description": "MCAS (Microsoft Cloud App Security) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "type": "object" }, "MDATPDataConnector": { "allOf": [ @@ -6346,17 +6375,27 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/MDATPCheckRequirementsProperties", + "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection" + }, + "MDATPCheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "type": "object" }, "MalwareEntity": { "allOf": [ @@ -6441,6 +6480,13 @@ }, "type": "array" }, + "displayNamesExcludeFilter": { + "description": "the alerts' displayNames on which the cases will not be generated", + "items": { + "type": "string" + }, + "type": "array" + }, "productFilter": { "description": "The alerts' productName on which the cases will be generated", "enum": [ @@ -7029,6 +7075,7 @@ }, "relatedResourceName": { "description": "The name of the related resource", + "readOnly": true, "type": "string" }, "relatedResourceType": { @@ -7820,17 +7867,28 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents threat intelligence requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/TICheckRequirementsProperties", + "description": "TI (Threat Intelligence) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligence" + }, + "TICheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], "description": "TI (Threat Intelligence) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "properties": {}, + "type": "object" }, "TiTaxiiDataConnector": { "allOf": [ @@ -7907,17 +7965,27 @@ "allOf": [ { "$ref": "#/definitions/DataConnectorsCheckRequirements" - }, + } + ], + "description": "Represents threat intelligence requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/TiTaxiiCheckRequirementsProperties", + "description": "Ti Taxii (Threat Intelligence Taxii) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligenceTaxii" + }, + "TiTaxiiCheckRequirementsProperties": { + "allOf": [ { "$ref": "#/definitions/DataConnectorTenantId" } ], - "description": "Ti Taxii (Threat Intelligence Taxii) requirements check properties.", - "type": "object", - "discriminator": "kind", - "required": [ - "kind" - ] + "description": "Threat Intelligence taxii client data connector properties.", + "type": "object" }, "ThreatIntelligence": { "description": "ThreatIntelligence property bag.", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json index b50eaeec2581..70983078afb8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json @@ -8,9 +8,6 @@ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e", "action": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", - "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", - "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { "triggerUri": "https://prod-31.northcentralus.logic.azure.com:443/workflows/cd3765391efd48549fd7681ded1d48d7/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=signature", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json index d3fc30ca7c5c..5e14cc180679 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json @@ -10,7 +10,7 @@ "kind": "Fusion", "etag": "3d00c3ca-0000-0100-0000-5d42d5010000", "properties": { - "enabled": "true", + "enabled": true, "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8" } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json index 13ff09f12a8f..af9c4dc03c91 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/CreateBookmark.json @@ -7,21 +7,14 @@ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "bookmark": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "type": "Microsoft.SecurityInsights/bookmarks", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { "displayName": "My bookmark", "createdBy": { - "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", - "email": "john@contoso.com", - "name": "john doe" + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70" }, "updatedBy": { - "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", - "email": "john@contoso.com", - "name": "john doe" + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70" }, "updated": "2019-01-01T13:15:30Z", "created": "2019-01-01T13:15:30Z", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json index 7f15971e4f2b..9c539588f1f8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json @@ -7,16 +7,9 @@ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", - "relationInputModel": { + "relation": { "properties": { - "sourceRelationNode": { - "relationNodeId": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "relationNodeKind": "Case" - }, - "targetRelationNode": { - "relationNodeId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "relationNodeKind": "Bookmark" - } + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812" } } }, @@ -26,14 +19,11 @@ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", - "kind": "CasesToBookmarks", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", - "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "caseIdentifier": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "caseTitle": "Test case", - "caseSeverity": "High" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" } } }, @@ -42,14 +32,11 @@ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", - "kind": "CasesToBookmarks", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", - "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "caseIdentifier": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "caseTitle": "Test case", - "caseSeverity": "High" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json index ebef2304130a..f9648d084a97 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json @@ -15,14 +15,11 @@ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", - "kind": "CasesToBookmarks", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "caseIdentifier": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "caseTitle": "Test case", - "caseSeverity": "High", - "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" } } ] diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json index 2037ee51571e..f03b116a69f2 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json @@ -14,14 +14,11 @@ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", "type": "Microsoft.SecurityInsights/bookmarks/relations", - "kind": "CasesToBookmarks", "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", "properties": { - "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "caseIdentifier": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "caseTitle": "Test case", - "caseSeverity": "High", - "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json index 419bc9cee31f..ee9a7c92b6c6 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/relations/CreateCaseRelation.json @@ -10,12 +10,10 @@ "relationInputModel": { "properties": { "sourceRelationNode": { - "relationNodeId": "afbd324f-6c48-459c-8710-8d1e1cd03812", - "relationNodeKind": "Case" + "relationNodeId": "afbd324f-6c48-459c-8710-8d1e1cd03812" }, "targetRelationNode": { - "relationNodeId": "2216d0e1-91e3-4902-89fd-d2df8c535096", - "relationNodeKind": "Bookmark" + "relationNodeId": "2216d0e1-91e3-4902-89fd-d2df8c535096" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json index efa14f9e4652..5a843a956be8 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -7,9 +7,6 @@ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "dataConnector": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "type": "Microsoft.SecurityInsights/dataConnectors", "kind": "Office365", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json index 526b48d3be6a..1082cb4fa706 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json @@ -18,6 +18,8 @@ }, "severity": "High", "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", "status": "Closed" } } @@ -44,9 +46,13 @@ }, "severity": "High", "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], + "relatedAnalyticRuleIds": [], "additionalData": { "alertsCount": 0, "bookmarksCount": 0, @@ -78,9 +84,13 @@ }, "severity": "High", "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], + "relatedAnalyticRuleIds": [], "additionalData": { "alertsCount": 0, "bookmarksCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json index 98ce12d79286..9166c07241d9 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json @@ -29,9 +29,15 @@ }, "severity": "High", "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "InaccurateData", "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" + ], "additionalData": { "alertsCount": 0, "bookmarksCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json index 1933c0febc34..85e34cc818ae 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json @@ -32,9 +32,16 @@ }, "severity": "High", "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", "incidentNumber": 3177, "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ], "additionalData": { "alertsCount": 0, "bookmarksCount": 0, diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/UpdateUebaSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/UpdateUebaSettings.json index 59b8b92e4892..35fef4992659 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/UpdateUebaSettings.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/settings/UpdateUebaSettings.json @@ -7,15 +7,10 @@ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "settingsName": "UEBA", "settings": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/settings/UEBA", - "name": "UEBA", - "type": "Microsoft.SecurityInsights/settings", "kind": "UebaSettings", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "isEnabled": true, - "statusInMcas": "Enabled", - "atpLicenseStatus": "Enabled" + "isEnabled": true } } }, diff --git a/specification/securityinsights/resource-manager/readme.az.md b/specification/securityinsights/resource-manager/readme.az.md new file mode 100644 index 000000000000..eddcad53399f --- /dev/null +++ b/specification/securityinsights/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: sentinel + namespace: azure.mgmt.securityinsight + package-name: azure-mgmt-securityinsight +az-output-folder: $(azure-cli-extension-folder)/src/securityinsight +python-sdk-output-folder: "$(az-output-folder)/azext_sentinel/vendored_sdks/securityinsight" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/securityinsights/resource-manager/readme.cli.md b/specification/securityinsights/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/securityinsights/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/securityinsights/resource-manager/readme.go.md b/specification/securityinsights/resource-manager/readme.go.md index 639ffd574a13..0d9fb50cbd7c 100644 --- a/specification/securityinsights/resource-manager/readme.go.md +++ b/specification/securityinsights/resource-manager/readme.go.md @@ -14,6 +14,7 @@ go: ```yaml $(go) && $(multiapi) batch: - tag: package-composite-v1 + - tag: package-2019-01-preview-only ``` ### Tag: package-composite-v1 and go @@ -22,5 +23,14 @@ These settings apply only when `--tag=package-composite-v1 --go` is specified on Please also specify `--go-sdk-folder=`. ```yaml $(tag) == 'package-composite-v1' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-08-01-preview/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/v1.0/$(namespace) +``` + +### Tag: package-2019-01-preview-only and go + +These settings apply only when `--tag=package-2019-01-preview-only --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2019-01-preview-only' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-01-01-preview/$(namespace) ``` diff --git a/specification/securityinsights/resource-manager/readme.md b/specification/securityinsights/resource-manager/readme.md index a95268a0903a..c49bc63d957a 100644 --- a/specification/securityinsights/resource-manager/readme.md +++ b/specification/securityinsights/resource-manager/readme.md @@ -70,6 +70,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-cli-extensions ``` ## C# diff --git a/specification/serialconsole/resource-manager/readme.cli.md b/specification/serialconsole/resource-manager/readme.cli.md new file mode 100644 index 000000000000..cae3abaa46cf --- /dev/null +++ b/specification/serialconsole/resource-manager/readme.cli.md @@ -0,0 +1,15 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: serialconsole + package-name: azure-mgmt-serialconsole + namespace: azure.mgmt.serialconsole + test-scenario: + - name: Get the Serial Console disabled status for a subscription + - name: List all Serial Console management operations supported by Serial Console RP + - name: Disable Serial Console for a subscription + - name: Enable Serial Console for a subscription +``` \ No newline at end of file diff --git a/specification/servicebus/resource-manager/readme.cli.md b/specification/servicebus/resource-manager/readme.cli.md index 0c9be325ccec..e1f6d11dfcc0 100644 --- a/specification/servicebus/resource-manager/readme.cli.md +++ b/specification/servicebus/resource-manager/readme.cli.md @@ -11,20 +11,20 @@ cli: cli-directive: - select: 'operation' where: - operation: '(authorization_rule(s)?$|keys$|name_availability$)' + operation: '(authorizationRule(s)?$|keys$|nameAvailability$)' hidden: true - select: 'parameter' where: - parameter: authorization_rule_name + parameter: authorizationRuleName alias: authorization_rule - select: 'parameter' where: - operation: 'authorization_rule(s)?$' - parameter: authorization_rule_name + operation: 'authorizationRule(s)?$' + parameter: authorizationRuleName name: name - select: 'property' where: - objectSchema: 'SB_authorization_rule_properties' + objectSchema: 'SBAuthorizationRule-properties' property: 'rights' set: name: 'access_right' @@ -33,12 +33,12 @@ cli: - rights - select: 'operationGroup' where: - operationGroup: 'disaster_recovery_configs' + operationGroup: 'disasterRecoveryConfigs' set: name: 'disaster_recovery_configurations' - select: 'parameter' where: - operationGroup: 'disaster_recovery_configs' + operationGroup: 'disasterRecoveryConfigs' parameter: 'alias' set: name: 'name' @@ -48,49 +48,46 @@ cli: - 'disaster_recovery_configuration' - select: 'operation' where: - operationGroup: 'disaster_recovery_configs' - operation: 'break_pairing' + operationGroup: 'disasterRecoveryConfigs' + operation: 'breakPairing' set: - name: 'disable_pairing' - - select: 'parameter' - where: - operationGroup: 'disaster_recovery_configs$|' + name: 'disablePairing' - select: 'operationGroup' where: - operationGroup: 'migration_configs' + operationGroup: 'migrationConfigs' set: name: migration - select: 'operation' where: - operationGroup: 'migration_configs' + operationGroup: 'migrationConfigs' operation: 'revert' set: name: 'stop' - select: 'parameter' where: - parameter: 'namespace_name' + parameter: 'namespaceName' set: alias: 'namespace' - select: 'parameter' where: - operationGroup: 'migration_configs' - parameter: 'namespace_name' + operationGroup: 'migrationConfigs' + parameter: 'namespaceName' set: alias: 'name' - select: 'parameter' where: - parameter: 'topic_name' + parameter: 'topicName' set: alias: 'topic' - select: 'parameter' where: - parameter: 'queue_name' + parameter: 'queueName' set: alias: 'queue' - select: 'parameter' where: - operation: '_keys$' - parameter: 'authorization_rule_name' + operation: 'Keys$' + parameter: 'authorizationRuleName' set: alias: 'name' ``` diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-1.json new file mode 100644 index 000000000000..2a7638588821 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-1.json @@ -0,0 +1,12 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, which is already configured for periodic backups. The newly created backup will be saved at the same location where the periodic backups are being saved.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": {} + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-2.json new file mode 100644 index 000000000000..9aa037a4d490 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-2.json @@ -0,0 +1,18 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific Azure blob storage account.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-3.json new file mode 100644 index 000000000000..3d9ef05b08e4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/BackupPartition-3.json @@ -0,0 +1,19 @@ +{ + "operationId": "BackupPartition", + "description": "This example shows how to trigger backup of a partition now, and save the backup to a specific file share accessible from all cluster nodes.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "BackupPartitionDescription": { + "BackupStorage": { + "StorageKind": "FileShare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "mydomain\\backupaccount", + "PrimaryPassword": "abcd1234" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateApplication-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateApplication-1.json new file mode 100644 index 000000000000..815b59ce3e50 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateApplication-1.json @@ -0,0 +1,15 @@ +{ + "operationId": "CreateApplication", + "description": "This example shows how to create a Service Fabric application without overriding any application parameter values.", + "parameters": { + "api-version": "6.0", + "ApplicationDescription": { + "Name": "fabric:/samples/CalcApp", + "TypeVersion": "1.0", + "TypeName": "CalculatorApp" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-1.json new file mode 100644 index 000000000000..a2bb056ee6d0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-1.json @@ -0,0 +1,34 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 3 months, with Azure blob store as the backup location.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P3M" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-2.json new file mode 100644 index 000000000000..f688def9e59e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateBackupPolicy-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "CreateBackupPolicy", + "description": "This example shows how to create a backup policy which takes backup every 10 minutes which shall get deleted after 20 days, with file share as the backup location.", + "parameters": { + "api-version": "6.4", + "BackupPolicyDescription": { + "Name": "FileShare10MinBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT10M" + }, + "Storage": { + "StorageKind": "FileShare", + "FriendlyName": "FileShare_myshare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "backupaccount", + "PrimaryPassword": "abcd1234" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateName-1.json new file mode 100644 index 000000000000..39588770e334 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateName-1.json @@ -0,0 +1,13 @@ +{ + "operationId": "CreateName", + "description": "This example shows how to create a new Service Fabric name. The name can be created under an existing name that represents an appliction or a service or under a completely new name.", + "parameters": { + "api-version": "6.0", + "NameDescription": { + "Name": "fabric:/samples/CalculatorApp/CalculatorService/Name-1" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-1.json new file mode 100644 index 000000000000..a969c12cd8a9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-1.json @@ -0,0 +1,21 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a basic stateless Service Fabric service.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateless", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test1", + "ServiceTypeName": "StatelessFrontendService", + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "InstanceCount": 4 + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-2.json new file mode 100644 index 000000000000..bc7ada6bb8be --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-2.json @@ -0,0 +1,23 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a basic stateful Service Fabric service.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateful", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test2", + "ServiceTypeName": "StatefulBackendService", + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "HasPersistedState": false + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-3.json new file mode 100644 index 000000000000..75eaaea023df --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-3.json @@ -0,0 +1,47 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a stateless Service Fabric service with a dns name definied and auto scaling based on cpu usage.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateless", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test1", + "ServiceTypeName": "StatelessFrontendService", + "InitializationData": [], + "PartitionDescription": { + "PartitionScheme": "Singleton" + }, + "InstanceCount": 2, + "PlacementConstraints": "Color==Blue", + "CorrelationScheme": [], + "ServiceLoadMetrics": [], + "ServicePlacementPolicies": [], + "DefaultMoveCost": "Low", + "IsDefaultMoveCostSpecified": true, + "ServicePackageActivationMode": "ExclusiveProcess", + "ServiceDnsName": "test1.test", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AveragePartitionLoad", + "MetricName": "servicefabric:/_CpuCores", + "LowerLoadThreshold": "0.300000", + "UpperLoadThreshold": "0.800000", + "ScaleIntervalInSeconds": 600 + }, + "ScalingMechanism": { + "Kind": "PartitionInstanceCount", + "MinInstanceCount": 1, + "MaxInstanceCount": 6, + "ScaleIncrement": 2 + } + } + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-4.json new file mode 100644 index 000000000000..2211ae300e4b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/CreateService-4.json @@ -0,0 +1,46 @@ +{ + "operationId": "CreateService", + "description": "This example shows how to create a stateful Service Fabric service with named partitions and scaling enabled based on memory usage.", + "parameters": { + "applicationId": "test", + "api-version": "6.0", + "ServiceDescription": { + "ServiceKind": "Stateful", + "ApplicationName": "fabric:/test", + "ServiceName": "fabric:/test/test2", + "ServiceTypeName": "StatefulBackendService", + "InitializationData": [], + "PartitionDescription": { + "PartitionScheme": "Named", + "Count": 1, + "Names": [ + "0" + ] + }, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "HasPersistedState": true, + "ServicePackageActivationMode": "ExclusiveProcess", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AverageServiceLoad", + "MetricName": "servicefabric:/_MemoryInMB", + "LowerLoadThreshold": "500", + "UpperLoadThreshold": "900", + "ScaleIntervalInSeconds": 600 + }, + "ScalingMechanism": { + "Kind": "AddRemoveIncrementalNamedPartition", + "MinPartitionCount": 1, + "MaxPartitionCount": 3, + "ScaleIncrement": 1 + } + } + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DeleteBackupPolicy.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DeleteBackupPolicy.json new file mode 100644 index 000000000000..d4796b5ede08 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DeleteBackupPolicy.json @@ -0,0 +1,11 @@ +{ + "operationId": "DeleteBackupPolicy", + "description": "This example shows how to delete an existing backup policy which is currently not associated with any backup entity.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "SampleBackupPolicy" + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableApplicationBackup.json new file mode 100644 index 000000000000..964fdaa8c3f3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableApplicationBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisableApplicationBackup", + "description": "This example shows how to disable periodic backup for a stateful application which was previously enabled.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "DisableBackupDescription": { + "CleanBackup": true + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisablePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisablePartitionBackup.json new file mode 100644 index 000000000000..1f6cc6b32ed3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisablePartitionBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisablePartitionBackup", + "description": "This example shows how to disable periodic backup for a stateful partition which was previously enabled.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "DisableBackupDescription": { + "CleanBackup": false + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableServiceBackup.json new file mode 100644 index 000000000000..14ca9acf4e25 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/DisableServiceBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "DisableServiceBackup", + "description": "This example shows how to disable periodic backup for a stateful service which was previously enabled.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "DisableBackupDescription": { + "CleanBackup": true + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableApplicationBackup.json new file mode 100644 index 000000000000..b0e24cd35f67 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableApplicationBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnableApplicationBackup", + "description": "This example shows how to enable periodic backup for a stateful application.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnablePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnablePartitionBackup.json new file mode 100644 index 000000000000..739bd06ce60e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnablePartitionBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnablePartitionBackup", + "description": "This example shows how to enable periodic backup for a stateful partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableServiceBackup.json new file mode 100644 index 000000000000..0fe38fd714bc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/EnableServiceBackup.json @@ -0,0 +1,14 @@ +{ + "operationId": "EnableServiceBackup", + "description": "This example shows how to enable periodic backup for a stateful service.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "EnableBackupDescription": { + "BackupPolicyName": "DailyAzureBackupPolicy" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-1.json new file mode 100644 index 000000000000..9f4e37d7fdf9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-1.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetAllEntitiesBackedUpByPolicy", + "description": "This example shows how to get list of backup entities that are currently associated with a backup policy. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/DemoApp", + "Items": [ + { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + }, + { + "EntityKind": "Application", + "ApplicationName": "fabric:/DemoApp" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-2.json new file mode 100644 index 000000000000..18f3467fc9ed --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetAllEntitiesBackedUpByPolicy-2.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetAllEntitiesBackedUpByPolicy", + "description": "This example shows how to get list of backup entities that are currently associated with a backup policy. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "MaxResults": 2, + "ContinuationToken": "fabric:/DemoApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "EntityKind": "Service", + "ServiceName": "fabric:/VotingApp/VotingActorService" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-1.json new file mode 100644 index 000000000000..3d396dbf082d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-1.json @@ -0,0 +1,39 @@ +{ + "operationId": "GetApplicationBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this application and entities (services and partitions) under this application. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService", + "Items": [ + { + "Kind": "Application", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ApplicationName": "fabric:/CalcApp", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + }, + { + "Kind": "Service", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-2.json new file mode 100644 index 000000000000..1ca86bee1983 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupConfigurationInfo-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetApplicationBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this application and entities (services and partitions) under this application. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-1.json new file mode 100644 index 000000000000..bc89f402c6bd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-1.json @@ -0,0 +1,108 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups within a time range.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "ServiceManifestVersion": "1.0.0", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-2.json new file mode 100644 index 000000000000..adb11bc306b8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-2.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get the latest backup for each partition within an application.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceName": "fabric:/CalcApp/CalcService", + "ServiceManifestVersion": "1.0.0", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-3.json new file mode 100644 index 000000000000..189ba7d18cbf --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-4.json new file mode 100644 index 000000000000..537af235a0e2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationBackupList-4.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetApplicationBackupList", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationEventList.json new file mode 100644 index 000000000000..32bca288ae42 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationEventList.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetApplicationEventList", + "description": "This example shows how to get all application-related events during a certain time window.", + "parameters": { + "applicationId": "app1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App1Type", + "ApplicationTypeVersion": "1.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app1", + "EventInstanceId": "8a7a0c42-67ca-4cd3-9160-edcdb822db10", + "TimeStamp": "2018-04-03T20:21:23.5774199Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoByName-1.json new file mode 100644 index 000000000000..6d9746679571 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoByName-1.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetApplicationInfo", + "description": "This example shows how to get information about an application using it's identifier. If the application is found, information about it is returned with 200 status code. If the application is not found, empty content is returned with 204 status code.", + "parameters": { + "api-version": "6.0", + "applicationId": "samples~CalculatorApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-1.json new file mode 100644 index 000000000000..2ca46b64e3a4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-1.json @@ -0,0 +1,38 @@ +{ + "operationId": "GetApplicationInfoList", + "description": "This example shows how to get information about applications on the cluster. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.1", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/samples/PQueueApp1", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-2.json new file mode 100644 index 000000000000..c0755d26e14b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationInfoList-2.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetApplicationInfoList", + "description": "This example shows how to page through the information about applications on the cluster using the ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining one result and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.1", + "MaxResults": 2, + "ContinuationToken": "fabric:/samples/PQueueApp1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "TypeVersion": "1.0", + "Status": "Ready", + "Parameters": [], + "HealthState": "Ok", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-1.json new file mode 100644 index 000000000000..bcb6a4e5e3b7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-1.json @@ -0,0 +1,85 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to get information about application types that are provisioned or being provisioned in the cluster. The number of results in a page are limited to maximum of five using MaxResult parameter.", + "parameters": { + "api-version": "6.0", + "MaxResults": 5 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueApp+2.0", + "Items": [ + { + "Name": "CalculatorApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "ServiceInstanceCount", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "CalculatorApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "ServiceInstanceCount", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "GatewayApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "GatewayPort", + "Value": "8505" + }, + { + "Key": "ServiceInstanceCount", + "Value": "1000" + } + ], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-2.json new file mode 100644 index 000000000000..a7c38cdedbe7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-2.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to page through the information about application types that are provisioned or being provisioned in the cluster using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "MaxResults": 5, + "ContinuationToken": "PersistentQueueApp+2.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "VolatileQueueApp", + "Version": "1.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "2.0", + "DefaultParameterList": [ + { + "Key": "MinReplicaSetSize", + "Value": "2" + }, + { + "Key": "TargetReplicaSetSize", + "Value": "3" + } + ], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-3.json new file mode 100644 index 000000000000..473565e56c6d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationTypeInfoList-3.json @@ -0,0 +1,60 @@ +{ + "operationId": "GetApplicationTypeInfoList", + "description": "This example shows how to exclude application parameter in the result when getting the information about application types that are provisioned or being provisioned in the cluster.", + "parameters": { + "api-version": "6.0", + "ExcludeApplicationParameters": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "CalculatorApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "CalculatorApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "GatewayApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "PersistentQueueApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "1.0", + "DefaultParameterList": [], + "Status": "Available" + }, + { + "Name": "VolatileQueueApp", + "Version": "2.0", + "DefaultParameterList": [], + "Status": "Available" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationsEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationsEventList.json new file mode 100644 index 000000000000..fa65ec159120 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetApplicationsEventList.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetApplicationsEventList", + "description": "This example shows how to get all applications-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App1Type", + "ApplicationTypeVersion": "1.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app1", + "EventInstanceId": "8a7a0c42-67ca-4cd3-9160-edcdb822db10", + "TimeStamp": "2018-04-03T20:21:23.5774199Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ApplicationCreated", + "ApplicationTypeName": "App2Type", + "ApplicationTypeVersion": "4.0.1", + "ApplicationDefinitionKind": "ServiceFabricApplicationDescription", + "ApplicationId": "app2", + "EventInstanceId": "d50574bc-6a31-4945-8275-7639bec7a0b3", + "TimeStamp": "2018-04-03T20:21:59.74842Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyByName.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyByName.json new file mode 100644 index 000000000000..411b836109b2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyByName.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetBackupPolicyByName", + "description": "This example shows how to query a backup policy by name.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-1.json new file mode 100644 index 000000000000..d4ac30f0658a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-1.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetBackupPolicyList", + "description": "This example shows how to get list of backup policies. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "FileShare10MinBackupPolicy", + "Items": [ + { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 30, + "RetentionDuration": "P29D" + } + }, + { + "Name": "FileShare10MinBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT10M" + }, + "Storage": { + "StorageKind": "FileShare", + "FriendlyName": "FileShare_myshare", + "Path": "\\\\myshare\\backupshare", + "PrimaryUserName": "backupaccount", + "PrimaryPassword": "****" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 20, + "RetentionDuration": "P20D" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-2.json new file mode 100644 index 000000000000..ad0e9a860ae4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupPolicyList-2.json @@ -0,0 +1,42 @@ +{ + "operationId": "GetBackupPolicyList", + "description": "This example shows how to get list of backup policies. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2, + "ContinuationToken": "FileShare10MinBackupPolicy" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "AutoRestoreOnDataLoss": false, + "Name": "SampleBackupPolicy", + "MaxIncrementalBackups": 5, + "Schedule": { + "ScheduleKind": "FrequencyBased", + "Interval": "PT4H5M" + }, + "Storage": { + "Path": "\\\\myshare\\BackupStore", + "PrimaryUserName": "myuser1", + "PrimaryPassword": "****", + "SecondaryUserName": "myuser2", + "SecondaryPassword": "****", + "StorageKind": "FileShare", + "FriendlyName": "" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 0, + "RetentionDuration": "P20D" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-1.json new file mode 100644 index 000000000000..6925de02aeb5 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-1.json @@ -0,0 +1,73 @@ +{ + "operationId": "GetBackupsFromBackupLocation", + "description": "This example shows how to get list of application backups from a specified backup location. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2, + "GetBackupByStorageQueryDescription": { + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupEntity": { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-2.json new file mode 100644 index 000000000000..190f318797ab --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetBackupsFromBackupLocation-2.json @@ -0,0 +1,74 @@ +{ + "operationId": "GetBackupsFromBackupLocation", + "description": "This example shows how to get list of application backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "MaxResults": 2, + "GetBackupByStorageQueryDescription": { + "Storage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupEntity": { + "EntityKind": "Application", + "ApplicationName": "fabric:/CalcApp" + } + }, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetChaosEvents.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetChaosEvents.json new file mode 100644 index 000000000000..4e5d7bb0b4e3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetChaosEvents.json @@ -0,0 +1,62 @@ +{ + "operationId": "GetChaosEvents", + "description": "This example shows how to get Chaos events in a single response message without the need for paging through ContinuationToken parameter.", + "parameters": { + "api-version": "6.2", + "StartTimeUtc": "0", + "EndTimeUtc": "3155378975999999999" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "History": [ + { + "ChaosEvent": { + "Kind": "Started", + "TimeStampUtc": "2017-04-14T04:27:19.049Z", + "ChaosParameters": { + "MaxClusterStabilizationTimeoutInSeconds": 30, + "MaxConcurrentFaults": 3, + "WaitTimeBetweenIterationsInSeconds": 10, + "WaitTimeBetweenFaultsInSeconds": 1, + "TimeToRunInSeconds": "3600", + "EnableMoveReplicaFaults": true, + "ClusterHealthPolicy": { + "ConsiderWarningAsError": true, + "MaxPercentUnhealthyNodes": 0, + "MaxPercentUnhealthyApplications": 10, + "ApplicationTypeHealthPolicyMap": [ + { + "Key": "myapp", + "Value": 3 + } + ] + }, + "Context": { + "Map": { + "k1": "v1", + "k2": "v2", + "k3": "v5" + } + } + } + } + }, + { + "ChaosEvent": { + "Kind": "ExecutingFaults", + "TimeStampUtc": "2017-04-14T04:27:20.667Z", + "Faults": [ + "ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_1, PartitionId: 6a91b09a-bd76-45da-afaa-ed0fd9bfe7d2, ReplicaId: 131366172775684622", + "ActionType: CodePackageRestart, NodeName: N0050, ApplicationName: fabric:/TestApp1, ServiceManifestName: SP1, ServiceManifestName: , CodePackageName: CP1.", + "ActionType: RestartReplica, ServiceUri: fabric:/TestApp1/PersistServ_6R_3, PartitionId: baa3a51e-5c42-435e-89d3-6e97b2164661, ReplicaId: 131366172988968762" + ] + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterEventList.json new file mode 100644 index 000000000000..3a122bb8aec0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterEventList.json @@ -0,0 +1,55 @@ +{ + "operationId": "GetClusterEventList", + "description": "This example shows how to get all cluster-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ClusterUpgradeStarted", + "CurrentClusterVersion": "0.0.0.0:", + "TargetClusterVersion": "6.2:1.0", + "UpgradeType": "Rolling", + "RollingUpgradeMode": "UnmonitoredAuto", + "FailureAction": "Manual", + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:18:59.4313064Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeDomainCompleted", + "TargetClusterVersion": "6.2:1.0", + "UpgradeState": "RollingForward", + "UpgradeDomains": "(0 1 2)", + "UpgradeDomainElapsedTimeInMs": 78.5288, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:19:59.5729953Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeDomainCompleted", + "TargetClusterVersion": "6.2:1.0", + "UpgradeState": "RollingForward", + "UpgradeDomains": "(3 4)", + "UpgradeDomainElapsedTimeInMs": 0.0, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:20:59.6271949Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ClusterUpgradeCompleted", + "TargetClusterVersion": "6.2:1.0", + "OverallUpgradeElapsedTimeInMs": 120196.5212, + "EventInstanceId": "090add3c-8f56-4d35-8d57-a855745b6064", + "TimeStamp": "2018-04-03T20:20:59.8134457Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterVersion-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterVersion-1.json new file mode 100644 index 000000000000..fd3b6fbf55b8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetClusterVersion-1.json @@ -0,0 +1,15 @@ +{ + "operationId": "GetClusterVersion", + "description": "This example retrieves the current (or lowest version during upgrade) cluster version.", + "parameters": { + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Version": "6.4.514.9494" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-1.json new file mode 100644 index 000000000000..1be29fb8e6ef --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-1.json @@ -0,0 +1,19 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get container logs for container deployed on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "HTTP Server started listening on port 8080\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-2.json new file mode 100644 index 000000000000..9f1025363561 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-2.json @@ -0,0 +1,20 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get last 10 lines of container logs for container deployed on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code", + "Tail": "10" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "UTC Time Now: 04/02/2018 22:06:31\r\nUTC Time Now: 04/02/2018 22:06:32\r\nUTC Time Now: 04/02/2018 22:06:33\r\nUTC Time Now: 04/02/2018 22:06:344\r\nUTC Time Now: 04/02/2018 22:06:35\r\nUTC Time Now: 04/02/2018 22:06:36\r\nUTC Time Now: 04/02/2018 22:06:37\r\nUTC Time Now: 04/02/2018 22:06:38\r\nUTC Time Now: 04/02/2018 22:06:39\r\nUTC Time Now: 04/02/2018 22:06:40\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-3.json new file mode 100644 index 000000000000..2ca6cad4f774 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetContainerLogsDeployedOnNode-3.json @@ -0,0 +1,20 @@ +{ + "operationId": "GetContainerLogsDeployedOnNode", + "description": "This example shows how to get container logs of previous dead container on a Service Fabric node for the given code package.", + "parameters": { + "api-version": "6.2", + "nodeName": "_Node_0", + "applicationId": "SimpleHttpServerApp", + "ServiceManifestName": "SimpleHttpServerSvcPkg", + "CodePackageName": "Code", + "Previous": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Content": "Exception encountered: System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).\r\n\tat System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()\r\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetCorrelatedEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetCorrelatedEventList.json new file mode 100644 index 000000000000..7e271b230d90 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetCorrelatedEventList.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetCorrelatedEventList", + "description": "This example shows how to get all correlated events for a given eventInstanceId.", + "parameters": { + "eventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionPrimaryMoveAnalysis", + "WhenMoveCompleted": "2018-04-03T20:06:55.966073Z", + "PreviousNode": "node3(b9d52c016a15a8f57673d3b8041e2d35)", + "CurrentNode": "node1(cf68563e16a44f808e86197a9cf83de5)", + "MoveReason": "ApplicationHostDown", + "RelevantTraces": "", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "59dde2bc-a833-412e-a56d-8f6ada0c7963", + "TimeStamp": "2018-04-03T20:07:55.966073Z", + "HasCorrelatedEvents": true, + "Metadata": { + "Delay": "00:00:20", + "Duration": "00:01:59" + } + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress-Running.json new file mode 100644 index 000000000000..90590fff4f2f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress-Running.json @@ -0,0 +1,18 @@ +{ + "operationId": "GetDataLossProgress", + "description": "This shows an example of output when a data loss operation is in a Running State. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "7216486c-1ee9-4b00-99b2-92b26fcb07f5", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress.json new file mode 100644 index 000000000000..89d341f05c26 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDataLossProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetDataLossProgress", + "description": "This shows an example of possible output when GetDataLossProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "7216486c-1ee9-4b00-99b2-92b26fcb07f5", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "InvokeDataLossResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoByName-1.json new file mode 100644 index 000000000000..8552057cbe2f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoByName-1.json @@ -0,0 +1,26 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to get information about an application deployed on a specified node by using an application identifier. If the application is found it's information is returned with 200 status code. An empty response with status code 204 is returned, if the specified application is not deployed on the node.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "applicationId": "samples~CalculatorApp", + "IncludeHealthState": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_1\\CalculatorApp_App0\\temp", + "HealthState": "Ok" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-1.json new file mode 100644 index 000000000000..c19d4e2a841c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-1.json @@ -0,0 +1,39 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to specify the number of applications returned by the query when getting information about applications deployed on a specific node. The number of results in a page are limited to maximum of 2 using the MaxResult parameter. Health state is not requested in this example, so the returned health state will be Unknown.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/samples/PQueueApp1", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp", + "HealthState": "Unknown" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp", + "HealthState": "Unknown" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-2.json new file mode 100644 index 000000000000..7f6320e69e6d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-2.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetDeployedApplicationInfoListByName", + "description": "This example demonstrates the paging functionality available when getting information about applications deployed on a specific node. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "ContinuationToken": "fabric:/samples/PQueueApp1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp", + "HealthState": "Unknown" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-3.json new file mode 100644 index 000000000000..01cad866d3c1 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetDeployedApplicationInfoList-3.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetDeployedApplicationInfoList", + "description": "This example shows how to include the health state of each deployed application when getting information about applications deployed on a specific node.", + "parameters": { + "api-version": "6.1", + "nodeName": "_Node_0", + "IncludeHealthState": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Id": "samples~CalculatorApp", + "Name": "fabric:/samples/CalculatorApp", + "TypeName": "CalculatorApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\CalculatorApp_App0\\temp", + "HealthState": "Ok" + }, + { + "Id": "samples~PQueueApp1", + "Name": "fabric:/samples/PQueueApp1", + "TypeName": "PersistentQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\PersistentQueueApp_App1\\temp", + "HealthState": "Ok" + }, + { + "Id": "samples~VQueueApp1", + "Name": "fabric:/samples/VQueueApp1", + "TypeName": "VolatileQueueApp", + "Status": "Active", + "WorkDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\work", + "LogDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\log", + "TempDirectory": "C:\\SfDevCluster\\Data\\_App\\_Node_0\\VolatileQueueApp_App2\\temp", + "HealthState": "Ok" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetFaultOperationList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetFaultOperationList.json new file mode 100644 index 000000000000..c7194dad614a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetFaultOperationList.json @@ -0,0 +1,51 @@ +{ + "operationId": "GetFaultOperationList", + "description": "This shows an example of possible output for GetFaultOperationList", + "parameters": { + "TypeFilter": "0xFF", + "StateFilter": "0xFF", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "OperationId": "00000000-0000-0000-0000-000000000010", + "State": "Completed", + "Type": "PartitionDataLoss" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000020", + "State": "Completed", + "Type": "PartitionQuorumLoss" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000030", + "State": "Completed", + "Type": "PartitionRestart" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000500", + "State": "Faulted", + "Type": "NodeTransition" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000700", + "State": "Completed", + "Type": "NodeTransition" + }, + { + "OperationId": "00000000-0000-0000-0000-000000000710", + "State": "Completed", + "Type": "NodeTransition" + }, + { + "OperationId": "88ef90f9-0b94-46b0-b817-a6ea20c07f8a", + "State": "Completed", + "Type": "PartitionRestart" + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreContent.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreContent.json new file mode 100644 index 000000000000..7e912c407a79 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreContent.json @@ -0,0 +1,91 @@ +{ + "operationId": "GetImageStoreContent", + "description": "This example shows how to get image store content under the given relative path.", + "parameters": { + "api-version": "6.2", + "contentPath": "Store\\CalcServiceApp" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "StoreFiles": [ + { + "StoreRelativePath": "Store\\CalcServiceApp\\ApplicationManifest.2.0.xml", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "23", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "897", + "ModifiedDate": "2017-09-28T17:44:22.609Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Code.2.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "25", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Config.1.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "26", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Data.2.0.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "27", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.468Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Manifest.2.0.xml", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "19", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "744", + "ModifiedDate": "2017-09-28T17:44:22.578Z" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Manifest.2.0.xml.checksum", + "FileVersion": { + "EpochDataLossNumber": "131510254310497004", + "VersionNumber": "24", + "EpochConfigurationNumber": "25769803776" + }, + "FileSize": "66", + "ModifiedDate": "2017-09-28T17:44:22.484Z" + } + ], + "StoreFolders": [ + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Code.2.0", + "FileCount": "2" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Config.1.0", + "FileCount": "2" + }, + { + "StoreRelativePath": "Store\\CalcServiceApp\\CalcService.Data.2.0", + "FileCount": "2" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreInfo.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreInfo.json new file mode 100644 index 000000000000..e4360622b5fd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetImageStoreInfo.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetImageStoreInfo", + "description": "This example shows how to get ImageStore information.", + "parameters": { + "api-version": "6.5" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "DiskInfo": { + "Capacity": "500090007552", + "AvailableSpace": "228851900416" + }, + "UsedByMetadata": { + "UsedSpace": "23093248", + "FileCount": 6 + }, + "UsedByStaging": { + "UsedSpace": "6291456", + "FileCount": 9 + }, + "UsedByCopy": { + "UsedSpace": "4194304", + "FileCount": 2 + }, + "UsedByRegister": { + "UsedSpace": "4194304", + "FileCount": 3 + } + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeEventList.json new file mode 100644 index 000000000000..4368ae718d58 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeEventList.json @@ -0,0 +1,32 @@ +{ + "operationId": "GetNodeEventList", + "description": "This example shows how to get all node-related events during a certain time window.", + "parameters": { + "nodeName": "node1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596159209215, + "NodeId": "ba001a8bb353543e646be031afb10f1e", + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "IpAddressOrFQDN": "100.78.240.56", + "Hostname": "RD0003FF5089AA", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node1", + "EventInstanceId": "ecbce04a-a42b-4b70-a800-dfc6bc4f9b89", + "TimeStamp": "2018-04-03T20:06:55.966073Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfo-1.json new file mode 100644 index 000000000000..24b8cfac97f7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfo-1.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetNodeInfo", + "description": "This example shows how to get information about an node using it's identifier. If the node is found, information about it is returned with 200 status code. If the node is not found, empty content is returned with 204 status code.", + "parameters": { + "api-version": "6.0", + "nodeName": "_Node_1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "_testnode_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "18688", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-1.json new file mode 100644 index 000000000000..c494bff622c5 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-1.json @@ -0,0 +1,72 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about the nodes in the cluster when the number of results returned is limited by the MaxResults parameter.", + "parameters": { + "api-version": "6.3", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "2acb9f55540659b1c95f27cc128ab326", + "Items": [ + { + "Name": "_testnode_1", + "IpAddressOrFQDN": "10.0.0.5", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "102016", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "1", + "FaultDomain": "fd:/1", + "Id": { + "Id": "ebd986a1134b3643a8117fb41b259bf" + }, + "InstanceId": "131738274982501335", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:31:39.842Z", + "NodeDownAt": "2018-06-18T20:31:37.374Z" + }, + { + "Name": "_testnode_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "105483", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-2.json new file mode 100644 index 000000000000..79bbd1bf1af7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList-2.json @@ -0,0 +1,99 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about nodes in the cluster which appear on a sequential page, by using the ContinuationToken parameter.", + "parameters": { + "api-version": "6.3", + "ContinuationToken": "2acb9f55540659b1c95f27cc128ab326" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "_Node_4", + "IpAddressOrFQDN": "10.0.0.8", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "101547", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "4", + "FaultDomain": "fd:/4", + "Id": { + "Id": "ba9383d728221add7fa996bf67b757fb" + }, + "InstanceId": "131737415865259763", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-17T20:40:07.378Z", + "NodeDownAt": "2018-06-17T20:33:11.877Z" + }, + { + "Name": "_Node_3", + "IpAddressOrFQDN": "10.0.0.7", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15615", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "Id": { + "Id": "d6a18a0935a3e39aeae2a049eb97255d" + }, + "InstanceId": "131738275300526952", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:32:18.884Z", + "NodeDownAt": "2018-06-18T20:31:59.128Z" + }, + { + "Name": "_Node_2", + "IpAddressOrFQDN": "10.0.0.6", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "19819", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "2", + "FaultDomain": "fd:/2", + "Id": { + "Id": "f2af91e5e9c8254dedb75b1424a9e3fc" + }, + "InstanceId": "131738233282843485", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:22:15.272Z", + "NodeDownAt": "2018-06-18T19:22:02.740Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList.json new file mode 100644 index 000000000000..d38a618440a9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeInfoList.json @@ -0,0 +1,152 @@ +{ + "operationId": "GetNodeInfoList", + "description": "This example shows how to get information about all the nodes in the cluster when the information fits in a single response message without the need for paging through ContinuationToken parameter.", + "parameters": { + "api-version": "6.3" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Name": "_Node_1", + "IpAddressOrFQDN": "10.0.0.5", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15275", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "1", + "FaultDomain": "fd:/1", + "Id": { + "Id": "ebd986a1134b3643a8117fb41b259bf" + }, + "InstanceId": "131738274982501335", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:31:39.842Z", + "NodeDownAt": "2018-06-18T20:31:37.374Z" + }, + { + "Name": "_Node_0", + "IpAddressOrFQDN": "10.0.0.4", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "18742", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "Id": { + "Id": "2acb9f55540659b1c95f27cc128ab326" + }, + "InstanceId": "131738240209152398", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:33:52.944Z", + "NodeDownAt": "2018-06-18T19:33:39.514Z" + }, + { + "Name": "_Node_4", + "IpAddressOrFQDN": "10.0.0.8", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "101168", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "4", + "FaultDomain": "fd:/4", + "Id": { + "Id": "ba9383d728221add7fa996bf67b757fb" + }, + "InstanceId": "131737415865259763", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-17T20:40:07.378Z", + "NodeDownAt": "2018-06-17T20:33:11.877Z" + }, + { + "Name": "_Node_3", + "IpAddressOrFQDN": "10.0.0.7", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "15236", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "Id": { + "Id": "d6a18a0935a3e39aeae2a049eb97255d" + }, + "InstanceId": "131738275300526952", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T20:32:18.884Z", + "NodeDownAt": "2018-06-18T20:31:59.128Z" + }, + { + "Name": "_Node_2", + "IpAddressOrFQDN": "10.0.0.6", + "Type": "testnode", + "CodeVersion": "6.3.139.9494", + "ConfigVersion": "5", + "NodeStatus": "Up", + "NodeUpTimeInSeconds": "19440", + "HealthState": "Ok", + "IsSeedNode": true, + "UpgradeDomain": "2", + "FaultDomain": "fd:/2", + "Id": { + "Id": "f2af91e5e9c8254dedb75b1424a9e3fc" + }, + "InstanceId": "131738233282843485", + "NodeDeactivationInfo": { + "NodeDeactivationIntent": "Invalid", + "NodeDeactivationStatus": "None", + "NodeDeactivationTask": [], + "PendingSafetyChecks": [] + }, + "IsStopped": false, + "NodeDownTimeInSeconds": "0", + "NodeUpAt": "2018-06-18T19:22:15.272Z", + "NodeDownAt": "2018-06-18T19:22:02.740Z" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress-Running.json new file mode 100644 index 000000000000..62ad5c37ec58 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress-Running.json @@ -0,0 +1,17 @@ +{ + "operationId": "GetNodeTransitionProgress", + "description": "This shows an example of output when GetTransitionProgress has a State of Running.", + "parameters": { + "nodeName": "N0060", + "OperationId": "ed903556-acf1-489c-9f33-b484c31f9087", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress.json new file mode 100644 index 000000000000..474ab826b8df --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodeTransitionProgress.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetNodeTransitionProgress", + "description": "This shows an example of possible output when GetTransitionProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "nodeName": "N0060", + "OperationId": "a9c24269-88e9-4812-b4ad-a0bf2b724ad4", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "NodeTransitionResult": { + "ErrorCode": 0, + "NodeResult": { + "NodeName": "N0060", + "NodeInstanceId": "131366982707950527" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodesEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodesEventList.json new file mode 100644 index 000000000000..7aed70b97f31 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetNodesEventList.json @@ -0,0 +1,46 @@ +{ + "operationId": "GetNodesEventList", + "description": "This example shows how to get all nodes-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596159209215, + "NodeId": "ba001a8bb353543e646be031afb10f1e", + "UpgradeDomain": "0", + "FaultDomain": "fd:/0", + "IpAddressOrFQDN": "100.78.240.56", + "Hostname": "RD0003FF5089AA", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node1", + "EventInstanceId": "ecbce04a-a42b-4b70-a800-dfc6bc4f9b89", + "TimeStamp": "2018-04-03T20:06:55.966073Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "NodeOpenSucceeded", + "NodeInstance": 131672596186027906, + "NodeId": "ba03ef91259835c54d674889849a7cee", + "UpgradeDomain": "3", + "FaultDomain": "fd:/3", + "IpAddressOrFQDN": "100.72.76.122", + "Hostname": "RD0003FF6047A8", + "IsSeedNode": false, + "NodeVersion": "6.2:1.0", + "NodeName": "node2", + "EventInstanceId": "67730c48-752c-4209-bf28-3c121555a4c0", + "TimeStamp": "2018-04-03T20:06:58.6357365Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupConfigurationInfo.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupConfigurationInfo.json new file mode 100644 index 000000000000..dd97740de85f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupConfigurationInfo.json @@ -0,0 +1,24 @@ +{ + "operationId": "GetPartitionBackupConfigurationInfo", + "description": "This example shows how to get backup configuration for a partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Service", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-1.json new file mode 100644 index 000000000000..2c5fb63a2bc3 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-1.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups within a time range.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-2.json new file mode 100644 index 000000000000..cc627b382457 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-2.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get the latest backup for the specified partition.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "be06a49c-be67-4eb1-a602-b983605be862", + "BackupChainId": "be06a49c-be67-4eb1-a602-b983605be862", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-02 08.59.53.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "639", + "CreationTimeUtc": "2018-01-02T08:59:53Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-3.json new file mode 100644 index 000000000000..2cddad80321f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-4.json new file mode 100644 index 000000000000..c73aaece09c8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupList-4.json @@ -0,0 +1,42 @@ +{ + "operationId": "GetPartitionBackupList", + "description": "This example shows how to get list of partition backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "be06a49c-be67-4eb1-a602-b983605be862", + "BackupChainId": "be06a49c-be67-4eb1-a602-b983605be862", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-02 08.59.53.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "639", + "CreationTimeUtc": "2018-01-02T08:59:53Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupProgress.json new file mode 100644 index 000000000000..9d0df23312a6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionBackupProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetPartitionBackupProgress", + "description": "This shows an example of possible output when GetPartitionBackupProgress has reached a BackupState of Success. If the BackupState has a value of BackupInProgress, only the BackupState field will have a value.", + "parameters": { + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "BackupState": "Success", + "TimeStampUtc": "2018-01-01T09:00:55Z", + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "FailureError": null + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionEventList.json new file mode 100644 index 000000000000..bbfca06712e9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionEventList.json @@ -0,0 +1,37 @@ +{ + "operationId": "GetPartitionEventList", + "description": "This example shows how to get all partition-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionReconfigured", + "NodeName": "node1", + "NodeInstanceId": "ba001a8bb353543e646be031afb10f1e", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934595, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 203.1935, + "Phase3DurationMs": 0.0262, + "Phase4DurationMs": 628.8527, + "TotalDurationMs": 832.0724, + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "TimeStamp": "2018-04-03T20:21:47.3778996Z", + "HasCorrelatedEvents": true + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestartProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestartProgress.json new file mode 100644 index 000000000000..074289b470a2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestartProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetPartitionRestartProgress", + "description": "This shows an example of possible output when GetPartitionRestartProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "6eb7f0d3-49ca-4cb1-81b7-ac2d56b5c5d1", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "RestartPartitionResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestoreProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestoreProgress.json new file mode 100644 index 000000000000..da52d1a100b9 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionRestoreProgress.json @@ -0,0 +1,23 @@ +{ + "operationId": "GetPartitionRestoreProgress", + "description": "This shows an example of possible output when GetPartitionRestoreProgress has reached a RestoreState of Success. If the RestoreState has a value of RestoreInProgress, only the RestoreState field will have a value.", + "parameters": { + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "api-version": "6.4" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "RestoreState": "Success", + "TimeStampUtc": "2018-01-01T09:00:55Z", + "RestoredEpoch": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "RestoredLsn": "261", + "FailureError": null + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionsEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionsEventList.json new file mode 100644 index 000000000000..e49c5e402b00 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPartitionsEventList.json @@ -0,0 +1,56 @@ +{ + "operationId": "GetPartitionsEventList", + "description": "This example shows how to get all partitions-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "PartitionReconfigured", + "NodeName": "node1", + "NodeInstanceId": "ba001a8bb353543e646be031afb10f1e", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934595, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 203.1935, + "Phase3DurationMs": 0.0262, + "Phase4DurationMs": 628.8527, + "TotalDurationMs": 832.0724, + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "EventInstanceId": "e00fa5b7-f747-40dd-9e09-f5a031e96de4", + "TimeStamp": "2018-04-03T20:21:47.3778996Z", + "HasCorrelatedEvents": true + }, + { + "Kind": "PartitionReconfigured", + "NodeName": "node2", + "NodeInstanceId": "ba0459d257b028296deba8bd5add33cb", + "ServiceType": "Svc1Type", + "CcEpochDataLossVersion": 131672604833413107, + "CcEpochConfigVersion": 8589934596, + "ReconfigType": "Other", + "Result": "Completed", + "Phase0DurationMs": 0.0, + "Phase1DurationMs": 0.0, + "Phase2DurationMs": 205.667, + "Phase3DurationMs": 407.7781, + "Phase4DurationMs": 630.0935, + "TotalDurationMs": 1243.5386, + "PartitionId": "e12acfb3-2a43-4a1a-a252-aa5388ef1aec", + "EventInstanceId": "9aeb234a-16ef-4e8a-974e-26c60d6f2b86", + "TimeStamp": "2018-04-03T20:21:49.5155104Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfo-1.json new file mode 100644 index 000000000000..ca5def4be2fb --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfo-1.json @@ -0,0 +1,29 @@ +{ + "operationId": "GetPropertyInfo", + "description": "This example shows how to get a Service Fabric property under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "PropertyName": "AppData" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Name": "CalculatorAppData", + "Value": { + "Kind": "String", + "Data": "1+2=3" + }, + "Metadata": { + "TypeId": "String", + "CustomTypeId": "EquationType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 12, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "12" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-1.json new file mode 100644 index 000000000000..5729c6a4e4a2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-1.json @@ -0,0 +1,41 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to get all Service Fabric properties under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueAppData$131439231986491349", + "IsConsistent": true, + "Properties": [ + { + "Name": "CalculatorAppData", + "Metadata": { + "TypeId": "Int64", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "10" + } + }, + { + "Name": "PersistentQueueAppData", + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationDataType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:36:19.049Z", + "SequenceNumber": "12" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-2.json new file mode 100644 index 000000000000..6a172f23f09a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-2.json @@ -0,0 +1,56 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to get all Service Fabric properties and their values under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "IncludeValues": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "PersistentQueueAppData$131439231986491349", + "IsConsistent": true, + "Properties": [ + { + "Name": "CalculatorAppData", + "Value": { + "Kind": "Int64", + "Data": "4534" + }, + "Metadata": { + "TypeId": "Int64", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 8, + "LastModifiedUtcTimestamp": "2017-07-17T04:27:19.049Z", + "SequenceNumber": "10" + } + }, + { + "Name": "PersistentQueueAppData", + "Value": { + "Kind": "Binary", + "Data": [ + 6, + 7, + 8, + 9, + 10 + ] + }, + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationDataType", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T04:36:19.049Z", + "SequenceNumber": "12" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-3.json new file mode 100644 index 000000000000..ce12465b6ce6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetPropertyInfoList-3.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetPropertyInfoList", + "description": "This example shows how to page through the information about properties under a given Service Fabric name using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "IncludeValues": true, + "ContinuationToken": "PersistentQueueAppData$131439231986491349" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "Properties": [ + { + "Name": "VolatileQueueAppData", + "Value": { + "Kind": "Double", + "Data": 67.89 + }, + "Metadata": { + "TypeId": "Double", + "CustomTypeId": "", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 8, + "LastModifiedUtcTimestamp": "2017-07-17T04:01:19.049Z", + "SequenceNumber": "8" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress-Running.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress-Running.json new file mode 100644 index 000000000000..203fb157db03 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress-Running.json @@ -0,0 +1,18 @@ +{ + "operationId": "GetQuorumLossProgress", + "description": "This shows an example of possible output when GetQuorumLossProgress has a State of Running. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "81fbaee7-4f49-44bb-a350-4cb2b51dbf26", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Running" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress.json new file mode 100644 index 000000000000..c86fd0d2b31d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetQuorumLossProgress.json @@ -0,0 +1,25 @@ +{ + "operationId": "GetQuorumLossProgress", + "description": "This shows an example of possible output when GetQuorumLossProgress has reached a State of Completed. If the State has a value of Running, only the State field will have a value.", + "parameters": { + "serviceId": "fabric:/myapp/myservice", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "OperationId": "81fbaee7-4f49-44bb-a350-4cb2b51dbf26", + "api-version": "6.0" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "State": "Completed", + "InvokeQuorumLossResult": { + "ErrorCode": 0, + "SelectedPartition": { + "ServiceName": "fabric:/myapp/myservice", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicaEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicaEventList.json new file mode 100644 index 000000000000..a3b517117bac --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicaEventList.json @@ -0,0 +1,35 @@ +{ + "operationId": "GetPartitionReplicaEventList", + "description": "This example shows how to get all replica-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "replicaId": 131672608994209130, + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 131672608994209130, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677787, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:43:38Z", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "ReplicaId": 131672608994209130, + "EventInstanceId": "b2684da3-df81-4add-8baa-201f73e9195d", + "TimeStamp": "2018-04-03T21:43:38.8904013Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicasEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicasEventList.json new file mode 100644 index 000000000000..1d2e9212dfcc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetReplicasEventList.json @@ -0,0 +1,51 @@ +{ + "operationId": "GetPartitionReplicasEventList", + "description": "This example shows how to get all replicas-related events during a certain time window.", + "parameters": { + "partitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 131672608994209130, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677787, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:43:38Z", + "PartitionId": "f2a6a893-39be-4c7d-b07f-72bc2d36de89", + "ReplicaId": 131672608994209130, + "EventInstanceId": "b2684da3-df81-4add-8baa-201f73e9195d", + "TimeStamp": "2018-04-03T21:43:38.8904013Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "StatefulReplicaNewHealthReport", + "ReplicaInstanceId": 177872608994339550, + "SourceId": "TestSource", + "Property": "", + "HealthState": "Error", + "TimeToLiveMs": 922337203685477, + "SequenceNumber": 131672654189677788, + "Description": "", + "RemoveWhenExpired": false, + "SourceUtcTimestamp": "2018-04-03T21:44:38Z", + "PartitionId": "f549f3b3-08c2-4ec4-adb4-415e024cb0ef", + "ReplicaId": 177872608994339550, + "EventInstanceId": "4a8851d8-35a3-4618-b4ac-03ffa191c350", + "TimeStamp": "2018-04-03T21:44:38.8904013Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-1.json new file mode 100644 index 000000000000..ab37c65b803f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-1.json @@ -0,0 +1,40 @@ +{ + "operationId": "GetServiceBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this service and partitions under this service. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "Items": [ + { + "Kind": "Service", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ServiceName": "fabric:/CalcApp/CalcService", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + }, + { + "Kind": "Partition", + "PolicyName": "BackupPolicy2", + "PolicyInheritedFrom": "Partition", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "SuspensionInfo": { + "IsSuspended": false, + "SuspensionInheritedFrom": "Invalid" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-2.json new file mode 100644 index 000000000000..76e7e948550d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupConfigurationInfo-2.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetServiceBackupConfigurationInfo", + "description": "This example shows how to get list of backup configuration for this service and partitions under this service. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "Kind": "Partition", + "PolicyName": "BackupPolicy1", + "PolicyInheritedFrom": "Application", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionId": "7216486c-1ee9-4b00-99b2-92b26fcb07f6", + "SuspensionInfo": { + "IsSuspended": true, + "SuspensionInheritedFrom": "Partition" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-1.json new file mode 100644 index 000000000000..b561b1b20f84 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-1.json @@ -0,0 +1,108 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups within a time range.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "StartDateTimeFilter": "2018-01-01T00:00:00Z", + "EndDateTimeFilter": "2018-01-01T23:59:59Z" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-2.json new file mode 100644 index 000000000000..df570db76649 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-2.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get the latest backup for each partition within a service.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "Latest": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-3.json new file mode 100644 index 000000000000..5b162231a889 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-3.json @@ -0,0 +1,63 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups. The number of results in a page are limited to maximum of two using the MaxResult parameter.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "Items": [ + { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "261", + "CreationTimeUtc": "2018-01-01T09:00:55Z", + "FailureError": null + }, + { + "BackupId": "7903dc2a-228d-44b0-b7c8-a13a6c9b46bd", + "BackupChainId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 17.01.02.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "446", + "CreationTimeUtc": "2018-01-01T17:01:02Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-4.json new file mode 100644 index 000000000000..7420d61aca49 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceBackupList-4.json @@ -0,0 +1,64 @@ +{ + "operationId": "GetServiceBackupList", + "description": "This example shows how to get list of service backups. The number of results in a page are limited to maximum of two using the MaxResult parameter. This example uses the ContinuationToken parameter. The value of this parameter is provided from the previous query; in this case the example shown above. The response contains the remaining results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService", + "MaxResults": 2, + "ContinuationToken": "fabric:/CalcApp/CalcService#1daae3f5-7fd6-42e9-b1ba-8c05f873994d#7903dc2a-228d-44b0-b7c8-a13a6c9b46bd" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "BackupId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 09.01.02.zip", + "BackupType": "Full", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "161", + "CreationTimeUtc": "2018-01-01T09:01:02Z", + "FailureError": null + }, + { + "BackupId": "d55a2d98-258b-4a34-8fe5-2063e81af9dc", + "BackupChainId": "0ff4fdbe-131c-4dfb-8249-7b4029ddc014", + "ApplicationName": "fabric:/CalcApp", + "ServiceManifestVersion": "1.0.0", + "ServiceName": "fabric:/CalcApp/CalcService", + "PartitionInformation": { + "LowKey": "-9223372036854775808", + "HighKey": "9223372036854775807", + "ServicePartitionKind": "Int64Range", + "Id": "81645ec7-d260-4c59-9533-8f129bde8e83" + }, + "BackupLocation": "CalcApp\\CalcService\\81645ec7-d260-4c59-9533-8f129bde8e83\\2018-01-01 17.00.34.zip", + "BackupType": "Incremental", + "EpochOfLastBackupRecord": { + "DataLossVersion": "131462452931584510", + "ConfigurationVersion": "8589934592" + }, + "LsnOfLastBackupRecord": "246", + "CreationTimeUtc": "2018-01-01T17:00:34Z", + "FailureError": null + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceEventList.json new file mode 100644 index 000000000000..fdaa115873cd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceEventList.json @@ -0,0 +1,34 @@ +{ + "operationId": "GetServiceEventList", + "description": "This example shows how to get all service-related events during a certain time window.", + "parameters": { + "serviceId": "app1~svc1", + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc1Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "bd936249-183d-4e29-94ab-2e198e4e2e87", + "ServiceId": "app1/svc1", + "EventInstanceId": "8ba26506-4a93-4b8c-ae14-29a2841b3003", + "TimeStamp": "2018-04-03T20:22:38.0560496Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoByName-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoByName-1.json new file mode 100644 index 000000000000..4340954856fe --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoByName-1.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetServiceTypeInfoByName", + "description": "This example shows how to get information about a specific service type. A 204 response is returned if the specified service type is not found in the cluster.", + "parameters": { + "api-version": "6.0", + "applicationTypeName": "Application2Type", + "ApplicationTypeVersion": "1.0.0", + "serviceTypeName": "Actor1ActorServiceType" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ServiceTypeDescription": { + "IsStateful": true, + "ServiceTypeName": "Actor1ActorServiceType", + "PlacementConstraints": "", + "HasPersistedState": true, + "Kind": "Stateful", + "Extensions": [ + { + "Key": "__GeneratedServiceType__", + "Value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n " + } + ], + "LoadMetrics": [], + "ServicePlacementPolicies": [] + }, + "ServiceManifestVersion": "1.0.0", + "ServiceManifestName": "Actor1Pkg", + "IsServiceGroup": false + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoList-1.json new file mode 100644 index 000000000000..a4481bfa08c0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServiceTypeInfoList-1.json @@ -0,0 +1,36 @@ +{ + "operationId": "GetServiceTypeInfoList", + "description": "This example shows how to get information about service types that are supported by a provisioned application type in a Service Fabric cluster.", + "parameters": { + "api-version": "6.0", + "applicationTypeName": "Application2Type", + "ApplicationTypeVersion": "1.0.0" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "ServiceTypeDescription": { + "IsStateful": true, + "ServiceTypeName": "Actor1ActorServiceType", + "PlacementConstraints": "", + "HasPersistedState": true, + "Kind": "Stateful", + "Extensions": [ + { + "Key": "__GeneratedServiceType__", + "Value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n " + } + ], + "LoadMetrics": [], + "ServicePlacementPolicies": [] + }, + "ServiceManifestVersion": "1.0.0", + "ServiceManifestName": "Actor1Pkg", + "IsServiceGroup": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServicesEventList.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServicesEventList.json new file mode 100644 index 000000000000..2d5863180a5a --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetServicesEventList.json @@ -0,0 +1,50 @@ +{ + "operationId": "GetServicesEventList", + "description": "This example shows how to get all services-related events during a certain time window.", + "parameters": { + "api-version": "6.4", + "StartTimeUtc": "2018-04-03T18:00:00Z", + "EndTimeUtc": "2018-04-04T18:00:00Z" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc1Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "bd936249-183d-4e29-94ab-2e198e4e2e87", + "ServiceId": "app1/svc1", + "EventInstanceId": "8ba26506-4a93-4b8c-ae14-29a2841b3003", + "TimeStamp": "2018-04-03T20:22:38.0560496Z", + "HasCorrelatedEvents": false + }, + { + "Kind": "ServiceCreated", + "ServiceTypeName": "Svc2Type", + "ApplicationName": "fabric:/app1", + "ApplicationTypeName": "App1Type", + "ServiceInstance": 131672605579916062, + "IsStateful": true, + "PartitionCount": 2, + "TargetReplicaSetSize": 3, + "MinReplicaSetSize": 2, + "ServicePackageVersion": "1.0:1.0", + "PartitionId": "87413d64-0134-4b23-a439-c2692c4e3ec3", + "ServiceId": "app1/svc2", + "EventInstanceId": "03246d3b-77f5-4ca2-b065-7b8671711318", + "TimeStamp": "2018-04-03T20:22:38.056197Z", + "HasCorrelatedEvents": false + } + ] + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-1.json new file mode 100644 index 000000000000..282319140d86 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-1.json @@ -0,0 +1,21 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to get information about all sub names of a given Service Fabric name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/CalculatorApp", + "fabric:/samples/mynames" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-2.json new file mode 100644 index 000000000000..15391854f370 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-2.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to recursively get information about all child sub names of a given Service Fabric name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples", + "Recursive": true + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/apps", + "fabric:/samples/data", + "fabric:/samples/CalculatorApp", + "fabric:/samples/CalculatorApp/CalculatorService", + "fabric:/samples/CalculatorApp/CalculatorService/Name-1", + "fabric:/samples/CalculatorApp/CalculatorService/Name-2", + "fabric:/samples/mynames/name-1" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-3.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-3.json new file mode 100644 index 000000000000..bf07c9c58bc4 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetSubNameInfoList-3.json @@ -0,0 +1,23 @@ +{ + "operationId": "GetSubNameInfoList", + "description": "This example shows how to page through the information about sub names under a given Service Fabric name using ContinuationToken parameter. The value of this parameter is provided from the previous query, in this case the example shown above. The response contains the remaining two results and an empty ContinuationToken. The empty ContinuationToken indicates that additional results are not available.", + "parameters": { + "api-version": "6.0", + "nameId": "samples", + "Recursive": true, + "ContinuationToken": "fabric:/samples/apps/PersistentQueueApp$131439231986491349" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "IsConsistent": true, + "SubNames": [ + "fabric:/samples/apps/VolatileQueueApp", + "fabric:/samples/apps/NotepadApp" + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionById.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionById.json new file mode 100644 index 000000000000..c565a13cfcbc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionById.json @@ -0,0 +1,33 @@ +{ + "operationId": "GetImageStoreUploadSessionById", + "description": "This example shows how to get image store upload session by a given ID.", + "parameters": { + "api-version": "6.0", + "session-id": "4a2340e8-d8d8-497c-95fe-cdaa1052f33b" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "UploadSessions": [ + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "4a2340e8-d8d8-497c-95fe-cdaa1052f33b", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:06:37.260Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "402128" + }, + { + "StartPosition": "730105", + "EndPosition": "2097151" + } + ] + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionByPath.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionByPath.json new file mode 100644 index 000000000000..8dc66b6d107d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/GetUploadSessionByPath.json @@ -0,0 +1,49 @@ +{ + "operationId": "GetImageStoreUploadSessionByPath", + "description": "This example shows how to get image store upload session by a given relative path.", + "parameters": { + "api-version": "6.0", + "contentPath": "SwaggerTest\\Common.dll" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "UploadSessions": [ + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "2032ac6c-a348-4594-86da-dab0f2bb1ae1", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:28:11.627Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "207615" + }, + { + "StartPosition": "626977", + "EndPosition": "2097151" + } + ] + }, + { + "StoreRelativePath": "SwaggerTest\\Common.dll", + "SessionId": "fb2da2b2-7cb4-45d2-a2e6-c4888d205bc5", + "FileSize": "2097152", + "ModifiedDate": "2017-09-28T17:28:11.643Z", + "ExpectedRanges": [ + { + "StartPosition": "0", + "EndPosition": "616947" + }, + { + "StartPosition": "1087529", + "EndPosition": "2097151" + } + ] + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi.json new file mode 100644 index 000000000000..bfe285758eec --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi.json @@ -0,0 +1,27 @@ +{ + "operationId": "InvokeContainerApi", + "description": "This example shows how to call container API with HTTP GET for a code package deployed on a node.", + "parameters": { + "api-version": "6.2", + "nodeName": "Node01", + "applicationId": "samples/winnodejs", + "ServiceManifestName": "NodeServicePackage", + "CodePackageName": "NodeService.Code", + "CodePackageInstanceId": "131668159770315380", + "ContainerApiRequestBody": { + "UriPath": "/containers/{id}/logs?stdout=true&stderr=true" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContainerApiResult": { + "Status": 200, + "Content-Type": "text/plain; charset=utf-8", + "Body": "vEthernet (Container NIC ec5c19b2) 172.17.201.44\n" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi_Post.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi_Post.json new file mode 100644 index 000000000000..0042fd341de0 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/InvokeContainerApi_Post.json @@ -0,0 +1,29 @@ +{ + "operationId": "InvokeContainerApi", + "description": "This example shows how to call container API with HTTP POST for a code package deployed on a node.", + "parameters": { + "api-version": "6.2", + "nodeName": "N0020", + "applicationId": "samples/nodejs1", + "ServiceManifestName": "NodeOnSF", + "CodePackageName": "Code", + "CodePackageInstanceId": "131673596679688285", + "ContainerApiRequestBody": { + "HttpVerb": "POST", + "UriPath": "/containers/{id}/update", + "Body": "{ \"CpuShares\": 512}" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContainerApiResult": { + "Status": 200, + "Content-Type": "application/json", + "Body": "{\"Warnings\":null}\n" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-1.json new file mode 100644 index 000000000000..8eee209e7c7b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-1.json @@ -0,0 +1,25 @@ +{ + "operationId": "PutProperty", + "description": "This example shows how to create or update a Service Fabric property under a given name.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "PropertyDescription": { + "PropertyName": "AppData", + "Value": { + "Kind": "Binary", + "Data": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-2.json new file mode 100644 index 000000000000..5db6a9ad77f7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/PutProperty-2.json @@ -0,0 +1,19 @@ +{ + "operationId": "PutProperty", + "description": "This example shows how to create or update a Service Fabric property under a given name with a custom type.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "PropertyDescription": { + "PropertyName": "AppData", + "Value": { + "Kind": "String", + "Data": "1+2=3" + }, + "CustomTypeId": "EquationType" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json new file mode 100644 index 000000000000..5f17ef376d9d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json @@ -0,0 +1,18 @@ +{ + "operationId": "MeshCodePackage_GetContainerLogs", + "description": "This example shows how to get logs from the container of service replica. If the container exists, the logs are returned with an OK (200) status code, otherwise an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sbzDocApp", + "serviceResourceName": "sbzDocService", + "replicaName": "0", + "codePackageName": "sbzDocCode" + }, + "responses": { + "200": { + "body": { + "Content": " * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)\n * Downloading style https://assets-cdn.github.com/assets/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css\n * Downloading style https://assets-cdn.github.com/assets/github-a698da0d53574b056d3c79ac732d4a70.css\n * Downloading style https://assets-cdn.github.com/assets/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css\n * Cached all downloads in /root/.grip/cache-4.5.2\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET / HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/github-a698da0d53574b056d3c79ac732d4a70.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/static/octicons/octicons.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/octicons/octicons.woff2?ef21c39f0ca9b1b5116e5eb7ac5eabe6 HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/favicon.ico HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:05] \"GET /seabreeze-index.md HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:09] \"GET /seabreeze-api-application_get.md HTTP/1.1\" 200 -\n" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/get.json new file mode 100644 index 000000000000..bb373e90c328 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/get.json @@ -0,0 +1,57 @@ +{ + "operationId": "MeshServiceReplica_Get", + "description": "This example shows how to get information about given replica of a service. If the replica exists, its description is returned along with an OK (200) status code. If the replica does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService", + "replicaName": "0" + }, + "responses": { + "200": { + "body": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "0" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/list.json new file mode 100644 index 000000000000..1fe9b30fb836 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/Replicas/list.json @@ -0,0 +1,105 @@ +{ + "operationId": "MeshServiceReplica_List", + "description": "This example shows how to list replicas of a service resources for a given application.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "0" + }, + { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + }, + "instanceView": { + "restartCount": 1, + "currentState": { + "state": "Running", + "exitCode": "0" + }, + "previousState": { + "state": "NotSpecified", + "exitCode": "0" + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "replicaName": "1" + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/get.json new file mode 100644 index 000000000000..45224d3a66f8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/get.json @@ -0,0 +1,51 @@ +{ + "operationId": "MeshService_Get", + "description": "This example shows how to get a service resource for a given application. If the service resource exists, its description is returned along with an OK (200) status code. If the service resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "serviceResourceName": "helloWorldService" + }, + "responses": { + "200": { + "body": { + "name": "helloWorldService", + "properties": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "description": "SeaBreeze Hello World Service.", + "replicaCount": 1, + "healthState": "Ok", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/list.json new file mode 100644 index 000000000000..3df5e396c764 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/Services/list.json @@ -0,0 +1,56 @@ +{ + "operationId": "MeshService_List", + "description": "This example shows how to list all service resources for a given application.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "helloWorldService", + "properties": { + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ], + "description": "SeaBreeze Hello World Service.", + "replicaCount": 1, + "healthState": "Ok", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.autoscale.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.autoscale.json new file mode 100644 index 000000000000..16b621f6a572 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.autoscale.json @@ -0,0 +1,102 @@ +{ + "operationId": "MeshApplication_CreateOrUpdate", + "description": "This example shows how to create or update a application resource with services that autoscale based on the policies.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "applicationResourceDescription": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "services": [ + { + "name": "helloWorldService", + "properties": { + "description": "SeaBreeze Hello World Service.", + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "replicaCount": 1, + "autoScalingPolicies": [ + { + "name": "MyAutoScaleRule", + "trigger": { + "kind": "AverageLoad", + "metric": { + "kind": "Resource", + "name": "cpu" + }, + "lowerLoadThreshold": 0.3, + "upperLoadThreshold": 0.8, + "scaleIntervalInSeconds": 3600 + }, + "mechanism": { + "kind": "AddRemoveReplica", + "minCount": 1, + "maxCount": 4, + "scaleIncrement": 1 + } + } + ], + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Unknown", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.json new file mode 100644 index 000000000000..8066c046fd00 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/create_update.json @@ -0,0 +1,139 @@ +{ + "operationId": "MeshApplication_CreateOrUpdate", + "description": "This example shows how to create or update a application resource.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication", + "applicationResourceDescription": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "services": [ + { + "name": "helloWorldService", + "properties": { + "description": "SeaBreeze Hello World Service.", + "identityRefs": [ + { + "name": "ServiceIdentity1", + "identityRef": "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1" + }, + { + "name": "ServiceIdentity2", + "identityRef": "SystemAssigned" + } + ], + "osType": "Linux", + "codePackages": [ + { + "name": "helloWorldCode", + "image": "seabreeze/sbz-helloworld:1.0-alpine", + "endpoints": [ + { + "name": "helloWorldListener", + "port": 80 + } + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + ], + "replicaCount": 1, + "networkRefs": [ + { + "name": "sampleNetwork", + "endpointRefs": [ + { + "name": "helloWorldListener" + } + ] + } + ] + } + } + ] + } + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + }, + "201": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Unknown", + "status": "Creating" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/delete.json new file mode 100644 index 000000000000..b51511b0865d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshApplication_Delete", + "description": "This example shows how to delete an existing application resource. If the application resource exists and is deleted successfully, an empty response with 200 status code is returned. If the application resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get.json new file mode 100644 index 000000000000..208ccd280bbd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get.json @@ -0,0 +1,39 @@ +{ + "operationId": "MeshApplication_Get", + "description": "This example shows how to get a application resource. If the application resource exists, its description is returned along with an OK (200) status code. If the application resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "body": { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get_upgrade.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get_upgrade.json new file mode 100644 index 000000000000..61be95fa11b7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/get_upgrade.json @@ -0,0 +1,30 @@ +{ + "operationId": "MeshApplication_GetUpgradeProgress", + "description": "This example shows how to get a application resource upgrade. If the application resource exists, its description is returned along with an OK (200) status code. If the application resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "applicationResourceName": "sampleApplication" + }, + "responses": { + "200": { + "body": { + "Name": "sampleApplication", + "TargetApplicationTypeVersion": "v1", + "StartTimestampUtc": "0001-01-01T00:00:00.000Z", + "UpgradeState": "RollingForward", + "PercentCompleted": "0", + "ServiceUpgradeProgress": [ + { + "ServiceName": "helloWorldService", + "CompletedReplicaCount": "0", + "PendingReplicaCount": "3" + } + ], + "RollingUpgradeMode": "Monitored", + "UpgradeDuration": "PT0H0M2.31669S", + "ApplicationUpgradeStatusDetails": "Deployment upgrading from version: v0 to version: v1.", + "UpgradeReplicaSetCheckTimeoutInSeconds": 4294967295 + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/list.json new file mode 100644 index 000000000000..2f34f40e3488 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Applications/list.json @@ -0,0 +1,44 @@ +{ + "operationId": "MeshApplication_List", + "description": "This example shows how to list all application resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleApplication", + "properties": { + "description": "Service Fabric Mesh sample application.", + "serviceNames": [ + "helloWorldService" + ], + "healthState": "Ok", + "status": "Ready" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "tokenServiceEndpoint": "http://tokenservice", + "tenantId": "D47A6CD5-E870-4ADF-8C00-1C0B758BC567", + "principalId": "84DFA616-1F44-4D63-BC08-43B5F758D16C", + "userAssignedIdentities": { + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity1": { + "clientId": "5287A675-78D2-4E49-BF09-D3BFE02493D4", + "principalId": "7D6F0B1C-AF9F-4E21-9B3C-AE22F4D926F8" + }, + "/subscriptions/c1089427-83d3-4286-9f35-5af546a6eb67/resourcegroups/myGroup/providers/Microsoft.Identity/Identities/identity2": { + "clientId": "AF1509EC-9B5F-43CC-8A6F-FA7CC84AEBE1", + "principalId": "31144ACF-46F4-4639-A711-A257229EE0C0" + } + } + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/create_update.json new file mode 100644 index 000000000000..2ded194ec7cc --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/create_update.json @@ -0,0 +1,193 @@ +{ + "operationId": "MeshGateway_CreateOrUpdate", + "description": "This example shows how to create or update a gateway resource.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway", + "gatewayResourceDescription": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + }, + "201": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh Hello World sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Creating", + "ipAddress": "" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/delete.json new file mode 100644 index 000000000000..63ed69926752 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshGateway_Delete", + "description": "This example shows how to delete an existing gateway resource. If the gateway resource exists and is deleted successfully, an empty response with 200 status code is returned. If the gateway resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/get.json new file mode 100644 index 000000000000..c85b652cbc45 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/get.json @@ -0,0 +1,72 @@ +{ + "operationId": "MeshGateway_Get", + "description": "This example shows how to get a gateway resource. If the gateway resource exists, its description is returned along with an OK (200) status code. If the gateway resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "gatewayResourceName": "sampleGateway" + }, + "responses": { + "200": { + "body": { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/list.json new file mode 100644 index 000000000000..5ad53b7d580f --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Gateways/list.json @@ -0,0 +1,77 @@ +{ + "operationId": "MeshGateway_List", + "description": "This example shows how to list all gateway resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleGateway", + "properties": { + "description": "Service Fabric Mesh sample gateway.", + "sourceNetwork": { + "name": "Open" + }, + "destinationNetwork": { + "name": "helloWorldNetwork" + }, + "tcp": [ + { + "name": "web", + "port": 80, + "destination": { + "applicationName": "helloWorldApp", + "serviceName": "helloWorldService", + "endpointName": "helloWorldListener" + } + } + ], + "http": [ + { + "name": "contosoWebsite", + "port": 8081, + "hosts": [ + { + "name": "contoso.com", + "routes": [ + { + "name": "index", + "match": { + "path": { + "value": "/index", + "rewrite": "/", + "type": "prefix" + }, + "headers": [ + { + "name": "accept", + "value": "application/json", + "type": "exact" + } + ] + }, + "destination": { + "applicationName": "httpHelloWorldApp", + "serviceName": "indexService", + "endpointName": "indexHttpEndpoint" + } + } + ] + } + ] + } + ], + "status": "Ready", + "ipAddress": "192.168.1.1" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/create_update.json new file mode 100644 index 000000000000..faf2a3960b48 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/create_update.json @@ -0,0 +1,41 @@ +{ + "operationId": "MeshNetwork_CreateOrUpdate", + "description": "This example shows how to create or update a network resource.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork", + "networkResourceDescription": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/delete.json new file mode 100644 index 000000000000..aea2170b7316 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshGateway_Delete", + "description": "This example shows how to delete an existing network resource. If the network resource exists and is deleted successfully, an empty response with 200 status code is returned. If the network resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/get.json new file mode 100644 index 000000000000..1afaee298e7d --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/get.json @@ -0,0 +1,21 @@ +{ + "operationId": "MeshGateway_Get", + "description": "This example shows how to get a network resource. If the network resource exists, its description is returned along with an OK (200) status code. If the network resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "networkResourceName": "sampleNetwork" + }, + "responses": { + "200": { + "body": { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/list.json new file mode 100644 index 000000000000..6cf521d8582c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Networks/list.json @@ -0,0 +1,26 @@ +{ + "operationId": "MeshGateway_List", + "description": "This example shows how to list all network resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleNetwork", + "properties": { + "kind": "Local", + "description": "Service Fabric Mesh sample network.", + "networkAddressPrefix": "2.0.0.0/16", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/create_update.json new file mode 100644 index 000000000000..aab0125db5a5 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/create_update.json @@ -0,0 +1,41 @@ +{ + "operationId": "MeshSecret_CreateOrUpdate", + "description": "This example shows how to create or update a secret resource.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretResourceDescription": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!" + } + } + }, + "responses": { + "200": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/delete.json new file mode 100644 index 000000000000..ffe68fd3ddc7 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshSecret_Delete", + "description": "This example shows how to delete an existing secret resource. If the secret resource exists and is deleted successfully, an empty response with 200 status code is returned. If the secret resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/get.json new file mode 100644 index 000000000000..f358e51722dd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/get.json @@ -0,0 +1,21 @@ +{ + "operationId": "MeshSecret_Get", + "description": "This example shows how to get a secret resource. If the secret resource exists, its description is returned along with an OK (200) status code. If the secret resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": { + "body": { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/list.json new file mode 100644 index 000000000000..b46d7f8ff341 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/list.json @@ -0,0 +1,35 @@ +{ + "operationId": "MeshSecret_List", + "description": "This example shows how to list all secret resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "dbConnectionString", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "Mongo DB connection string for backend database!", + "status": "Ready" + } + }, + { + "name": "contosoServiceApiKey", + "properties": { + "kind": "inlinedValue", + "contentType": "text/plain", + "description": "API Key to access contoso service APIs", + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/create.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/create.json new file mode 100644 index 000000000000..8cd0824452fd --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/create.json @@ -0,0 +1,34 @@ +{ + "operationId": "MeshSecretValue_AddValue", + "description": "This example shows how to add a new value of a secret resource; the secret value is provided as plaintext.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1", + "secretValueResourceDescription": { + "name": "v1", + "properties": { + "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true" + } + } + }, + "responses": { + "200": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + }, + "201": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/delete.json new file mode 100644 index 000000000000..ad4b3ef9540b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/delete.json @@ -0,0 +1,14 @@ +{ + "operationId": "MeshSecretValue_Delete", + "description": "This example shows how to delete a secret value. If the specified named value exists and is deleted successfully, an empty response with 200 status code is returned. If the specified named value does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/get.json new file mode 100644 index 000000000000..a6491634ef44 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/get.json @@ -0,0 +1,19 @@ +{ + "operationId": "MeshSecretValue_Get", + "description": "This example shows how to get the specified secret value resource. If the specified named value exists, its information is returned along with status code 200. The information does not include the value. To get the unecnrypted value use ListMeshSecretValue operation. If the specified named value does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": { + "body": { + "name": "v1", + "properties": { + "value": null + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list.json new file mode 100644 index 000000000000..0610d6d83c48 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list.json @@ -0,0 +1,29 @@ +{ + "operationId": "MeshSecretValue_List", + "description": "This example shows how to list names of all values of a secret resource, not including their respective values.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString" + }, + "responses": { + "200": { + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "v1", + "properties": { + "value": null + } + }, + { + "name": "v2", + "properties": { + "value": null + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list_value.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list_value.json new file mode 100644 index 000000000000..b8d09ce2e23c --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Secrets/values/list_value.json @@ -0,0 +1,16 @@ +{ + "operationId": "MeshSecretValue_Show", + "description": "This example shows how to get the unencrypted value of the secret. If the specified named value resource exists, its unencrypted value is returned along with status code 200. If the specified named value does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "secretResourceName": "dbConnectionString", + "secretValueResourceName": "v1" + }, + "responses": { + "200": { + "body": { + "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true" + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/create_update.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/create_update.json new file mode 100644 index 000000000000..ba2623cdc556 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/create_update.json @@ -0,0 +1,53 @@ +{ + "operationId": "MeshVolume_CreateOrUpdate", + "description": "This example shows how to create or update a volume resource.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume", + "volumeResourceDescription": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": "provide-account-key-here", + "shareName": "sharel" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + }, + "201": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh Hello World sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/delete.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/delete.json new file mode 100644 index 000000000000..efaa1f836ae1 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/delete.json @@ -0,0 +1,13 @@ +{ + "operationId": "MeshVolume_Delete", + "description": "This example shows how to delete an existing volume resource. If the volume resource exists and is deleted successfully, an empty response with 200 status code is returned. If the volume resource does not exist, an empty response with 204 status code is returned.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/get.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/get.json new file mode 100644 index 000000000000..9d08f3b00a82 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/get.json @@ -0,0 +1,25 @@ +{ + "operationId": "MeshVolume_Get", + "description": "This example shows how to get a volume resource. If the volume resource exists, its description is returned along with an OK (200) status code. If the volume resource does not exist, an error is returned with an appropriate status code.", + "parameters": { + "api-version": "6.4-preview", + "volumeResourceName": "sampleVolume" + }, + "responses": { + "200": { + "body": { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/list.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/list.json new file mode 100644 index 000000000000..3bf83798904b --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/Resources/Volumes/list.json @@ -0,0 +1,30 @@ +{ + "operationId": "MeshVolume_List", + "description": "This example shows how to list all volume resources.", + "parameters": { + "api-version": "6.4-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "ContinuationToken": "", + "Items": [ + { + "name": "sampleVolume", + "properties": { + "description": "Service Fabric Mesh sample volume.", + "provider": "SFAzureFile", + "azureFileParameters": { + "accountName": "sbzdemoaccount", + "accountKey": null, + "shareName": "sharel" + }, + "status": "Ready" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/RestorePartition.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/RestorePartition.json new file mode 100644 index 000000000000..1e97e0557113 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/RestorePartition.json @@ -0,0 +1,20 @@ +{ + "operationId": "RestorePartition", + "description": "This example shows how to trigger restore of a partition now by specifying the backup to be used to restore.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d", + "RestorePartitionDescription": { + "BackupId": "3a056ac9-7206-43c3-8424-6f6103003eba", + "BackupStorage": { + "StorageKind": "AzureBlobStore", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "BackupLocation": "CalcApp\\CalcService\\1daae3f5-7fd6-42e9-b1ba-8c05f873994d\\2018-01-01 09.00.55.zip" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeApplicationBackup.json new file mode 100644 index 000000000000..b25a7ac545ec --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeApplicationBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumeApplicationBackup", + "description": "This example shows how to resume periodic backup for a stateful application which was previously suspended.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumePartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumePartitionBackup.json new file mode 100644 index 000000000000..feb701118438 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumePartitionBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumePartitionBackup", + "description": "This example shows how to resume periodic backup for a stateful partition which was previously suspended.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeServiceBackup.json new file mode 100644 index 000000000000..9037dfa23d9e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/ResumeServiceBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "ResumeServiceBackup", + "description": "This example shows how to resume periodic backup for a stateful service which was previously suspended.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/StartClusterConfigurationUpgrade-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/StartClusterConfigurationUpgrade-1.json new file mode 100644 index 000000000000..2f8fd59a474e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/StartClusterConfigurationUpgrade-1.json @@ -0,0 +1,40 @@ +{ + "operationId": "StartClusterConfigurationUpgrade", + "description": "This example shows how to start upgrading the configuration of a Service Fabric standalone cluster.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps/CalculatorApp", + "ClusterConfigurationUpgradeDescription": { + "ClusterConfig": "", + "ApplicationHealthPolicies": { + "ApplicationHealthPolicyMap": [ + { + "Key": "fabric:/samples/CalculatorApp", + "Value": { + "ConsiderWarningAsError": true, + "MaxPercentUnhealthyDeployedApplications": 10, + "DefaultServiceTypeHealthPolicy": { + "MaxPercentUnhealthyPartitionsPerService": 0, + "MaxPercentUnhealthyReplicasPerPartition": 0, + "MaxPercentUnhealthyServices": 0 + }, + "ServiceTypeHealthPolicyMap": [ + { + "Key": "Svc1Type", + "Value": { + "MaxPercentUnhealthyPartitionsPerService": 0, + "MaxPercentUnhealthyReplicasPerPartition": 0, + "MaxPercentUnhealthyServices": 10 + } + } + ] + } + } + ] + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SubmitPropertyBatch-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SubmitPropertyBatch-1.json new file mode 100644 index 000000000000..05410c96edc2 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SubmitPropertyBatch-1.json @@ -0,0 +1,71 @@ +{ + "operationId": "SubmitPropertyBatch", + "description": "This example shows how to submit a property batch. This batch ensures that a property exists, checks that the property has the expected sequence number, and edits the property only if the previous conditions succeed. It then performs a get operation to get the property's current info. \r\n If all of the operations succeed, the batch is committed in a transactional manner and a success response is returned with 200 status code. \r\n If the batch fails then a failed response is returned with 409 status code. The failed response below shows batch failure because the property does not have expected sequence number.", + "parameters": { + "api-version": "6.0", + "nameId": "samples/apps", + "PropertyBatchDescriptionList": { + "Operations": [ + { + "Kind": "CheckExists", + "PropertyName": "PersistentQueueAppData", + "Exists": true + }, + { + "Kind": "CheckSequence", + "PropertyName": "PersistentQueueAppData", + "SequenceNumber": "12" + }, + { + "Kind": "Put", + "PropertyName": "PersistentQueueAppData", + "Value": { + "Kind": "Binary", + "Data": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + "CustomTypeId": "InitializationData" + }, + { + "Kind": "Get", + "PropertyName": "PersistentQueueAppData", + "IncludeValue": false + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "Kind": "Successful", + "Properties": { + "3": { + "Name": "PersistentQueueAppData", + "Metadata": { + "TypeId": "Binary", + "CustomTypeId": "InitializationData", + "Parent": "fabric:/samples/apps", + "SizeInBytes": 5, + "LastModifiedUtcTimestamp": "2017-07-17T05:01:19.049Z", + "SequenceNumber": "13" + } + } + } + } + }, + "409": { + "headers": {}, + "body": { + "Kind": "Failed", + "ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED", + "OperationIndex": 1 + } + } + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendApplicationBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendApplicationBackup.json new file mode 100644 index 000000000000..75bdad71a95e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendApplicationBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendApplicationBackup", + "description": "This example shows how to suspend backup for a stateful application which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "applicationId": "CalcApp" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendPartitionBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendPartitionBackup.json new file mode 100644 index 000000000000..b14619dd6fe8 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendPartitionBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendPartitionBackup", + "description": "This example shows how to suspend backup for a stateful partition which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "partitionId": "1daae3f5-7fd6-42e9-b1ba-8c05f873994d" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendServiceBackup.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendServiceBackup.json new file mode 100644 index 000000000000..14d0575c509e --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/SuspendServiceBackup.json @@ -0,0 +1,11 @@ +{ + "operationId": "SuspendServiceBackup", + "description": "This example shows how to suspend backup for a stateful service which is configured for periodic backup.", + "parameters": { + "api-version": "6.4", + "serviceId": "CalcApp/CalcService" + }, + "responses": { + "202": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateBackupPolicy.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateBackupPolicy.json new file mode 100644 index 000000000000..3129817ddb68 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateBackupPolicy.json @@ -0,0 +1,35 @@ +{ + "operationId": "UpdateBackupPolicy", + "description": "This example shows how to update the schedule of a backup policy to take backup twice everyday at 9 AM and 5 PM UTC which shall get deleted after 30 days, with Azure blob store as the backup location.", + "parameters": { + "api-version": "6.4", + "backupPolicyName": "DailyAzureBackupPolicy", + "BackupPolicyDescription": { + "Name": "DailyAzureBackupPolicy", + "AutoRestoreOnDataLoss": false, + "MaxIncrementalBackups": 3, + "Schedule": { + "ScheduleKind": "TimeBased", + "ScheduleFrequencyType": "Daily", + "RunTimes": [ + "0001-01-01T09:00:00Z", + "0001-01-01T17:00:00Z" + ] + }, + "Storage": { + "StorageKind": "AzureBlobStore", + "FriendlyName": "Azure_storagesample", + "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=", + "ContainerName": "BackupContainer" + }, + "RetentionPolicy": { + "RetentionPolicyType": "Basic", + "MinimumNumberOfBackups": 60, + "RetentionDuration": "P30D" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-1.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-1.json new file mode 100644 index 000000000000..3dd7f5950427 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-1.json @@ -0,0 +1,34 @@ +{ + "operationId": "UpdateService", + "description": "This example shows how to update placement and load balancing related settings of a stateless Service Fabric service.", + "parameters": { + "serviceId": "test~test1", + "api-version": "6.0", + "ServiceUpdateDescription": { + "ServiceKind": "Stateless", + "Flags": "1568", + "PlacementConstraints": "Color==Red", + "DefaultMoveCost": "High", + "ScalingPolicies": [ + { + "ScalingTrigger": { + "Kind": "AveragePartitionLoad", + "MetricName": "servicefabric:/_CpuCores", + "LowerLoadThreshold": "0.500000", + "UpperLoadThreshold": "0.800000", + "ScaleIntervalInSeconds": 900 + }, + "ScalingMechanism": { + "Kind": "PartitionInstanceCount", + "MinInstanceCount": 4, + "MaxInstanceCount": 6, + "ScaleIncrement": 2 + } + } + ] + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-2.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-2.json new file mode 100644 index 000000000000..cdb1368dbdd6 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/examples/UpdateService-2.json @@ -0,0 +1,17 @@ +{ + "operationId": "UpdateService", + "description": "This example shows how to update placement and load balancing related settings of a stateful Service Fabric service.", + "parameters": { + "serviceId": "test~test2", + "api-version": "6.0", + "ServiceUpdateDescription": { + "ServiceKind": "Stateful", + "Flags": "40", + "PlacementConstraints": "Color==Green", + "StandByReplicaKeepDurationSeconds": "1000" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/servicefabric.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/servicefabric.json new file mode 100644 index 000000000000..fe543ad5b773 --- /dev/null +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/7.1/servicefabric.json @@ -0,0 +1,28452 @@ +{ + "swagger": "2.0", + "info": { + "title": "Service Fabric Client APIs", + "description": "Service Fabric REST Client APIs allows management of Service Fabric clusters, applications and services.", + "version": "7.1.0.45" + }, + "host": "localhost:19080", + "schemes": [ + "http", + "https" + ], + "produces": [ + "application/json" + ], + "paths": { + "/$/GetClusterManifest": { + "get": { + "operationId": "GetClusterManifest", + "summary": "Get the Service Fabric cluster manifest.", + "description": "Get the Service Fabric cluster manifest. The cluster manifest contains properties of the cluster that include different node types on the cluster,\nsecurity configurations, fault, and upgrade domain topologies, etc.\n\nThese properties are specified as part of the ClusterConfig.JSON file while deploying a stand-alone cluster. However, most of the information in the cluster manifest\nis generated internally by service fabric during cluster deployment in other deployment scenarios (e.g. when using Azure portal).\n\nThe contents of the cluster manifest are for informational purposes only and users are not expected to take a dependency on the format of the file contents or its interpretation.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster manifest information.", + "schema": { + "$ref": "#/definitions/ClusterManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterHealth": { + "get": { + "operationId": "GetClusterHealth", + "summary": "Gets the health of a Service Fabric cluster.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nSimilarly, use NodesHealthStateFilter and ApplicationsHealthStateFilter to filter the collection of nodes and applications returned based on their aggregated health state.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeSystemApplicationHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health information.", + "schema": { + "$ref": "#/definitions/ClusterHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetClusterHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric cluster using the specified policy.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nSimilarly, use NodesHealthStateFilter and ApplicationsHealthStateFilter to filter the collection of nodes and applications returned based on their aggregated health state.\nUse ClusterHealthPolicies to override the health policies used to evaluate the health.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeSystemApplicationHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthPoliciesOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health information.", + "schema": { + "$ref": "#/definitions/ClusterHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterHealthChunk": { + "get": { + "operationId": "GetClusterHealthChunk", + "summary": "Gets the health of a Service Fabric cluster using health chunks.", + "description": "Gets the health of a Service Fabric cluster using health chunks. Includes the aggregated health state of the cluster, but none of the cluster entities.\nTo expand the cluster health and get the health state of all or some of the entities, use the POST URI and specify the cluster health chunk query description.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health chunk information.", + "schema": { + "$ref": "#/definitions/ClusterHealthChunk" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetClusterHealthChunkUsingPolicyAndAdvancedFilters", + "summary": "Gets the health of a Service Fabric cluster using health chunks.", + "description": "Gets the health of a Service Fabric cluster using health chunks. The health evaluation is done based on the input cluster health chunk query description.\nThe query description allows users to specify health policies for evaluating the cluster and its children.\nUsers can specify very flexible filters to select which cluster entities to return. The selection can be done based on the entities health state and based on the hierarchy.\nThe query can return multi-level children of the entities based on the specified filters. For example, it can return one application with a specified name, and for this application, return\nonly services that are in Error or Warning, and all partitions and replicas for one of these services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthChunkQueryDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster health chunk information.", + "schema": { + "$ref": "#/definitions/ClusterHealthChunk" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ReportClusterHealth": { + "post": { + "operationId": "ReportClusterHealth", + "summary": "Sends a health report on the Service Fabric cluster.", + "description": "Sends a health report on a Service Fabric cluster. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway node, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetClusterHealth and check that the report appears in the HealthEvents section.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code when the cluster health report is accepted for processing." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetProvisionedCodeVersions": { + "get": { + "operationId": "GetProvisionedFabricCodeVersionInfoList", + "summary": "Gets a list of fabric code versions that are provisioned in a Service Fabric cluster.", + "description": "Gets a list of information about fabric code versions that are provisioned in the cluster. The parameter CodeVersion can be used to optionally filter the output to only that particular version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/CodeVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested provisioned code versions information.", + "schema": { + "$ref": "#/definitions/FabricCodeVersionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetProvisionedConfigVersions": { + "get": { + "operationId": "GetProvisionedFabricConfigVersionInfoList", + "summary": "Gets a list of fabric config versions that are provisioned in a Service Fabric cluster.", + "description": "Gets a list of information about fabric config versions that are provisioned in the cluster. The parameter ConfigVersion can be used to optionally filter the output to only that particular version.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ConfigVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested provisioned config versions information.", + "schema": { + "$ref": "#/definitions/FabricConfigVersionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetUpgradeProgress": { + "get": { + "operationId": "GetClusterUpgradeProgress", + "summary": "Gets the progress of the current cluster upgrade.", + "description": "Gets the current progress of the ongoing cluster upgrade. If no upgrade is currently in progress, get the last state of the previous cluster upgrade.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster upgrade progress.", + "schema": { + "$ref": "#/definitions/ClusterUpgradeProgressObject" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterConfiguration": { + "get": { + "operationId": "GetClusterConfiguration", + "summary": "Get the Service Fabric standalone cluster configuration.", + "description": "The cluster configuration contains properties of the cluster that include different node types on the cluster,\nsecurity configurations, fault, and upgrade domain topologies, etc.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ConfigurationApiVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster configuration information.", + "schema": { + "$ref": "#/definitions/ClusterConfiguration" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterConfigurationUpgradeStatus": { + "get": { + "operationId": "GetClusterConfigurationUpgradeStatus", + "summary": "Get the cluster configuration upgrade status of a Service Fabric standalone cluster.", + "description": "Get the cluster configuration upgrade status details of a Service Fabric standalone cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster configuration upgrade status.", + "schema": { + "$ref": "#/definitions/ClusterConfigurationUpgradeStatusInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetUpgradeOrchestrationServiceState": { + "get": { + "operationId": "GetUpgradeOrchestrationServiceState", + "summary": "Get the service state of Service Fabric Upgrade Orchestration Service.", + "description": "Get the service state of Service Fabric Upgrade Orchestration Service. This API is internally used for support purposes.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested service state of Service Fabric Upgrade Orchestration Service.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceState" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/SetUpgradeOrchestrationServiceState": { + "post": { + "operationId": "SetUpgradeOrchestrationServiceState", + "summary": "Update the service state of Service Fabric Upgrade Orchestration Service.", + "description": "Update the service state of Service Fabric Upgrade Orchestration Service. This API is internally used for support purposes.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UpgradeOrchestrationServiceStateRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful response means that the service state of Service Fabric Upgrade Orchestration Service has been updated.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceStateSummary" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Provision": { + "post": { + "summary": "Provision the code or configuration packages of a Service Fabric cluster.", + "description": "Validate and provision the code or configuration packages of a Service Fabric cluster.", + "operationId": "ProvisionCluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ProvisionFabricDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the code or configuration packages have been provisioned." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Unprovision": { + "post": { + "summary": "Unprovision the code or configuration packages of a Service Fabric cluster.", + "description": "It is supported to unprovision code and configuration separately.", + "operationId": "UnprovisionCluster", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UnprovisionFabricDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the code or configuration packages have been unprovisioned." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RollbackUpgrade": { + "post": { + "summary": "Roll back the upgrade of a Service Fabric cluster.", + "description": "Roll back the code or configuration upgrade of a Service Fabric cluster.", + "operationId": "RollbackClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "202": { + "description": "A successful response means that the rollback of a cluster upgrade has been initiated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/MoveToNextUpgradeDomain": { + "post": { + "summary": "Make the cluster upgrade move on to the next upgrade domain.", + "description": "Make the cluster code or configuration upgrade move on to the next upgrade domain if appropriate.", + "operationId": "ResumeClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ResumeClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful response means that the cluster upgrade has moved on to the next upgrade domain." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/Upgrade": { + "post": { + "summary": "Start upgrading the code or configuration version of a Service Fabric cluster.", + "description": "Validate the supplied upgrade parameters and start upgrading the code or configuration version of a Service Fabric cluster if the parameters are valid.", + "operationId": "StartClusterUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/StartClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "202": { + "description": "A successful response means that the cluster code or configuration upgrade has started. Use GetUpgradeProgress operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/StartClusterConfigurationUpgrade": { + "post": { + "summary": "Start upgrading the configuration of a Service Fabric standalone cluster.", + "description": "Validate the supplied configuration upgrade parameters and start upgrading the cluster configuration if the parameters are valid.", + "operationId": "StartClusterConfigurationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ClusterConfigurationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "Start upgrading the configuration of a Service Fabric standalone cluster": { + "$ref": "./examples/StartClusterConfigurationUpgrade-1.json" + } + }, + "responses": { + "202": { + "description": "A successful response means that the cluster configuration upgrade has started. Use GetClusterConfigurationUpgradeStatus operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateUpgrade": { + "post": { + "operationId": "UpdateClusterUpgrade", + "summary": "Update the upgrade parameters of a Service Fabric cluster upgrade.", + "description": "Update the upgrade parameters used during a Service Fabric cluster upgrade.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UpdateClusterUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetAadMetadata": { + "get": { + "operationId": "GetAadMetadata", + "summary": "Gets the Azure Active Directory metadata used for secured connection to cluster.", + "description": "Gets the Azure Active Directory metadata used for secured connection to cluster.\nThis API is not supposed to be called separately. It provides information needed to set up an Azure Active Directory secured connection with a Service Fabric cluster.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "schemes": [ + "https" + ], + "tags": [ + "Cluster" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the Azure Active Directory metadata.", + "schema": { + "$ref": "#/definitions/AadMetadataObject" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetClusterVersion": { + "get": { + "operationId": "GetClusterVersion", + "summary": "Get the current Service Fabric cluster version.", + "description": "If a cluster upgrade is happening, then this API will return the lowest (older) version of the current and target cluster runtime versions.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/GetClusterVersion-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster version information.", + "schema": { + "$ref": "#/definitions/ClusterVersion" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetLoadInformation": { + "get": { + "operationId": "GetClusterLoad", + "summary": "Gets the load of a Service Fabric cluster.", + "description": "Retrieves the load information of a Service Fabric cluster for all the metrics that have load or capacity defined.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested cluster load information.", + "schema": { + "$ref": "#/definitions/ClusterLoadInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ToggleVerboseServicePlacementHealthReporting": { + "post": { + "operationId": "ToggleVerboseServicePlacementHealthReporting", + "summary": "Changes the verbosity of service placement health reporting.", + "description": "If verbosity is set to true, then detailed health reports will be generated when replicas cannot be placed or dropped.\nIf verbosity is set to false, then no health reports will be generated when replicas cannot be placed or dropped.", + "tags": [ + "Cluster" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VerboseServicePlacementHealthReportingParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful response means that the verbosity of service placement health reporting was updated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes": { + "get": { + "summary": "Gets the list of nodes in the Service Fabric cluster.", + "description": "The response includes the name, status, ID, health, uptime, and other details about the nodes.", + "operationId": "GetNodeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-3_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/NodeStatusFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Node" + ], + "x-ms-examples": { + "Get information about all nodes": { + "$ref": "./examples/GetNodeInfoList.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetNodeInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetNodeInfoList-2.json" + } + }, + "responses": { + "200": { + "description": "List of nodes in the cluster.", + "schema": { + "$ref": "#/definitions/PagedNodeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}": { + "get": { + "summary": "Gets the information about a specific node in the Service Fabric cluster.", + "description": "The response includes the name, status, ID, health, uptime, and other details about the node.", + "operationId": "GetNodeInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Node" + ], + "x-ms-examples": { + "Get a specific node by node name": { + "$ref": "./examples/GetNodeInfo-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return information about the node with the specified nodeName.", + "schema": { + "$ref": "#/definitions/NodeInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified nodeName is not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetHealth": { + "get": { + "operationId": "GetNodeHealth", + "summary": "Gets the health of a Service Fabric node.", + "description": "Gets the health of a Service Fabric node. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. If the node that you specify by name does not exist in the health store, this returns an error.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/NodeHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetNodeHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric node, by using the specified health policy.", + "description": "Gets the health of a Service Fabric node. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. Use ClusterHealthPolicy in the POST body to override the health policies used to evaluate the health. If the node that you specify by name does not exist in the health store, this returns an error.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ClusterHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/NodeHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/ReportHealth": { + "post": { + "operationId": "ReportNodeHealth", + "summary": "Sends a health report on the Service Fabric node.", + "description": "Reports health state of the specified Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway node, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetNodeHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetLoadInformation": { + "get": { + "operationId": "GetNodeLoadInfo", + "summary": "Gets the load information of a Service Fabric node.", + "description": "Retrieves the load information of a Service Fabric node for all the metrics that have load or capacity defined.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node load information.", + "schema": { + "$ref": "#/definitions/NodeLoadInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Deactivate": { + "post": { + "operationId": "DisableNode", + "summary": "Deactivate a Service Fabric cluster node with the specified deactivation intent.", + "description": "Deactivate a Service Fabric cluster node with the specified deactivation intent. Once the deactivation is in progress, the deactivation intent can be increased, but not decreased (for example, a node that is deactivated with the Pause intent can be deactivated further with Restart, but not the other way around. Nodes may be reactivated using the Activate a node operation any time after they are deactivated. If the deactivation is not complete, this will cancel the deactivation. A node that goes down and comes back up while deactivated will still need to be reactivated before services will be placed on that node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeactivationIntentDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Activate": { + "post": { + "operationId": "EnableNode", + "summary": "Activate a Service Fabric cluster node that is currently deactivated.", + "description": "Activates a Service Fabric cluster node that is currently deactivated. Once activated, the node will again become a viable target for placing new replicas, and any deactivated replicas remaining on the node will be reactivated.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/RemoveNodeState": { + "post": { + "operationId": "RemoveNodeState", + "summary": "Notifies Service Fabric that the persisted state on a node has been permanently removed or lost.", + "description": "This implies that it is not possible to recover the persisted state of that node. This generally happens if a hard disk has been wiped clean, or if a hard disk crashes. The node has to be down for this operation to be successful. This operation lets Service Fabric know that the replicas on that node no longer exist, and that Service Fabric should stop waiting for those replicas to come back up. Do not run this cmdlet if the state on the node has not been removed and the node can come back up with its state intact. Starting from Service Fabric 6.5, in order to use this API for seed nodes, please change the seed nodes to regular (non-seed) nodes and then invoke this API to remove the node state. If the cluster is running on Azure, after the seed node goes down, Service Fabric will try to change it to a non-seed node automatically. To make this happen, make sure the number of non-seed nodes in the primary node type is no less than the number of Down seed nodes. If necessary, add more nodes to the primary node type to achieve this. For standalone cluster, if the Down seed node is not expected to come back up with its state intact, please remove the node from the cluster, see https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-windows-server-add-remove-nodes", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/Restart": { + "post": { + "operationId": "RestartNode", + "summary": "Restarts a Service Fabric cluster node.", + "description": "Restarts a Service Fabric cluster node that is already started.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/RestartNodeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the node and it is in the process of restarting. Check the status of the node by calling GetNode operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/RemoveConfigurationOverrides": { + "delete": { + "operationId": "RemoveConfigurationOverrides", + "summary": "Removes configuration overrides on the specified node.", + "description": "This api allows removing all existing configuration overrides on specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetConfigurationOverrides": { + "get": { + "operationId": "GetConfigurationOverrides", + "summary": "Gets the list of configuration overrides on the specified node.", + "description": "This api allows getting all existing configuration overrides on the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "List of configuration overrides on the node.", + "schema": { + "$ref": "#/definitions/ConfigParameterOverrideList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/AddConfigurationParameterOverrides": { + "post": { + "operationId": "AddConfigurationParameterOverrides", + "summary": "Adds the list of configuration overrides on the specified node.", + "description": "This api allows adding all existing configuration overrides on the specified node.", + "tags": [ + "Node" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ConfigurationOverrideListRequiredParam" + }, + { + "$ref": "#/parameters/ForceConfigurationOverrideOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes": { + "get": { + "summary": "Gets the list of application types in the Service Fabric cluster.", + "description": "Returns the information about the application types that are provisioned or in the process of being provisioned in the Service Fabric cluster. Each version of an application type is returned as one application type. The response includes the name, version, status, and other details about the application type. This is a paged query, meaning that if not all of the application types fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. For example, if there are 10 application types but a page only fits the first three application types, or if max results is set to 3, then three is returned. To access the rest of the results, retrieve subsequent pages by using the returned continuation token in the next query. An empty continuation token is returned if there are no subsequent pages.", + "operationId": "GetApplicationTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeDefinitionKindFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationTypeInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationTypeInfoList-2.json" + }, + "Exclude application parameters from the result": { + "$ref": "./examples/GetApplicationTypeInfoList-3.json" + } + }, + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "List of application types in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}": { + "get": { + "summary": "Gets the list of application types in the Service Fabric cluster matching exactly the specified name.", + "description": "Returns the information about the application types that are provisioned or in the process of being provisioned in the Service Fabric cluster. These results are of application types whose name match exactly the one specified as the parameter, and which comply with the given query parameters. All versions of the application type matching the application type name are returned, with each version returned as one application type. The response includes the name, version, status, and other details about the application type. This is a paged query, meaning that if not all of the application types fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. For example, if there are 10 application types but a page only fits the first three application types, or if max results is set to 3, then three is returned. To access the rest of the results, retrieve subsequent pages by using the returned continuation token in the next query. An empty continuation token is returned if there are no subsequent pages.", + "operationId": "GetApplicationTypeInfoListByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "List of application types in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/$/Provision": { + "post": { + "operationId": "ProvisionApplicationType", + "summary": "Provisions or registers a Service Fabric application type with the cluster using the '.sfpkg' package in the external store or using the application package in the image store.", + "description": "Provisions a Service Fabric application type with the cluster. The provision is required before any new applications can be instantiated.\nThe provision operation can be performed either on the application package specified by the relativePathInImageStore, or by using the URI of the external '.sfpkg'.", + "tags": [ + "ApplicationType" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ProvisionApplicationTypeDescriptionBaseRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful provision will return 200 status code." + }, + "202": { + "description": "A 202 status code indicates the operation was accepted and the provision operation has been initiated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/Unprovision": { + "post": { + "operationId": "UnprovisionApplicationType", + "summary": "Removes or unregisters a Service Fabric application type from the cluster.", + "description": "This operation can only be performed if all application instances of the application type have been deleted. Once the application type is unregistered, no new application instances can be created for this particular application type.", + "tags": [ + "ApplicationType" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/UnprovisionApplicationTypeRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful provision will return 200 status code." + }, + "202": { + "description": "A 202 status code indicates the operation was accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes": { + "get": { + "summary": "Gets the list containing the information about service types that are supported by a provisioned application type in a Service Fabric cluster.", + "description": "Gets the list containing the information about service types that are supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned.", + "operationId": "GetServiceTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "x-ms-examples": { + "Get information about all nodes.": { + "$ref": "./examples/GetServiceTypeInfoList-1.json" + } + }, + "responses": { + "200": { + "description": "List of service types that are supported by a provisioned application type.", + "schema": { + "$ref": "#/definitions/ServiceTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes/{serviceTypeName}": { + "get": { + "summary": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster.", + "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specified service type is not found in the cluster.", + "operationId": "GetServiceTypeInfoByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "x-ms-examples": { + "Get information about all nodes.": { + "$ref": "./examples/GetServiceTypeInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "A specific service type which supported by a provisioned application type.", + "schema": { + "$ref": "#/definitions/ServiceTypeInfo" + } + }, + "204": { + "description": "A 204 response is returned if the specified service type is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetServiceManifest": { + "get": { + "summary": "Gets the manifest describing a service type.", + "description": "Gets the manifest describing a service type. The response contains the service manifest XML as a string.", + "operationId": "GetServiceManifest", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "Information about the service type.", + "schema": { + "$ref": "#/definitions/ServiceTypeManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServiceTypes": { + "get": { + "summary": "Gets the list containing the information about service types from the applications deployed on a node in a Service Fabric cluster.", + "description": "Gets the list containing the information about service types from the applications deployed on a node in a Service Fabric cluster. The response includes the name of the service type, its registration status, the code package that registered it and activation ID of the service package.", + "operationId": "GetDeployedServiceTypeInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployedServiceType_ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "List of information about service types of an application deployed on a node.", + "schema": { + "$ref": "#/definitions/DeployedServiceTypeInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServiceTypes/{serviceTypeName}": { + "get": { + "summary": "Gets the information about a specified service type of the application deployed on a node in a Service Fabric cluster.", + "description": "Gets the list containing the information about a specific service type from the applications deployed on a node in a Service Fabric cluster. The response includes the name of the service type, its registration status, the code package that registered it and activation ID of the service package. Each entry represents one activation of a service type, differentiated by the activation ID.", + "operationId": "GetDeployedServiceTypeInfoByName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployedServiceType_ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ServiceType" + ], + "responses": { + "200": { + "description": "Information about service types of an application deployed on a node.", + "schema": { + "$ref": "#/definitions/DeployedServiceTypeInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified service type of the application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/$/Create": { + "post": { + "summary": "Creates a Service Fabric application.", + "description": "Creates a Service Fabric application using the specified description.", + "operationId": "CreateApplication", + "x-ms-examples": { + "Create application.": { + "$ref": "./examples/CreateApplication-1.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "201": { + "description": "A successful response means that the application creation has been started. Use GetApplication operation to get the status of the application. Once GetApplicationInfo successfully returns application information, the application is created. If the application has default services those may be in the process of being created. Use GetServiceInfo operation to get the status of the service within the application." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric application.", + "description": "An application must be created before it can be deleted. Deleting an application will delete all services that are part of that application. By default, Service Fabric will try to close service replicas in a graceful manner and then delete the service. However, if a service is having issues closing the replica gracefully, the delete operation may take a long time or get stuck. Use the optional ForceRemove flag to skip the graceful close sequence and forcefully delete the application and all of its services.", + "operationId": "DeleteApplication", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetLoadInformation": { + "get": { + "summary": "Gets load information about a Service Fabric application.", + "description": "Returns the load information about the application that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, minimum nodes, maximum nodes, the number of nodes the application is occupying currently, and application load metric information about the application.", + "operationId": "GetApplicationLoadInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "Information about the application load.", + "schema": { + "$ref": "#/definitions/ApplicationLoadInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications": { + "get": { + "summary": "Gets the list of applications created in the Service Fabric cluster that match the specified filters.", + "description": "Gets the information about the applications that were created or in the process of being created in the Service Fabric cluster and match the specified filters. The response includes the name, type, status, parameters, and other details about the application. If the applications do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. Filters ApplicationTypeName and ApplicationDefinitionKindFilter cannot be specified at the same time.", + "operationId": "GetApplicationInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationDefinitionKindFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationInfoList-2.json" + } + }, + "responses": { + "200": { + "description": "List of applications created in the cluster.", + "schema": { + "$ref": "#/definitions/PagedApplicationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}": { + "get": { + "summary": "Gets information about a Service Fabric application.", + "description": "Returns the information about the application that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, type, status, parameters, and other details about the application.", + "operationId": "GetApplicationInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ExcludeApplicationParametersOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "x-ms-examples": { + "Get a specific application by application id": { + "$ref": "./examples/GetApplicationInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "Information about the application.", + "schema": { + "$ref": "#/definitions/ApplicationInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the service fabric application.", + "description": "Returns the heath state of the service fabric application. The response reports either Ok, Error or Warning health state. If the entity is not found in the health store, it will return Error.", + "operationId": "GetApplicationHealth", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServicesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested application health information.", + "schema": { + "$ref": "#/definitions/ApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetApplicationHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric application using the specified policy.", + "description": "Gets the health of a Service Fabric application. Use EventsHealthStateFilter to filter the collection of health events reported on the node based on the health state. Use ClusterHealthPolicies to override the health policies used to evaluate the health.", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedApplicationsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServicesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested node health information.", + "schema": { + "$ref": "#/definitions/ApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/ReportHealth": { + "post": { + "operationId": "ReportApplicationHealth", + "summary": "Sends a health report on the Service Fabric application.", + "description": "Reports health state of the specified Service Fabric application. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Application, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get application health and check that the report appears in the HealthEvents section.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/Upgrade": { + "post": { + "summary": "Starts upgrading an application in the Service Fabric cluster.", + "description": "Validates the supplied application upgrade parameters and starts upgrading the application if the parameters are valid.", + "operationId": "StartApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application upgrade has started. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetUpgradeProgress": { + "get": { + "summary": "Gets details for the latest upgrade performed on this application.", + "description": "Returns information about the state of the latest application upgrade along with details to aid debugging application health issues.", + "operationId": "GetApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "The application upgrade details.", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/UpdateUpgrade": { + "post": { + "summary": "Updates an ongoing application upgrade in the Service Fabric cluster.", + "description": "Updates the parameters of an ongoing application upgrade from the ones specified at the time of starting the application upgrade. This may be required to mitigate stuck application upgrades due to incorrect parameters or issues in the application to make progress.", + "operationId": "UpdateApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationUpgradeUpdateDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application upgrade has updated with the specified parameters. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/MoveToNextUpgradeDomain": { + "post": { + "summary": "Resumes upgrading an application in the Service Fabric cluster.", + "description": "Resumes an unmonitored manual Service Fabric application upgrade. Service Fabric upgrades one upgrade domain at a time. For unmonitored manual upgrades, after Service Fabric finishes an upgrade domain, it waits for you to call this API before proceeding to the next upgrade domain.", + "operationId": "ResumeApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ResumeApplicationUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application upgrade has been resumed in the specified upgrade domain. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/RollbackUpgrade": { + "post": { + "summary": "Starts rolling back the currently on-going upgrade of an application in the Service Fabric cluster.", + "description": "Starts rolling back the current application upgrade to the previous version. This API can only be used to roll back the current in-progress upgrade that is rolling forward to new version. If the application is not currently being upgraded use StartApplicationUpgrade API to upgrade it to desired version, including rolling back to a previous version.", + "operationId": "RollbackApplicationUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful response means that the application has started to roll back. Use GetApplicationUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications": { + "get": { + "operationId": "GetDeployedApplicationInfoList", + "summary": "Gets the list of applications deployed on a Service Fabric node.", + "description": "Gets the list of applications deployed on a Service Fabric node. The results do not include information about deployed system applications unless explicitly queried for by ID. Results encompass deployed applications in active, activating, and downloading states. This query requires that the node name corresponds to a node on the cluster. The query fails if the provided node name does not point to any active Service Fabric nodes on the cluster.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeHealthStateOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetDeployedApplicationInfoList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetDeployedApplicationInfoList-2.json" + }, + "Include health state in the result": { + "$ref": "./examples/GetDeployedApplicationInfoList-3.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed application information.", + "schema": { + "$ref": "#/definitions/PagedDeployedApplicationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}": { + "get": { + "operationId": "GetDeployedApplicationInfo", + "summary": "Gets the information about an application deployed on a Service Fabric node.", + "description": "This query returns system application information if the application ID provided is for system application. Results encompass deployed applications in active, activating, and downloading states. This query requires that the node name corresponds to a node on the cluster. The query fails if the provided node name does not point to any active Service Fabric nodes on the cluster.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-1_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/IncludeHealthStateOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get a specific deployed application by application ID and include the health state in the result": { + "$ref": "./examples/GetDeployedApplicationInfoByName-1.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the information about the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetHealth": { + "get": { + "operationId": "GetDeployedApplicationHealth", + "summary": "Gets the information about health of an application deployed on a Service Fabric node.", + "description": "Gets the information about health of an application deployed on a Service Fabric node. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed application based on health state. Use DeployedServicePackagesHealthStateFilter to optionally filter for DeployedServicePackageHealth children based on health state.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedServicePackagesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetDeployedApplicationHealthUsingPolicy", + "summary": "Gets the information about health of an application deployed on a Service Fabric node. using the specified policy.", + "description": "Gets the information about health of an application deployed on a Service Fabric node using the specified policy. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed application based on health state. Use DeployedServicePackagesHealthStateFilter to optionally filter for DeployedServicePackageHealth children based on health state. Use ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the deployed application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/DeployedServicePackagesHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Application" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed application.", + "schema": { + "$ref": "#/definitions/DeployedApplicationHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/ReportHealth": { + "post": { + "operationId": "ReportDeployedApplicationHealth", + "summary": "Sends a health report on the Service Fabric application deployed on a Service Fabric node.", + "description": "Reports health state of the application deployed on a Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get deployed application health and check that the report appears in the HealthEvents section.", + "tags": [ + "Application" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ApplicationTypes/{applicationTypeName}/$/GetApplicationManifest": { + "get": { + "summary": "Gets the manifest describing an application type.", + "description": "The response contains the application manifest XML as a string.", + "operationId": "GetApplicationManifest", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationTypeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationTypeVersionRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ApplicationType" + ], + "responses": { + "200": { + "description": "Information about the node.", + "schema": { + "$ref": "#/definitions/ApplicationTypeManifest" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices": { + "get": { + "summary": "Gets the information about all services belonging to the application specified by the application ID.", + "description": "Returns the information about all services belonging to the application specified by the application ID.", + "operationId": "GetServiceInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceTypeNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "List of services in the cluster for the specified application.", + "schema": { + "$ref": "#/definitions/PagedServiceInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/{serviceId}": { + "get": { + "summary": "Gets the information about the specific service belonging to the Service Fabric application.", + "description": "Returns the information about the specified service belonging to the specified Service Fabric application.", + "operationId": "GetServiceInfo", + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the specified service.", + "schema": { + "$ref": "#/definitions/ServiceInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified service is not part of the specified application." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetApplicationName": { + "get": { + "summary": "Gets the name of the Service Fabric application for a service.", + "description": "Gets the name of the application for the specified service. A 404 FABRIC_E_SERVICE_DOES_NOT_EXIST error is returned if a service with the provided service ID does not exist.", + "operationId": "GetApplicationNameInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the name of the application for the specified service.", + "schema": { + "$ref": "#/definitions/ApplicationNameInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/$/Create": { + "post": { + "operationId": "CreateService", + "summary": "Creates the specified Service Fabric service.", + "description": "This api allows creating a new Service Fabric stateless or stateful service under a specified Service Fabric application. The description for creating the service includes partitioning information and optional properties for placement and load balancing. Some of the properties can later be modified using `UpdateService` API.", + "x-ms-examples": { + "Basic stateless service": { + "$ref": "./examples/CreateService-1.json" + }, + "Basic stateful service": { + "$ref": "./examples/CreateService-2.json" + }, + "Stateless service with dns name and auto scaling": { + "$ref": "./examples/CreateService-3.json" + }, + "Stateful service with named partitions and auto scaling": { + "$ref": "./examples/CreateService-4.json" + } + }, + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetServices/$/CreateFromTemplate": { + "post": { + "summary": "Creates a Service Fabric service from the service template.", + "description": "Creates a Service Fabric service from the service template defined in the application manifest. A service template contains the properties that will be same for the service instance of the same type. The API allows overriding the properties that are usually different for different services of the same service type.", + "operationId": "CreateServiceFromTemplate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/CreateServiceFromTemplateRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric service.", + "description": "A service must be created before it can be deleted. By default, Service Fabric will try to close service replicas in a graceful manner and then delete the service. However, if the service is having issues closing the replica gracefully, the delete operation may take a long time or get stuck. Use the optional ForceRemove flag to skip the graceful close sequence and forcefully delete the service.", + "operationId": "DeleteService", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/Update": { + "post": { + "operationId": "UpdateService", + "summary": "Updates a Service Fabric service using the specified update description.", + "description": "This API allows updating properties of a running Service Fabric service. The set of properties that can be updated are a subset of the properties that were specified at the time of creating the service. The current set of properties can be obtained using `GetServiceDescription` API. Note that updating the properties of a running service is different than upgrading your application using `StartApplicationUpgrade` API. The upgrade is a long running background operation that involves moving the application from one version to another, one upgrade domain at a time, whereas update applies the new properties immediately to the service.", + "x-ms-examples": { + "Stateless service": { + "$ref": "./examples/UpdateService-1.json" + }, + "Stateful service": { + "$ref": "./examples/UpdateService-2.json" + } + }, + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceUpdateDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetDescription": { + "get": { + "summary": "Gets the description of an existing Service Fabric service.", + "description": "Gets the description of an existing Service Fabric service. A service must be created before its description can be obtained.", + "operationId": "GetServiceDescription", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/ServiceDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the specified Service Fabric service.", + "description": "Gets the health information of the specified service.\nUse EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse PartitionsHealthStateFilter to filter the collection of partitions returned.\nIf you specify a service that does not exist in the health store, this request returns an error.", + "operationId": "GetServiceHealth", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the specified service.", + "schema": { + "$ref": "#/definitions/ServiceHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "summary": "Gets the health of the specified Service Fabric service, by using the specified health policy.", + "description": "Gets the health information of the specified service.\nIf the application health policy is specified, the health evaluation uses it to get the aggregated health state.\nIf the policy is not specified, the health evaluation uses the application health policy defined in the application manifest, or the default health policy, if no policy is defined in the manifest.\nUse EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse PartitionsHealthStateFilter to filter the collection of partitions returned.\nIf you specify a service that does not exist in the health store, this request returns an error.", + "operationId": "GetServiceHealthUsingPolicy", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the specified service.", + "schema": { + "$ref": "#/definitions/ServiceHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ReportHealth": { + "post": { + "operationId": "ReportServiceHealth", + "summary": "Sends a health report on the Service Fabric service.", + "description": "Reports health state of the specified Service Fabric service. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetServiceHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ResolvePartition": { + "get": { + "operationId": "ResolveService", + "summary": "Resolve a Service Fabric partition.", + "description": "Resolve a Service Fabric service partition to get the endpoints of the service replicas.", + "tags": [ + "Service" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionKeyTypeOptionalQueryParam" + }, + { + "$ref": "#/parameters/PartitionKeyValueOptionalQueryParam" + }, + { + "$ref": "#/parameters/PreviousRspVersionOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/ResolvedServicePartition" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetUnplacedReplicaInformation": { + "get": { + "summary": "Gets the information about unplaced replica of the service.", + "description": "Returns the information about the unplaced replicas of the service.\nIf PartitionId is specified, then result will contain information only about unplaced replicas for that partition.\nIf PartitionId is not specified, then result will contain information about unplaced replicas for all partitions of that service.\nIf OnlyQueryPrimaries is set to true, then result will contain information only about primary replicas, and will ignore unplaced secondary replicas.", + "operationId": "GetUnplacedReplicaInformation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/OnlyQueryPrimariesOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service" + ], + "responses": { + "200": { + "description": "Information about the specified service.", + "schema": { + "$ref": "#/definitions/UnplacedReplicaInformation" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetPartitions": { + "get": { + "summary": "Gets the list of partitions of a Service Fabric service.", + "description": "The response includes the partition ID, partitioning scheme information, keys supported by the partition, status, health, and other details about the partition.", + "operationId": "GetPartitionInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "List of partitions of a Service Fabric service.", + "schema": { + "$ref": "#/definitions/PagedServicePartitionInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}": { + "get": { + "summary": "Gets the information about a Service Fabric partition.", + "description": "Gets the information about the specified partition. The response includes the partition ID, partitioning scheme information, keys supported by the partition, status, health, and other details about the partition.", + "operationId": "GetPartitionInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the specified partition.", + "schema": { + "$ref": "#/definitions/ServicePartitionInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified partitionId is not found in the cluster." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetServiceName": { + "get": { + "summary": "Gets the name of the Service Fabric service for a partition.", + "description": "Gets name of the service for the specified partition. A 404 error is returned if the partition ID does not exist in the cluster.", + "operationId": "GetServiceNameInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the name of the service for the specified partition.", + "schema": { + "$ref": "#/definitions/ServiceNameInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetHealth": { + "get": { + "summary": "Gets the health of the specified Service Fabric partition.", + "description": "Use EventsHealthStateFilter to filter the collection of health events reported on the service based on the health state.\nUse ReplicasHealthStateFilter to filter the collection of ReplicaHealthState objects on the partition.\nIf you specify a partition that does not exist in the health store, this request returns an error.", + "operationId": "GetPartitionHealth", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ReplicasHealthStateFilerOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information about the specified partition.", + "schema": { + "$ref": "#/definitions/PartitionHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "summary": "Gets the health of the specified Service Fabric partition, by using the specified health policy.", + "description": "Gets the health information of the specified partition.\nIf the application health policy is specified, the health evaluation uses it to get the aggregated health state.\nIf the policy is not specified, the health evaluation uses the application health policy defined in the application manifest, or the default health policy, if no policy is defined in the manifest.\nUse EventsHealthStateFilter to filter the collection of health events reported on the partition based on the health state.\nUse ReplicasHealthStateFilter to filter the collection of ReplicaHealthState objects on the partition. Use ApplicationHealthPolicy in the POST body to override the health policies used to evaluate the health.\nIf you specify a partition that does not exist in the health store, this request returns an error.", + "operationId": "GetPartitionHealthUsingPolicy", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ReplicasHealthStateFilerOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/ExcludeHealthStatisticsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information about the specified partition.", + "schema": { + "$ref": "#/definitions/PartitionHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ReportHealth": { + "post": { + "operationId": "ReportPartitionHealth", + "summary": "Sends a health report on the Service Fabric partition.", + "description": "Reports health state of the specified Service Fabric partition. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Partition, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetPartitionHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetLoadInformation": { + "get": { + "summary": "Gets the load information of the specified Service Fabric partition.", + "description": "Returns information about the load of a specified partition.\nThe response includes a list of load reports for a Service Fabric partition.\nEach report includes the load metric name, value, and last reported time in UTC.", + "operationId": "GetPartitionLoadInformation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Partition" + ], + "responses": { + "200": { + "description": "Information about the specified partition's last reported load metrics.", + "schema": { + "$ref": "#/definitions/PartitionLoadInformation" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ResetLoad": { + "post": { + "operationId": "ResetPartitionLoad", + "summary": "Resets the current load of a Service Fabric partition.", + "description": "Resets the current load of a Service Fabric partition to the default load for the service.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Recover": { + "post": { + "operationId": "RecoverPartition", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover a specific partition that is currently stuck in quorum loss.", + "description": "This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/$/{serviceId}/$/GetPartitions/$/Recover": { + "post": { + "operationId": "RecoverServicePartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover the specified service that is currently stuck in quorum loss.", + "description": "Indicates to the Service Fabric cluster that it should attempt to recover the specified service that is currently stuck in quorum loss. This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RecoverSystemPartitions": { + "post": { + "operationId": "RecoverSystemPartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover the system services that are currently stuck in quorum loss.", + "description": "Indicates to the Service Fabric cluster that it should attempt to recover the system services that are currently stuck in quorum loss. This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/RecoverAllPartitions": { + "post": { + "operationId": "RecoverAllPartitions", + "summary": "Indicates to the Service Fabric cluster that it should attempt to recover any services (including system services) which are currently stuck in quorum loss.", + "description": "This operation should only be performed if it is known that the replicas that are down cannot be recovered. Incorrect use of this API can cause potential data loss.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/MovePrimaryReplica": { + "post": { + "operationId": "MovePrimaryReplica", + "summary": "Moves the primary replica of a partition of a stateful service.", + "description": "This command moves the primary replica of a partition of a stateful service, respecting all constraints.\nIf NodeName parameter is specified, primary will be moved to the specified node (if constraints allow it).\nIf NodeName parameter is not specified, primary replica will be moved to a random node in the cluster.\nIf IgnoreConstraints parameter is specified and set to true, then primary will be moved regardless of the constraints.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/NodeNameOptionalParam" + }, + { + "$ref": "#/parameters/IgnoreConstraintsOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/MoveSecondaryReplica": { + "post": { + "operationId": "MoveSecondaryReplica", + "summary": "Moves the secondary replica of a partition of a stateful service.", + "description": "This command moves the secondary replica of a partition of a stateful service, respecting all constraints.\nCurrentNodeName parameter must be specified to identify the replica that is moved.\nSource node name must be specified, but new node name can be omitted, and in that case replica is moved to a random node.\nIf IgnoreConstraints parameter is specified and set to true, then secondary will be moved regardless of the constraints.", + "tags": [ + "Partition" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/CurrentNodeNameRequiredParam" + }, + { + "$ref": "#/parameters/NewNodeNameOptionalParam" + }, + { + "$ref": "#/parameters/IgnoreConstraintsOptionalParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation request will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/CreateRepairTask": { + "post": { + "operationId": "CreateRepairTask", + "summary": "Creates a new repair task.", + "description": "For clusters that have the Repair Manager Service configured,\nthis API provides a way to create repair tasks that run automatically or manually.\nFor repair tasks that run automatically, an appropriate repair executor\nmust be running for each repair action to run automatically.\nThese are currently only available in specially-configured Azure Cloud Services.\n\nTo create a manual repair task, provide the set of impacted node names and the\nexpected impact. When the state of the created repair task changes to approved,\nyou can safely perform repair actions on those nodes.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the created repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/CancelRepairTask": { + "post": { + "operationId": "CancelRepairTask", + "summary": "Requests the cancellation of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskCancelDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.\nSuccess indicates that the cancellation request was recorded, but does not guarantee that the repair task will be cancelled.\nClients may use the State property of the repair task to determine the current state of the repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/DeleteRepairTask": { + "post": { + "operationId": "DeleteRepairTask", + "summary": "Deletes a completed repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskDeleteDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/GetRepairTaskList": { + "get": { + "operationId": "GetRepairTaskList", + "summary": "Gets a list of repair tasks matching the given filters.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskIdFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskExecutorFilterOptionalQueryParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides a list of repair tasks matching all of the given filters.", + "schema": { + "$ref": "#/definitions/RepairTaskList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/ForceApproveRepairTask": { + "post": { + "operationId": "ForceApproveRepairTask", + "summary": "Forces the approval of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskApproveDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateRepairTaskHealthPolicy": { + "post": { + "operationId": "UpdateRepairTaskHealthPolicy", + "summary": "Updates the health policy of the given repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskUpdateHealthPolicyDescriptionRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/UpdateRepairExecutionState": { + "post": { + "operationId": "UpdateRepairExecutionState", + "summary": "Updates the execution state of a repair task.", + "description": "This API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/RepairTaskRequiredBodyParam" + } + ], + "tags": [ + "RepairManagement" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.\nThe response body provides information about the updated repair task.", + "schema": { + "$ref": "#/definitions/RepairTaskUpdateInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas": { + "get": { + "summary": "Gets the information about replicas of a Service Fabric service partition.", + "description": "The GetReplicas endpoint returns information about the replicas of the specified partition. The response includes the ID, role, status, health, node name, uptime, and other details about the replica.", + "operationId": "GetReplicaInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "Information about the replicas of the specified partition.", + "schema": { + "$ref": "#/definitions/PagedReplicaInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}": { + "get": { + "summary": "Gets the information about a replica of a Service Fabric partition.", + "description": "The response includes the ID, role, status, health, node name, uptime, and other details about the replica.", + "operationId": "GetReplicaInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "Information about the specified replicas of the specified partition of a Service Fabric service.", + "schema": { + "$ref": "#/definitions/ReplicaInfo" + } + }, + "204": { + "description": "An empty response is returned if the specified replicaId is not a replica of the specified partition." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}/$/GetHealth": { + "get": { + "operationId": "GetReplicaHealth", + "summary": "Gets the health of a Service Fabric stateful service replica or stateless service instance.", + "description": "Gets the health of a Service Fabric replica.\nUse EventsHealthStateFilter to filter the collection of health events reported on the replica based on the health state.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested replica health.", + "schema": { + "$ref": "#/definitions/ReplicaHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetReplicaHealthUsingPolicy", + "summary": "Gets the health of a Service Fabric stateful service replica or stateless service instance using the specified policy.", + "description": "Gets the health of a Service Fabric stateful service replica or stateless service instance.\nUse EventsHealthStateFilter to filter the collection of health events reported on the cluster based on the health state.\nUse ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Replica" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested replica health information.", + "schema": { + "$ref": "#/definitions/ReplicaHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetReplicas/{replicaId}/$/ReportHealth": { + "post": { + "operationId": "ReportReplicaHealth", + "summary": "Sends a health report on the Service Fabric replica.", + "description": "Reports health state of the specified Service Fabric replica. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Replica, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, run GetReplicaHealth and check that the report appears in the HealthEvents section.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaHealthReportServiceKindRequiredQueryParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetReplicas": { + "get": { + "operationId": "GetDeployedServiceReplicaInfoList", + "summary": "Gets the list of replicas deployed on a Service Fabric node.", + "description": "Gets the list containing the information about replicas deployed on a Service Fabric node. The information include partition ID, replica ID, status of the replica, name of the service, name of the service type, and other information. Use PartitionId or ServiceManifestName query parameters to return information about the deployed replicas matching the specified values for those parameters.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified applicationId is not found on the specified node. An empty response is also returned if there are no replicas matching the specified filter values for PartitionId or ServiceManifestName query parameters." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/GetDetail": { + "get": { + "operationId": "GetDeployedServiceReplicaDetailInfo", + "summary": "Gets the details of replica deployed on a Service Fabric node.", + "description": "Gets the details of the replica deployed on a Service Fabric node. The information includes service kind, service name, current service operation, current service operation start date time, partition ID, replica/instance ID, reported load, and other information.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas": { + "get": { + "operationId": "GetDeployedServiceReplicaDetailInfoByPartitionId", + "summary": "Gets the details of replica deployed on a Service Fabric node.", + "description": "Gets the details of the replica deployed on a Service Fabric node. The information includes service kind, service name, current service operation, current service operation start date time, partition ID, replica/instance ID, reported load, and other information.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service replica information.", + "schema": { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/Restart": { + "post": { + "operationId": "RestartReplica", + "summary": "Restarts a service replica of a persisted service running on a node.", + "description": "Restarts a service replica of a persisted service running on a node. Warning - There are no safety checks performed when this API is used. Incorrect use of this API can lead to availability loss for stateful services.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the replica on the node and it is in the process of restarting." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetPartitions/{partitionId}/$/GetReplicas/{replicaId}/$/Delete": { + "post": { + "operationId": "RemoveReplica", + "summary": "Removes a service replica running on a node.", + "description": "This API simulates a Service Fabric replica failure by removing a replica from a Service Fabric cluster. The removal closes the replica, transitions the replica to the role None, and then removes all of the state information of the replica from the cluster. This API tests the replica state removal path, and simulates the report fault permanent path through client APIs. Warning - There are no safety checks performed when this API is used. Incorrect use of this API can lead to data loss for stateful services. In addition, the forceRemove flag impacts all other replicas hosted in the same process.", + "tags": [ + "Replica" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ForceRemoveReplicaOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code. A successful operation means that the restart command was received by the replica on the node and it is in the process of restarting." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages": { + "get": { + "operationId": "GetDeployedServicePackageInfoList", + "summary": "Gets the list of service packages deployed on a Service Fabric node.", + "description": "Returns the information about the service packages deployed on a Service Fabric node for the given application.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service packages information.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}": { + "get": { + "operationId": "GetDeployedServicePackageInfoListByName", + "summary": "Gets the list of service packages deployed on a Service Fabric node matching exactly the specified name.", + "description": "Returns the information about the service packages deployed on a Service Fabric node for the given application. These results are of service packages whose name match exactly the service package name specified as the parameter.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed service packages information.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageInfoList" + } + }, + "204": { + "description": "An empty response is returned if the specified service package from the application is not deployed on the node." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}/$/GetHealth": { + "get": { + "operationId": "GetDeployedServicePackageHealth", + "summary": "Gets the information about health of a service package for a specific application deployed for a Service Fabric node and application.", + "description": "Gets the information about health of a service package for a specific application deployed on a Service Fabric node. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed service package based on health state.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed service package for a specific node and application.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "GetDeployedServicePackageHealthUsingPolicy", + "summary": "Gets the information about health of service package for a specific application deployed on a Service Fabric node using the specified policy.", + "description": "Gets the information about health of a service package for a specific application deployed on a Service Fabric node. using the specified policy. Use EventsHealthStateFilter to optionally filter for the collection of HealthEvent objects reported on the deployed service package based on health state. Use ApplicationHealthPolicy to optionally override the health policies used to evaluate the health. This API only uses 'ConsiderWarningAsError' field of the ApplicationHealthPolicy. The rest of the fields are ignored while evaluating the health of the deployed service package.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/EventsHealthStateFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApplicationHealthPolicyOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Service Package" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the health information of the deployed service package for a specific node and application.", + "schema": { + "$ref": "#/definitions/DeployedServicePackageHealth" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetServicePackages/{servicePackageName}/$/ReportHealth": { + "post": { + "operationId": "ReportDeployedServicePackageHealth", + "summary": "Sends a health report on the Service Fabric deployed service package.", + "description": "Reports health state of the service package of the application deployed on a Service Fabric node. The report must contain the information about the source of the health report and property on which it is reported.\nThe report is sent to a Service Fabric gateway Service, which forwards to the health store.\nThe report may be accepted by the gateway, but rejected by the health store after extra validation.\nFor example, the health store may reject the report because of an invalid parameter, like a stale sequence number.\nTo see whether the report was applied in the health store, get deployed service package health and check that the report appears in the HealthEvents section.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServicePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/HealthInformationRequiredBodyParam" + }, + { + "$ref": "#/parameters/ImmediateOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/DeployServicePackage": { + "post": { + "operationId": "DeployServicePackageToNode", + "summary": "Downloads all of the code packages associated with specified service manifest on the specified node.", + "description": "This API provides a way to download code packages including the container images on a specific node outside of the normal application deployment and upgrade path. This is useful for the large code packages and container images to be present on the node before the actual application deployment and upgrade, thus significantly reducing the total time required for the deployment or upgrade.", + "tags": [ + "Service Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/DeployServicePackageToNodeRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages": { + "get": { + "operationId": "GetDeployedCodePackageInfoList", + "summary": "Gets the list of code packages deployed on a Service Fabric node.", + "description": "Gets the list of code packages deployed on a Service Fabric node for the given application.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the list of deployed code packages information.", + "schema": { + "$ref": "#/definitions/DeployedCodePackageInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/Restart": { + "post": { + "operationId": "RestartDeployedCodePackage", + "summary": "Restarts a code package deployed on a Service Fabric node in a cluster.", + "description": "Restarts a code package deployed on a Service Fabric node in a cluster. This aborts the code package process, which will restart all the user service replicas hosted in that process.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RestartDeployedCodePackageRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/ContainerLogs": { + "get": { + "operationId": "GetContainerLogsDeployedOnNode", + "summary": "Gets the container logs for container deployed on a Service Fabric node.", + "description": "Gets the container logs for container deployed on a Service Fabric node for the given code package.", + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TailOptionalQueryParam" + }, + { + "$ref": "#/parameters/PreviousOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get container logs for given code package": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-1.json" + }, + "Get last 10 lines of container logs": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-2.json" + }, + "Get container logs of previous dead container for given code package": { + "$ref": "./examples/GetContainerLogsDeployedOnNode-3.json" + } + }, + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the container logs for container deployed on a Service Fabric node for the given code package.", + "schema": { + "$ref": "#/definitions/ContainerLogs" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Nodes/{nodeName}/$/GetApplications/{applicationId}/$/GetCodePackages/$/ContainerApi": { + "post": { + "operationId": "InvokeContainerApi", + "summary": "Invoke container API on a container deployed on a Service Fabric node.", + "description": "Invoke container API on a container deployed on a Service Fabric node for the given code package.", + "x-ms-examples": { + "Get container logs": { + "$ref": "./examples/InvokeContainerApi.json" + }, + "Update container": { + "$ref": "./examples/InvokeContainerApi_Post.json" + } + }, + "tags": [ + "Code Package" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceManifestNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/CodePackageInstanceIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContainerApiRequiredBodyParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and container API response for a container deployed on a Service Fabric node for the given code package.", + "schema": { + "$ref": "#/definitions/ContainerApiResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/$/Create": { + "put": { + "summary": "Creates a Service Fabric compose deployment.", + "description": "Compose is a file format that describes multi-container applications. This API allows deploying container based applications defined in compose format in a Service Fabric cluster. Once the deployment is created, its status can be tracked via the `GetComposeDeploymentStatus` API.", + "operationId": "CreateComposeDeployment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/CreateComposeDeploymentRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}": { + "get": { + "summary": "Gets information about a Service Fabric compose deployment.", + "description": "Returns the status of the compose deployment that was created or in the process of being created in the Service Fabric cluster and whose name matches the one specified as the parameter. The response includes the name, status, and other details about the deployment.", + "operationId": "GetComposeDeploymentStatus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "Information about the compose deployment.", + "schema": { + "$ref": "#/definitions/ComposeDeploymentStatusInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments": { + "get": { + "summary": "Gets the list of compose deployments created in the Service Fabric cluster.", + "description": "Gets the status about the compose deployments that were created or in the process of being created in the Service Fabric cluster. The response includes the name, status, and other details about the compose deployments. If the list of deployments do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page.", + "operationId": "GetComposeDeploymentStatusList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "List of status of compose deployments in the cluster.", + "schema": { + "$ref": "#/definitions/PagedComposeDeploymentStatusInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/GetUpgradeProgress": { + "get": { + "summary": "Gets details for the latest upgrade performed on this Service Fabric compose deployment.", + "description": "Returns the information about the state of the compose deployment upgrade along with details to aid debugging application health issues.", + "operationId": "GetComposeDeploymentUpgradeProgress", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "Details about the compose deployment upgrade.", + "schema": { + "$ref": "#/definitions/ComposeDeploymentUpgradeProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/Delete": { + "post": { + "summary": "Deletes an existing Service Fabric compose deployment from cluster.", + "description": "Deletes an existing Service Fabric compose deployment.", + "operationId": "RemoveComposeDeployment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful operation will return 202 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/Upgrade": { + "post": { + "summary": "Starts upgrading a compose deployment in the Service Fabric cluster.", + "description": "Validates the supplied upgrade parameters and starts upgrading the deployment if the parameters are valid.", + "operationId": "StartComposeDeploymentUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ComposeDeploymentUpgradeDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "202": { + "description": "A successful response means that the upgrade has started. Use GetComposeDeploymentUpgrade operation to get the status of the upgrade." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ComposeDeployments/{deploymentName}/$/RollbackUpgrade": { + "post": { + "summary": "Starts rolling back a compose deployment upgrade in the Service Fabric cluster.", + "description": "Rollback a service fabric compose deployment upgrade.", + "operationId": "StartRollbackComposeDeploymentUpgrade", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DeploymentNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Compose Deployment" + ], + "responses": { + "200": { + "description": "A successful response means that the rollback has started. Use GetComposeDeploymentUpgrade operation to get the status of the rollback." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos": { + "get": { + "operationId": "GetChaos", + "summary": "Get the status of Chaos.", + "description": "Get the status of Chaos indicating whether or not Chaos is running, the Chaos parameters used for running Chaos and the status of the Chaos Schedule.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the status of Chaos.", + "schema": { + "$ref": "#/definitions/Chaos" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/$/Start": { + "post": { + "operationId": "StartChaos", + "summary": "Starts Chaos in the cluster.", + "description": "If Chaos is not already running in the cluster, it starts Chaos with the passed in Chaos parameters.\nIf Chaos is already running when this call is made, the call fails with the error code FABRIC_E_CHAOS_ALREADY_RUNNING.\nRefer to the article [Induce controlled Chaos in Service Fabric clusters](https://docs.microsoft.com/azure/service-fabric/service-fabric-controlled-chaos) for more details.", + "tags": [ + "Chaos" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ChaosParametersRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/$/Stop": { + "post": { + "operationId": "StopChaos", + "summary": "Stops Chaos if it is running in the cluster and put the Chaos Schedule in a stopped state.", + "description": "Stops Chaos from executing new faults. In-flight faults will continue to execute until they are complete. The current Chaos Schedule is put into a stopped state.\nOnce a schedule is stopped, it will stay in the stopped state and not be used to Chaos Schedule new runs of Chaos. A new Chaos Schedule must be set in order to resume scheduling.", + "tags": [ + "Chaos" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/Events": { + "get": { + "operationId": "GetChaosEvents", + "summary": "Gets the next segment of the Chaos events based on the continuation token or the time range.", + "description": "To get the next segment of the Chaos events, you can specify the ContinuationToken. To get the start of a new segment of Chaos events, you can specify the time range\nthrough StartTimeUtc and EndTimeUtc. You cannot specify both the ContinuationToken and the time range in the same call.\nWhen there are more than 100 Chaos events, the Chaos events are returned in multiple segments where a segment contains no more than 100 Chaos events and to get the next segment you make a call to this API with the continuation token.", + "x-ms-examples": { + "Get Chaos events given a time range": { + "$ref": "./examples/GetChaosEvents.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "Next segment of Chaos events.", + "schema": { + "$ref": "#/definitions/ChaosEventsSegment" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Tools/Chaos/Schedule": { + "get": { + "operationId": "GetChaosSchedule", + "summary": "Get the Chaos Schedule defining when and how to run Chaos.", + "description": "Gets the version of the Chaos Schedule in use and the Chaos Schedule that defines when and how to run Chaos.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the schedule description including a Chaos Schedule used by Chaos and the version the Chaos Schedule is on.", + "schema": { + "$ref": "#/definitions/ChaosScheduleDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "post": { + "operationId": "PostChaosSchedule", + "summary": "Set the schedule used by Chaos.", + "description": "Chaos will automatically schedule runs based on the Chaos Schedule.\nThe Chaos Schedule will be updated if the provided version matches the version on the server.\nWhen updating the Chaos Schedule, the version on the server is incremented by 1.\nThe version on the server will wrap back to 0 after reaching a large number.\nIf Chaos is running when this call is made, the call will fail.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ChaosScheduleRequiredBodyParam" + } + ], + "tags": [ + "Chaos" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}": { + "put": { + "summary": "Uploads contents of the file to the image store.", + "description": "Uploads contents of the file to the image store. Use this API if the file is small enough to upload again if the connection fails. The file's data needs to be added to the request body. The contents will be uploaded to the specified path. Image store service uses a mark file to indicate the availability of the folder. The mark file is an empty file named \"_.dir\". The mark file is generated by the image store service when all files in a folder are uploaded. When using File-by-File approach to upload application package in REST, the image store service isn't aware of the file hierarchy of the application package; you need to create a mark file per folder and upload it last, to let the image store service know that the folder is complete.", + "operationId": "UploadFile", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "If the upload request succeeds, the server returns the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "summary": "Gets the image store content information.", + "description": "Returns the information about the image store content at the specified contentPath. The contentPath is relative to the root of the image store.", + "operationId": "GetImageStoreContent", + "x-ms-examples": { + "Get information about image store content under a given relative path": { + "$ref": "./examples/GetImageStoreContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store content information.", + "schema": { + "$ref": "#/definitions/ImageStoreContent" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes existing image store content.", + "description": "Deletes existing image store content being found within the given image store relative path. This command can be used to delete uploaded application packages once they are provisioned.", + "operationId": "DeleteImageStoreContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore": { + "get": { + "summary": "Gets the content information at the root of the image store.", + "description": "Returns the information about the image store content at the root of the image store.", + "operationId": "GetImageStoreRootContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store content information.", + "schema": { + "$ref": "#/definitions/ImageStoreContent" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/Copy": { + "post": { + "summary": "Copies image store content internally", + "description": "Copies the image store content from the source image store relative path to the destination image store relative path.", + "operationId": "CopyImageStoreContent", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreCopyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/DeleteUploadSession": { + "delete": { + "summary": "Cancels an image store upload session.", + "description": "The DELETE request will cause the existing upload session to expire and remove any previously uploaded file chunks.", + "operationId": "DeleteImageStoreUploadSession", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/CommitUploadSession": { + "post": { + "summary": "Commit an image store upload session.", + "description": "When all file chunks have been uploaded, the upload session needs to be committed explicitly to complete the upload. Image store preserves the upload session until the expiration time, which is 30 minutes after the last chunk received. ", + "operationId": "CommitImageStoreUploadSession", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "If the commit request succeeds, the server returns the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/GetUploadSession": { + "get": { + "summary": "Get the image store upload session by ID.", + "description": "Gets the image store upload session identified by the given ID. User can query the upload session at any time during uploading. ", + "operationId": "GetImageStoreUploadSessionById", + "x-ms-examples": { + "Get information about image store upload session by a given ID": { + "$ref": "./examples/GetUploadSessionById.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store upload session information.", + "schema": { + "$ref": "#/definitions/UploadSession" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/GetUploadSession": { + "get": { + "summary": "Get the image store upload session by relative path.", + "description": "Gets the image store upload session associated with the given image store relative path. User can query the upload session at any time during uploading. ", + "operationId": "GetImageStoreUploadSessionByPath", + "x-ms-examples": { + "Get information about image store upload session by a given relative path": { + "$ref": "./examples/GetUploadSessionByPath.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested image store upload session information.", + "schema": { + "$ref": "#/definitions/UploadSession" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/UploadChunk": { + "put": { + "summary": "Uploads a file chunk to the image store relative path.", + "description": "Uploads a file chunk to the image store with the specified upload session ID and image store relative path. This API allows user to resume the file upload operation. user doesn't have to restart the file upload from scratch whenever there is a network interruption. Use this option if the file size is large.\n\nTo perform a resumable file upload, user need to break the file into multiple chunks and upload these chunks to the image store one-by-one. Chunks don't have to be uploaded in order. If the file represented by the image store relative path already exists, it will be overwritten when the upload session commits.", + "operationId": "UploadFileChunk", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/UploadSessionIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/UploadFileChunkContentRangeHeaderParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return the HTTP 200 OK status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/FolderSize": { + "get": { + "summary": "Get the folder size at the root of the image store.", + "description": "Returns the total size of files at the root and children folders in image store.", + "operationId": "GetImageStoreRootFolderSize", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested folder size in image store.", + "schema": { + "$ref": "#/definitions/FolderSizeInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/{contentPath}/$/FolderSize": { + "get": { + "summary": "Get the size of a folder in image store", + "description": "Gets the total size of file under a image store folder, specified by contentPath. The contentPath is relative to the root of the image store.", + "operationId": "GetImageStoreFolderSize", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ImageStoreContentPathRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested folder size in image store.", + "schema": { + "$ref": "#/definitions/FolderSizeInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/ImageStore/$/Info": { + "get": { + "summary": "Gets the overall ImageStore information", + "description": "Returns information about the primary ImageStore replica, such as disk capacity and available disk space at the node it is on, and several categories of the ImageStore's file system usage.", + "operationId": "GetImageStoreInfo", + "x-ms-examples": { + "Gets the overall ImageStore information": { + "$ref": "./examples/GetImageStoreInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-5_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "ImageStore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the requested ImageStore info", + "schema": { + "$ref": "#/definitions/ImageStoreInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/InvokeInfrastructureCommand": { + "post": { + "operationId": "InvokeInfrastructureCommand", + "summary": "Invokes an administrative command on the given Infrastructure Service instance.", + "description": "For clusters that have one or more instances of the Infrastructure Service configured,\nthis API provides a way to send infrastructure-specific commands to a particular\ninstance of the Infrastructure Service.\n\nAvailable commands and their corresponding response formats vary depending upon\nthe infrastructure on which the cluster is running.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureCommandRequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureServiceIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Infrastructure" + ], + "responses": { + "200": { + "description": "The response from the infrastructure service. The response format is a JSON stream.\nThe contents of the response depend on which command was issued.", + "schema": { + "$ref": "#/definitions/InfrastructureServiceResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/$/InvokeInfrastructureQuery": { + "get": { + "operationId": "InvokeInfrastructureQuery", + "summary": "Invokes a read-only query on the given infrastructure service instance.", + "description": "For clusters that have one or more instances of the Infrastructure Service configured,\nthis API provides a way to send infrastructure-specific queries to a particular\ninstance of the Infrastructure Service.\n\nAvailable commands and their corresponding response formats vary depending upon\nthe infrastructure on which the cluster is running.\n\nThis API supports the Service Fabric platform; it is not meant to be used directly from your code.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureCommandRequiredQueryParam" + }, + { + "$ref": "#/parameters/InfrastructureServiceIdOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Infrastructure" + ], + "responses": { + "200": { + "description": "The response from the infrastructure service. The response format is a JSON stream.\nThe contents of the response depend on which command was issued.", + "schema": { + "$ref": "#/definitions/InfrastructureServiceResponse" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartDataLoss": { + "post": { + "operationId": "StartDataLoss", + "summary": "This API will induce data loss for the specified partition. It will trigger a call to the OnDataLossAsync API of the partition.", + "description": "This API will induce data loss for the specified partition. It will trigger a call to the OnDataLoss API of the partition.\nActual data loss will depend on the specified DataLossMode.\n\n- PartialDataLoss - Only a quorum of replicas are removed and OnDataLoss is triggered for the partition but actual data loss depends on the presence of in-flight replication.\n- FullDataLoss - All replicas are removed hence all data is lost and OnDataLoss is triggered.\n\nThis API should only be called with a stateful service as the target.\n\nCalling this API with a system service as the target is not advised.\n\nNote: Once this API has been called, it cannot be reversed. Calling CancelOperation will only stop execution and clean up internal system state.\nIt will not restore data if the command has progressed far enough to cause data loss.\n\nCall the GetDataLossProgress API with the same OperationId to return information on the operation started with this API.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/DataLossModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetDataLossProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetDataLossProgress": { + "get": { + "summary": "Gets the progress of a partition data loss operation started using the StartDataLoss API.", + "description": "Gets the progress of a data loss operation started with StartDataLoss, using the OperationId.", + "operationId": "GetDataLossProgress", + "x-ms-examples": { + "Gets information about a partition data loss operation. In this case the operation has a State of Completed": { + "$ref": "./examples/GetDataLossProgress.json" + }, + "Get information about a partition data loss operation. In this case the operation is a State of Running": { + "$ref": "./examples/GetDataLossProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of the partition data loss operation.", + "schema": { + "$ref": "#/definitions/PartitionDataLossProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartQuorumLoss": { + "post": { + "operationId": "StartQuorumLoss", + "summary": "Induces quorum loss for a given stateful service partition.", + "description": "This API is useful for a temporary quorum loss situation on your service.\n\nCall the GetQuorumLossProgress API with the same OperationId to return information on the operation started with this API.\n\nThis can only be called on stateful persisted (HasPersistedState==true) services. Do not use this API on stateless services or stateful in-memory only services.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/QuorumLossModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/QuorumLossDurationRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetQuorumLossProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetQuorumLossProgress": { + "get": { + "summary": "Gets the progress of a quorum loss operation on a partition started using the StartQuorumLoss API.", + "description": "Gets the progress of a quorum loss operation started with StartQuorumLoss, using the provided OperationId.", + "operationId": "GetQuorumLossProgress", + "x-ms-examples": { + "Gets information about a completed quorum loss operation": { + "$ref": "./examples/GetQuorumLossProgress.json" + }, + "Gets information about a running quorum operation operation": { + "$ref": "./examples/GetQuorumLossProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a partition quorum loss operation.", + "schema": { + "$ref": "#/definitions/PartitionQuorumLossProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/StartRestart": { + "post": { + "operationId": "StartPartitionRestart", + "summary": "This API will restart some or all replicas or instances of the specified partition.", + "description": "This API is useful for testing failover.\n\nIf used to target a stateless service partition, RestartPartitionMode must be AllReplicasOrInstances.\n\nCall the GetPartitionRestartProgress API using the same OperationId to get the progress.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/RestartPartitionModeRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetPartitionRestartProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Services/{serviceId}/$/GetPartitions/{partitionId}/$/GetRestartProgress": { + "get": { + "summary": "Gets the progress of a PartitionRestart operation started using StartPartitionRestart.", + "description": "Gets the progress of a PartitionRestart started with StartPartitionRestart using the provided OperationId.", + "operationId": "GetPartitionRestartProgress", + "x-ms-examples": { + "Get information a completed PartitionRestart operation": { + "$ref": "./examples/GetPartitionRestartProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a partition restart operation.", + "schema": { + "$ref": "#/definitions/PartitionRestartProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Nodes/{nodeName}/$/StartTransition/": { + "post": { + "operationId": "StartNodeTransition", + "summary": "Starts or stops a cluster node.", + "description": "Starts or stops a cluster node. A cluster node is a process, not the OS instance itself. To start a node, pass in \"Start\" for the NodeTransitionType parameter.\nTo stop a node, pass in \"Stop\" for the NodeTransitionType parameter. This API starts the operation - when the API returns the node may not have finished transitioning yet.\nCall GetNodeTransitionProgress with the same OperationId to get the progress of the operation.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeTransitionTypeRequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeInstanceIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/StopDurationInSecondsRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation was accepted. Call the GetNodeTransitionProgress API to get the progress." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/Nodes/{nodeName}/$/GetTransitionProgress": { + "get": { + "summary": "Gets the progress of an operation started using StartNodeTransition.", + "description": "Gets the progress of an operation started with StartNodeTransition using the provided OperationId.", + "operationId": "GetNodeTransitionProgress", + "x-ms-examples": { + "Gets information about a completed NodeTransition operation": { + "$ref": "./examples/GetNodeTransitionProgress.json" + }, + "Gets information about a running NodeTransition operation": { + "$ref": "./examples/GetNodeTransitionProgress-Running.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Faults" + ], + "responses": { + "200": { + "description": "Information about the progress of a node transition operation.", + "schema": { + "$ref": "#/definitions/NodeTransitionProgress" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/": { + "get": { + "operationId": "GetFaultOperationList", + "summary": "Gets a list of user-induced fault operations filtered by provided input.", + "description": "Gets the list of user-induced fault operations filtered by provided input.", + "x-ms-examples": { + "Gets information on fault operations": { + "$ref": "./examples/GetFaultOperationList.json" + } + }, + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TypeFilterRequiredQueryParam" + }, + { + "$ref": "#/parameters/StateFilterRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code.", + "schema": { + "$ref": "#/definitions/OperationStatusList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Faults/$/Cancel": { + "post": { + "operationId": "CancelOperation", + "summary": "Cancels a user-induced fault operation.", + "description": "The following APIs start fault operations that may be cancelled by using CancelOperation: StartDataLoss, StartQuorumLoss, StartPartitionRestart, StartNodeTransition.\n\nIf force is false, then the specified user-induced operation will be gracefully stopped and cleaned up. If force is true, the command will be aborted, and some internal state\nmay be left behind. Specifying force as true should be used with care. Calling this API with force set to true is not allowed until this API has already\nbeen called on the same test command with force set to false first, or unless the test command already has an OperationState of OperationState.RollingBack.\nClarification: OperationState.RollingBack means that the system will be/is cleaning up internal system state caused by executing the command. It will not restore data if the\ntest command was to cause data loss. For example, if you call StartDataLoss then call this API, the system will only clean up internal state from running the command.\nIt will not restore the target partition's data, if the command progressed far enough to cause data loss.\n\nImportant note: if this API is invoked with force==true, internal state may be left behind.", + "tags": [ + "Faults" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/FaultOperationIdRequiredQueryParam" + }, + { + "$ref": "#/parameters/ForceRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/$/Create": { + "post": { + "operationId": "CreateBackupPolicy", + "summary": "Creates a backup policy.", + "description": "Creates a backup policy which can be associated later with a Service Fabric application, service or a partition for periodic backup.", + "x-ms-examples": { + "Create a time based backup policy with Azure as backup location": { + "$ref": "./examples/CreateBackupPolicy-1.json" + }, + "Create a frequency based backup policy with file share as backup location": { + "$ref": "./examples/CreateBackupPolicy-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "201": { + "description": "A successful operation returns 201 status code and creates a new backup policy." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/Delete": { + "post": { + "operationId": "DeleteBackupPolicy", + "summary": "Deletes the backup policy.", + "description": "Deletes an existing backup policy. A backup policy must be created before it can be deleted. A currently active backup policy, associated with any Service Fabric application, service or partition, cannot be deleted without first deleting the mapping.", + "x-ms-examples": { + "Delete backup policy": { + "$ref": "./examples/DeleteBackupPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and deletes the backup policy." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies": { + "get": { + "operationId": "GetBackupPolicyList", + "summary": "Gets all the backup policies configured.", + "description": "Get a list of all the backup policies configured.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetBackupPolicyList-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetBackupPolicyList-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and paged list of backup policies.", + "schema": { + "$ref": "#/definitions/PagedBackupPolicyDescriptionList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}": { + "get": { + "operationId": "GetBackupPolicyByName", + "summary": "Gets a particular backup policy by name.", + "description": "Gets a particular backup policy identified by {backupPolicyName}", + "x-ms-examples": { + "Get backup policy by name": { + "$ref": "./examples/GetBackupPolicyByName.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and the backup policy description.", + "schema": { + "$ref": "#/definitions/BackupPolicyDescription" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/GetBackupEnabledEntities": { + "get": { + "operationId": "GetAllEntitiesBackedUpByPolicy", + "summary": "Gets the list of backup entities that are associated with this policy.", + "description": "Returns a list of Service Fabric application, service or partition which are associated with this backup policy.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetAllEntitiesBackedUpByPolicy-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetAllEntitiesBackedUpByPolicy-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of Service Fabric entities that are associated with this policy.", + "schema": { + "$ref": "#/definitions/PagedBackupEntityList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/BackupPolicies/{backupPolicyName}/$/Update": { + "post": { + "operationId": "UpdateBackupPolicy", + "summary": "Updates the backup policy.", + "description": "Updates the backup policy identified by {backupPolicyName}", + "x-ms-examples": { + "Update backup policy": { + "$ref": "./examples/UpdateBackupPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BackupPolicyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/BackupPolicyNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and updates the backup policy description." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/EnableBackup": { + "post": { + "operationId": "EnableApplicationBackup", + "summary": "Enables periodic backup of stateful partitions under this Service Fabric application.", + "description": "Enables periodic backup of stateful partitions which are part of this Service Fabric application. Each partition is backed up individually as per the specified backup policy description. \nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable application backup": { + "$ref": "./examples/EnableApplicationBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable application backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/DisableBackup": { + "post": { + "operationId": "DisableApplicationBackup", + "summary": "Disables periodic backup of Service Fabric application.", + "description": "Disables periodic backup of Service Fabric application which was previously enabled.", + "x-ms-examples": { + "Disable application backup": { + "$ref": "./examples/DisableApplicationBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable application backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetApplicationBackupConfigurationInfo", + "summary": "Gets the Service Fabric application backup configuration information.", + "description": "Gets the Service Fabric backup configuration information for the application and the services and partitions under this application.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetApplicationBackupConfigurationInfo-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationBackupConfigurationInfo-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup configuration information for the application, and the services and partitions under this application, for which backup configuration has been overridden.", + "schema": { + "$ref": "#/definitions/PagedBackupConfigurationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/GetBackups": { + "get": { + "operationId": "GetApplicationBackupList", + "summary": "Gets the list of backups available for every partition in this application.", + "description": "Returns a list of backups available for every partition in this Service Fabric application. The server enumerates all the backups available at the backup location configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for every partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetApplicationBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetApplicationBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetApplicationBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetApplicationBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendApplicationBackup", + "summary": "Suspends periodic backup for the specified Service Fabric application.", + "description": "The application which is configured to take periodic backups, is suspended for taking further backups till it is resumed again. This operation applies to the entire application's hierarchy. It means all the services and partitions under this application are now suspended for backup.", + "x-ms-examples": { + "Suspend application backup": { + "$ref": "./examples/SuspendApplicationBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and application backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Applications/{applicationId}/$/ResumeBackup": { + "post": { + "operationId": "ResumeApplicationBackup", + "summary": "Resumes periodic backup of a Service Fabric application which was previously suspended.", + "description": "The previously suspended Service Fabric application resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume application backup": { + "$ref": "./examples/ResumeApplicationBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and application backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/EnableBackup": { + "post": { + "operationId": "EnableServiceBackup", + "summary": "Enables periodic backup of stateful partitions under this Service Fabric service.", + "description": "Enables periodic backup of stateful partitions which are part of this Service Fabric service. Each partition is backed up individually as per the specified backup policy description. In case the application, which the service is part of, is already enabled for backup then this operation would override the policy being used to take the periodic backup for this service and its partitions (unless explicitly overridden at the partition level).\nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable service backup": { + "$ref": "./examples/EnableServiceBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable service backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/DisableBackup": { + "post": { + "operationId": "DisableServiceBackup", + "summary": "Disables periodic backup of Service Fabric service which was previously enabled.", + "description": "Disables periodic backup of Service Fabric service which was previously enabled. Backup must be explicitly enabled before it can be disabled.\nIn case the backup is enabled for the Service Fabric application, which this service is part of, this service would continue to be periodically backed up as per the policy mapped at the application level.", + "x-ms-examples": { + "Disable service backup": { + "$ref": "./examples/DisableServiceBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable service backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetServiceBackupConfigurationInfo", + "summary": "Gets the Service Fabric service backup configuration information.", + "description": "Gets the Service Fabric backup configuration information for the service and the partitions under this service.", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetServiceBackupConfigurationInfo-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetServiceBackupConfigurationInfo-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup configuration information for the service, and the partitions under this service, for which backup configuration has been overridden.", + "schema": { + "$ref": "#/definitions/PagedBackupConfigurationInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/GetBackups": { + "get": { + "operationId": "GetServiceBackupList", + "summary": "Gets the list of backups available for every partition in this service.", + "description": "Returns a list of backups available for every partition in this Service Fabric service. The server enumerates all the backups available in the backup store configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for every partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetServiceBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetServiceBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetServiceBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetServiceBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendServiceBackup", + "summary": "Suspends periodic backup for the specified Service Fabric service.", + "description": "The service which is configured to take periodic backups, is suspended for taking further backups till it is resumed again. This operation applies to the entire service's hierarchy. It means all the partitions under this service are now suspended for backup.", + "x-ms-examples": { + "Suspend service backup": { + "$ref": "./examples/SuspendServiceBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and service backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Services/{serviceId}/$/ResumeBackup": { + "post": { + "operationId": "ResumeServiceBackup", + "summary": "Resumes periodic backup of a Service Fabric service which was previously suspended.", + "description": "The previously suspended Service Fabric service resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume service backup": { + "$ref": "./examples/ResumeServiceBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and service backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/EnableBackup": { + "post": { + "operationId": "EnablePartitionBackup", + "summary": "Enables periodic backup of the stateful persisted partition.", + "description": "Enables periodic backup of stateful persisted partition. Each partition is backed up as per the specified backup policy description. In case the application or service, which is partition is part of, is already enabled for backup then this operation would override the policy being used to take the periodic backup of this partition.\nNote only C# based Reliable Actor and Reliable Stateful services are currently supported for periodic backup.", + "x-ms-examples": { + "Enable partition backup": { + "$ref": "./examples/EnablePartitionBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/EnableBackupDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to enable partition backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/DisableBackup": { + "post": { + "operationId": "DisablePartitionBackup", + "summary": "Disables periodic backup of Service Fabric partition which was previously enabled.", + "description": "Disables periodic backup of partition which was previously enabled. Backup must be explicitly enabled before it can be disabled. \nIn case the backup is enabled for the Service Fabric application or service, which this partition is part of, this partition would continue to be periodically backed up as per the policy mapped at the higher level entity.", + "x-ms-examples": { + "Disable partition backup": { + "$ref": "./examples/DisablePartitionBackup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/DisableBackupDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the request to disable partition backup has been accepted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackupConfigurationInfo": { + "get": { + "operationId": "GetPartitionBackupConfigurationInfo", + "summary": "Gets the partition backup configuration information", + "description": "Gets the Service Fabric Backup configuration information for the specified partition.", + "x-ms-examples": { + "Get partition backup configuration information": { + "$ref": "./examples/GetPartitionBackupConfigurationInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and gets the partition's backup configuration information.", + "schema": { + "$ref": "#/definitions/PartitionBackupConfigurationInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackups": { + "get": { + "operationId": "GetPartitionBackupList", + "summary": "Gets the list of backups available for the specified partition.", + "description": "Returns a list of backups available for the specified partition. The server enumerates all the backups available in the backup store configured in the backup policy. It also allows filtering of the result based on start and end datetime or just fetching the latest available backup for the partition.", + "x-ms-examples": { + "Get application backups within a time range": { + "$ref": "./examples/GetPartitionBackupList-1.json" + }, + "Get latest backup": { + "$ref": "./examples/GetPartitionBackupList-2.json" + }, + "Limit maximum results": { + "$ref": "./examples/GetPartitionBackupList-3.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetPartitionBackupList-4.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/LatestOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartDateTimeFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/EndDateTimeFilterOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/SuspendBackup": { + "post": { + "operationId": "SuspendPartitionBackup", + "summary": "Suspends periodic backup for the specified partition.", + "description": "The partition which is configured to take periodic backups, is suspended for taking further backups till it is resumed again.", + "x-ms-examples": { + "Suspend partition backup": { + "$ref": "./examples/SuspendPartitionBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and partition backup will be suspended." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/ResumeBackup": { + "post": { + "operationId": "ResumePartitionBackup", + "summary": "Resumes periodic backup of partition which was previously suspended.", + "description": "The previously suspended partition resumes taking periodic backup as per the backup policy currently configured for the same.", + "x-ms-examples": { + "Resume partition backup": { + "$ref": "./examples/ResumePartitionBackup.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and partition backup will be resumed." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Backup": { + "post": { + "operationId": "BackupPartition", + "summary": "Triggers backup of the partition's state.", + "description": "Creates a backup of the stateful persisted partition's state. In case the partition is already being periodically backed up, then by default the new backup is created at the same backup storage. One can also override the same by specifying the backup storage details as part of the request body. Once the backup is initiated, its progress can be tracked using the GetBackupProgress operation. \nIn case, the operation times out, specify a greater backup timeout value in the query parameter.", + "x-ms-examples": { + "Backup partition": { + "$ref": "./examples/BackupPartition-1.json" + }, + "Backup partition to a specific Azure storage account": { + "$ref": "./examples/BackupPartition-2.json" + }, + "Backup partition to a specific on-premise file share": { + "$ref": "./examples/BackupPartition-3.json" + } + }, + "tags": [ + "BackupRestore" + ], + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/BackupPartitionDescriptionOptionalBodyParam" + }, + { + "$ref": "#/parameters/BackupTimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and backup will be initiated. Use GetPartitionBackupProgress operation to get the status of the backup operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetBackupProgress": { + "get": { + "operationId": "GetPartitionBackupProgress", + "summary": "Gets details for the latest backup triggered for this partition.", + "description": "Returns information about the state of the latest backup along with details or failure reason in case of completion.", + "x-ms-examples": { + "Get backup operation progress": { + "$ref": "./examples/GetPartitionBackupProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and backup progress details.", + "schema": { + "$ref": "#/definitions/BackupProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/Restore": { + "post": { + "operationId": "RestorePartition", + "summary": "Triggers restore of the state of the partition using the specified restore partition description.", + "description": "Restores the state of a of the stateful persisted partition using the specified backup point. In case the partition is already being periodically backed up, then by default the backup point is looked for in the storage specified in backup policy. One can also override the same by specifying the backup storage details as part of the restore partition description in body. Once the restore is initiated, its progress can be tracked using the GetRestoreProgress operation. \nIn case, the operation times out, specify a greater restore timeout value in the query parameter.", + "x-ms-examples": { + "Trigger partition restore": { + "$ref": "./examples/RestorePartition.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RestorePartitionDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/RestoreTimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "202": { + "description": "A 202 status code indicates the operation request was accepted and restore will be initiated. Use GetPartitionRestoreProgress operation to get the status of the restore operation." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Partitions/{partitionId}/$/GetRestoreProgress": { + "get": { + "operationId": "GetPartitionRestoreProgress", + "summary": "Gets details for the latest restore operation triggered for this partition.", + "description": "Returns information about the state of the latest restore operation along with details or failure reason in case of completion.", + "x-ms-examples": { + "Get restore operation progress": { + "$ref": "./examples/GetPartitionRestoreProgress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation returns 200 status code and restore progress details.", + "schema": { + "$ref": "#/definitions/RestoreProgressInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/BackupRestore/$/GetBackups": { + "post": { + "operationId": "GetBackupsFromBackupLocation", + "summary": "Gets the list of backups available for the specified backed up entity at the specified backup location.", + "description": "Gets the list of backups available for the specified backed up entity (Application, Service or Partition) at the specified backup location (FileShare or Azure Blob Storage).", + "x-ms-examples": { + "Limit maximum results": { + "$ref": "./examples/GetBackupsFromBackupLocation-1.json" + }, + "Page using continuation token": { + "$ref": "./examples/GetBackupsFromBackupLocation-2.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/MaxResultsOptionalQueryParam" + }, + { + "$ref": "#/parameters/GetBackupByStorageQueryDescriptionRequiredBodyParam" + } + ], + "tags": [ + "BackupRestore" + ], + "responses": { + "200": { + "description": "A successful operation will return 200 status code and a paged list of backup information.", + "schema": { + "$ref": "#/definitions/PagedBackupInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/$/Create": { + "post": { + "summary": "Creates a Service Fabric name.", + "description": "Creates the specified Service Fabric name.", + "operationId": "CreateName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Create new name": { + "$ref": "examples/CreateName-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "201": { + "description": "A successful response means that the name has been created." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}": { + "get": { + "summary": "Returns whether the Service Fabric name exists.", + "description": "Returns whether the specified Service Fabric name exists.", + "operationId": "GetNameExistsInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the Service Fabric name exists." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes a Service Fabric name.", + "description": "Deletes the specified Service Fabric name. A name must be created before it can be deleted. Deleting a name with child properties will fail.", + "operationId": "DeleteName", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the Service Fabric name has been deleted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetSubNames": { + "get": { + "summary": "Enumerates all the Service Fabric names under a given name.", + "description": "Enumerates all the Service Fabric names under a given name. If the subnames do not fit in a page, one page of results is returned as well as a continuation token, which can be used to get the next page. Querying a name that doesn't exist will fail.", + "operationId": "GetSubNameInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/RecursiveOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get sub names": { + "$ref": "examples/GetSubNameInfoList-1.json" + }, + "Recursively search sub names": { + "$ref": "examples/GetSubNameInfoList-2.json" + }, + "Page using continuation token": { + "$ref": "examples/GetSubNameInfoList-3.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A paged list of Service Fabric names.", + "schema": { + "$ref": "#/definitions/PagedSubNameInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperties": { + "get": { + "summary": "Gets information on all Service Fabric properties under a given name.", + "description": "A Service Fabric name can have one or more named properties that store custom information. This operation gets the information about these properties in a paged list. The information includes name, value, and metadata about each of the properties.", + "operationId": "GetPropertyInfoList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/IncludeValuesOptionalQueryParam" + }, + { + "$ref": "#/parameters/ContinuationTokenOptionalQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get property info list": { + "$ref": "examples/GetPropertyInfoList-1.json" + }, + "Get property info list with values": { + "$ref": "examples/GetPropertyInfoList-2.json" + }, + "Page using continuation token": { + "$ref": "examples/GetPropertyInfoList-3.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A paged list of Service Fabric properties.", + "schema": { + "$ref": "#/definitions/PagedPropertyInfoList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperty": { + "put": { + "summary": "Creates or updates a Service Fabric property.", + "description": "Creates or updates the specified Service Fabric property under a given name.", + "operationId": "PutProperty", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyDescriptionRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Put property": { + "$ref": "examples/PutProperty-1.json" + }, + "Put custom property": { + "$ref": "examples/PutProperty-2.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property has been created or updated." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "summary": "Gets the specified Service Fabric property.", + "description": "Gets the specified Service Fabric property under a given name. This will always return both value and metadata.", + "operationId": "GetPropertyInfo", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Get property info": { + "$ref": "examples/GetPropertyInfo-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "Details on the Service Fabric property.", + "schema": { + "$ref": "#/definitions/PropertyInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "summary": "Deletes the specified Service Fabric property.", + "description": "Deletes the specified Service Fabric property under a given name. A property must be created before it can be deleted.", + "operationId": "DeleteProperty", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyNameRequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property has been deleted." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Names/{nameId}/$/GetProperties/$/SubmitBatch": { + "post": { + "summary": "Submits a property batch.", + "description": "Submits a batch of property operations. Either all or none of the operations will be committed.", + "operationId": "SubmitPropertyBatch", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NameIdRequiredPathParam" + }, + { + "$ref": "#/parameters/PropertyBatchDescriptionListRequiredBodyParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "x-ms-examples": { + "Property batch operation": { + "$ref": "examples/SubmitPropertyBatch-1.json" + } + }, + "tags": [ + "Property Management" + ], + "responses": { + "200": { + "description": "A successful response means that the property batch succeeded.", + "schema": { + "$ref": "#/definitions/SuccessfulPropertyBatchInfo" + } + }, + "409": { + "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were committed.", + "schema": { + "$ref": "#/definitions/FailedPropertyBatchInfo" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Cluster/Events": { + "get": { + "summary": "Gets all Cluster-related events.", + "description": "The response is list of ClusterEvent objects.", + "operationId": "GetClusterEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Cluster-related events": { + "$ref": "./examples/GetClusterEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ClusterEvent.", + "schema": { + "$ref": "#/definitions/ClusterEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Containers/Events": { + "get": { + "summary": "Gets all Containers-related events.", + "description": "The response is list of ContainerInstanceEvent objects.", + "operationId": "GetContainersEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-2-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "responses": { + "200": { + "description": "List of events objects with base type ContainerInstanceEvent.", + "schema": { + "$ref": "#/definitions/ContainerInstanceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Nodes/{nodeName}/$/Events": { + "get": { + "summary": "Gets a Node-related events.", + "description": "The response is list of NodeEvent objects.", + "operationId": "GetNodeEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NodeNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Node-related events": { + "$ref": "./examples/GetNodeEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type NodeEvent.", + "schema": { + "$ref": "#/definitions/NodeEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Nodes/Events": { + "get": { + "summary": "Gets all Nodes-related Events.", + "description": "The response is list of NodeEvent objects.", + "operationId": "GetNodesEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Nodes-related events": { + "$ref": "./examples/GetNodesEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type NodeEvent.", + "schema": { + "$ref": "#/definitions/NodeEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Applications/{applicationId}/$/Events": { + "get": { + "summary": "Gets an Application-related events.", + "description": "The response is list of ApplicationEvent objects.", + "operationId": "GetApplicationEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Application-related events": { + "$ref": "./examples/GetApplicationEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ApplicationEvent.", + "schema": { + "$ref": "#/definitions/ApplicationEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Applications/Events": { + "get": { + "summary": "Gets all Applications-related events.", + "description": "The response is list of ApplicationEvent objects.", + "operationId": "GetApplicationsEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Applications-related events": { + "$ref": "./examples/GetApplicationsEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ApplicationEvent.", + "schema": { + "$ref": "#/definitions/ApplicationEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Services/{serviceId}/$/Events": { + "get": { + "summary": "Gets a Service-related events.", + "description": "The response is list of ServiceEvent objects.", + "operationId": "GetServiceEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ServiceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Service-related events": { + "$ref": "./examples/GetServiceEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ServiceEvent.", + "schema": { + "$ref": "#/definitions/ServiceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Services/Events": { + "get": { + "summary": "Gets all Services-related events.", + "description": "The response is list of ServiceEvent objects.", + "operationId": "GetServicesEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Services-related events": { + "$ref": "./examples/GetServicesEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ServiceEvent.", + "schema": { + "$ref": "#/definitions/ServiceEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Events": { + "get": { + "summary": "Gets a Partition-related events.", + "description": "The response is list of PartitionEvent objects.", + "operationId": "GetPartitionEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition-related events": { + "$ref": "./examples/GetPartitionEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type PartitionEvent.", + "schema": { + "$ref": "#/definitions/PartitionEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/Events": { + "get": { + "summary": "Gets all Partitions-related events.", + "description": "The response is list of PartitionEvent objects.", + "operationId": "GetPartitionsEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partitions-related events": { + "$ref": "./examples/GetPartitionsEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type PartitionEvent.", + "schema": { + "$ref": "#/definitions/PartitionEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Replicas/{replicaId}/$/Events": { + "get": { + "summary": "Gets a Partition Replica-related events.", + "description": "The response is list of ReplicaEvent objects.", + "operationId": "GetPartitionReplicaEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition Replica-related events": { + "$ref": "./examples/GetReplicaEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ReplicaEvent.", + "schema": { + "$ref": "#/definitions/ReplicaEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/Partitions/{partitionId}/$/Replicas/Events": { + "get": { + "summary": "Gets all Replicas-related events for a Partition.", + "description": "The response is list of ReplicaEvent objects.", + "operationId": "GetPartitionReplicasEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/PartitionIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + }, + { + "$ref": "#/parameters/StartTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EndTimeUtcRequiredQueryParam" + }, + { + "$ref": "#/parameters/EventsTypesFilterOptionalQueryParam" + }, + { + "$ref": "#/parameters/ExcludeAnalysisEventsOptionalQueryParam" + }, + { + "$ref": "#/parameters/SkipCorrelationLookupOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Partition Replicas-related events": { + "$ref": "./examples/GetReplicasEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type ReplicaEvent.", + "schema": { + "$ref": "#/definitions/ReplicaEventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/EventsStore/CorrelatedEvents/{eventInstanceId}/$/Events": { + "get": { + "summary": "Gets all correlated events for a given event.", + "description": "The response is list of FabricEvents.", + "operationId": "GetCorrelatedEventList", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4_RequiredQueryParam" + }, + { + "$ref": "#/parameters/EventInstanceIdRequiredPathParam" + }, + { + "$ref": "#/parameters/TimeoutOptionalQueryParam" + } + ], + "tags": [ + "EventsStore" + ], + "x-ms-examples": { + "Get Correlated events": { + "$ref": "./examples/GetCorrelatedEventList.json" + } + }, + "responses": { + "200": { + "description": "List of events objects with base type FabricEvent.", + "schema": { + "$ref": "#/definitions/EventList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}": { + "put": { + "operationId": "MeshSecret_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshSecret": { + "$ref": "./examples/Resources/Secrets/create_update.json" + } + }, + "summary": "Creates or updates a Secret resource.", + "description": "Creates a Secret resource with the specified name, description and properties. If Secret resource with the same name exists, then it is updated with the specified description and properties. Once created, the kind and contentType of a secret resource cannot be updated.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshSecret_Get", + "x-ms-examples": { + "GetSecretResource": { + "$ref": "./examples/Resources/Secrets/get.json" + } + }, + "summary": "Gets the Secret resource with the given name.", + "description": "Gets the information about the Secret resource with the given name. The information include the description and other properties of the Secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshSecret_Delete", + "x-ms-examples": { + "DeleteSecretResource": { + "$ref": "./examples/Resources/Secrets/delete.json" + } + }, + "summary": "Deletes the Secret resource.", + "description": "Deletes the specified Secret resource and all of its named values.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified secret was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets": { + "get": { + "operationId": "MeshSecret_List", + "x-ms-examples": { + "ListMeshSecrets": { + "$ref": "./examples/Resources/Secrets/list.json" + } + }, + "summary": "Lists all the secret resources.", + "description": "Gets the information about all secret resources in a given resource group. The information include the description and other properties of the Secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshSecrets" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedSecretResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values/{secretValueResourceName}": { + "put": { + "operationId": "MeshSecretValue_AddValue", + "x-ms-examples": { + "CreateMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/create.json" + } + }, + "summary": "Adds the specified value as a new version of the specified secret resource.", + "description": "Creates a new value of the specified secret resource. The name of the value is typically the version identifier. Once created the value cannot be changed.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshSecretValue_Get", + "x-ms-examples": { + "GetMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/get.json" + } + }, + "summary": "Gets the specified secret value resource.", + "description": "Get the information about the specified named secret value resources. The information does not include the actual value of the secret.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshSecretValue_Delete", + "x-ms-examples": { + "DeleteSecretValue": { + "$ref": "./examples/Resources/Secrets/values/delete.json" + } + }, + "summary": "Deletes the specified value of the named secret resource.", + "description": "Deletes the secret value resource identified by the name. The name of the resource is typically the version associated with that value. Deletion will fail if the specified value is in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified secret value was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values": { + "get": { + "operationId": "MeshSecretValue_List", + "x-ms-examples": { + "ListMeshSecretValues": { + "$ref": "./examples/Resources/Secrets/values/list.json" + } + }, + "summary": "List names of all values of the specified secret resource.", + "description": "Gets information about all secret value resources of the specified secret resource. The information includes the names of the secret value resources, but not the actual values.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedSecretValueResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Secrets/{secretResourceName}/values/{secretValueResourceName}/list_value": { + "post": { + "operationId": "MeshSecretValue_Show", + "x-ms-examples": { + "ListMeshSecretValue": { + "$ref": "./examples/Resources/Secrets/values/list_value.json" + } + }, + "summary": "Lists the specified value of the secret resource.", + "description": "Lists the decrypted value of the specified named value of the secret resource. This is a privileged operation.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/SecretResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshSecretValues" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretValue" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Volumes/{volumeResourceName}": { + "put": { + "operationId": "MeshVolume_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshVolume": { + "$ref": "./examples/Resources/Volumes/create_update.json" + } + }, + "summary": "Creates or updates a Volume resource.", + "description": "Creates a Volume resource with the specified name, description and properties. If Volume resource with the same name exists, then it is updated with the specified description and properties.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/VolumeResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshVolume_Get", + "x-ms-examples": { + "GetVolumeResource": { + "$ref": "./examples/Resources/Volumes/get.json" + } + }, + "summary": "Gets the Volume resource with the given name.", + "description": "Gets the information about the Volume resource with the given name. The information include the description and other properties of the Volume.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshVolume_Delete", + "x-ms-examples": { + "DeleteVolumeResource": { + "$ref": "./examples/Resources/Volumes/delete.json" + } + }, + "summary": "Deletes the Volume resource.", + "description": "Deletes the Volume resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/VolumeResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified volume was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Volumes": { + "get": { + "operationId": "MeshVolume_List", + "x-ms-examples": { + "ListMeshVolumes": { + "$ref": "./examples/Resources/Volumes/list.json" + } + }, + "summary": "Lists all the volume resources.", + "description": "Gets the information about all volume resources in a given resource group. The information include the description and other properties of the Volume.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshVolumes" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedVolumeResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Networks/{networkResourceName}": { + "put": { + "operationId": "MeshNetwork_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshNetwork": { + "$ref": "./examples/Resources/Networks/create_update.json" + } + }, + "summary": "Creates or updates a Network resource.", + "description": "Creates a Network resource with the specified name, description and properties. If Network resource with the same name exists, then it is updated with the specified description and properties. Network resource provides connectivity between application services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/NetworkResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshNetwork_Get", + "x-ms-examples": { + "GetNetworkResource": { + "$ref": "./examples/Resources/Networks/get.json" + } + }, + "summary": "Gets the Network resource with the given name.", + "description": "Gets the information about the Network resource with the given name. The information include the description and other properties of the Network.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshNetwork_Delete", + "x-ms-examples": { + "DeleteNetworkResource": { + "$ref": "./examples/Resources/Networks/delete.json" + } + }, + "summary": "Deletes the Network resource.", + "description": "Deletes the Network resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/NetworkResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified network was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Networks": { + "get": { + "operationId": "MeshNetwork_List", + "x-ms-examples": { + "ListMeshNetworks": { + "$ref": "./examples/Resources/Networks/list.json" + } + }, + "summary": "Lists all the network resources.", + "description": "Gets the information about all network resources in a given resource group. The information include the description and other properties of the Network.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshNetworks" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedNetworkResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}": { + "put": { + "operationId": "MeshApplication_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshApplication": { + "$ref": "./examples/Resources/Applications/create_update.json" + }, + "CreateOrUpdateMeshApplicationWithAutoScale": { + "$ref": "./examples/Resources/Applications/create_update.autoscale.json" + } + }, + "summary": "Creates or updates a Application resource.", + "description": "Creates a Application resource with the specified name, description and properties. If Application resource with the same name exists, then it is updated with the specified description and properties.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ApplicationResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshApplication_Get", + "x-ms-examples": { + "GetApplicationResource": { + "$ref": "./examples/Resources/Applications/get.json" + } + }, + "summary": "Gets the Application resource with the given name.", + "description": "Gets the information about the Application resource with the given name. The information include the description and other properties of the Application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshApplication_Delete", + "x-ms-examples": { + "DeleteApplicationResource": { + "$ref": "./examples/Resources/Applications/delete.json" + } + }, + "summary": "Deletes the Application resource.", + "description": "Deletes the Application resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified application was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications": { + "get": { + "operationId": "MeshApplication_List", + "x-ms-examples": { + "ListMeshApplications": { + "$ref": "./examples/Resources/Applications/list.json" + } + }, + "summary": "Lists all the application resources.", + "description": "Gets the information about all application resources in a given resource group. The information include the description and other properties of the Application.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedApplicationResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/$/GetUpgradeProgress": { + "get": { + "operationId": "MeshApplication_GetUpgradeProgress", + "x-ms-examples": { + "GetApplicationResourceUpgrade": { + "$ref": "./examples/Resources/Applications/get_upgrade.json" + } + }, + "summary": "Gets the progress of the latest upgrade performed on this application resource.", + "description": "Gets the upgrade progress information about the Application resource with the given name. The information include percentage of completion and other upgrade state information of the Application resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_7-0_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshApplications" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplicationResourceUpgradeProgressInfo" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}": { + "get": { + "operationId": "MeshService_Get", + "x-ms-examples": { + "GetServiceResource": { + "$ref": "./examples/Resources/Applications/Services/get.json" + } + }, + "summary": "Gets the Service resource with the given name.", + "description": "Gets the information about the Service resource with the given name. The information include the description and other properties of the Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServices" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServiceResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services": { + "get": { + "operationId": "MeshService_List", + "x-ms-examples": { + "ListMeshServices": { + "$ref": "./examples/Resources/Applications/Services/list.json" + } + }, + "summary": "Lists all the service resources.", + "description": "Gets the information about all services of an application resource. The information include the description and other properties of the Service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServices" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedServiceResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas/{replicaName}/CodePackages/{codePackageName}/Logs": { + "get": { + "operationId": "MeshCodePackage_GetContainerLogs", + "x-ms-examples": { + "GetContainerLogs": { + "$ref": "./examples/Resources/Applications/Services/Replicas/CodePackages/get_logs.json" + } + }, + "summary": "Gets the logs from the container.", + "description": "Gets the logs for the container of the specified code package of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaNameRequiredPathParam" + }, + { + "$ref": "#/parameters/CodePackageNameRequiredPathParam" + }, + { + "$ref": "#/parameters/TailOptionalQueryParam" + } + ], + "tags": [ + "MeshCodePackages" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerLogs" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas/{replicaName}": { + "get": { + "operationId": "MeshServiceReplica_Get", + "x-ms-examples": { + "GetServiceReplica": { + "$ref": "./examples/Resources/Applications/Services/Replicas/get.json" + } + }, + "summary": "Gets the given replica of the service of an application.", + "description": "Gets the information about the service replica with the given name. The information include the description and other properties of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ReplicaNameRequiredPathParam" + } + ], + "tags": [ + "MeshServiceReplicas" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServiceReplicaDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Applications/{applicationResourceName}/Services/{serviceResourceName}/Replicas": { + "get": { + "operationId": "MeshServiceReplica_List", + "x-ms-examples": { + "ListMeshServiceReplicas": { + "$ref": "./examples/Resources/Applications/Services/Replicas/list.json" + } + }, + "summary": "Lists all the replicas of a service.", + "description": "Gets the information about all replicas of a service. The information include the description and other properties of the service replica.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/ServiceResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshServiceReplicas" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedServiceReplicaDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Gateways/{gatewayResourceName}": { + "put": { + "operationId": "MeshGateway_CreateOrUpdate", + "x-ms-examples": { + "CreateOrUpdateMeshGateway": { + "$ref": "./examples/Resources/Gateways/create_update.json" + } + }, + "summary": "Creates or updates a Gateway resource.", + "description": "Creates a Gateway resource with the specified name, description and properties. If Gateway resource with the same name exists, then it is updated with the specified description and properties. Use Gateway resource to provide public connectivity to application services.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + }, + { + "$ref": "#/parameters/GatewayResourceDescriptionRequiredBodyParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "get": { + "operationId": "MeshGateway_Get", + "x-ms-examples": { + "GetGatewayResource": { + "$ref": "./examples/Resources/Gateways/get.json" + } + }, + "summary": "Gets the Gateway resource with the given name.", + "description": "Gets the information about the Gateway resource with the given name. The information include the description and other properties of the Gateway.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + }, + "delete": { + "operationId": "MeshGateway_Delete", + "x-ms-examples": { + "DeleteGatewayResource": { + "$ref": "./examples/Resources/Gateways/delete.json" + } + }, + "summary": "Deletes the Gateway resource.", + "description": "Deletes the Gateway resource identified by the name.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + }, + { + "$ref": "#/parameters/GatewayResourceNameRequiredPathParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content - the specified gateway was not found." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + }, + "/Resources/Gateways": { + "get": { + "operationId": "MeshGateway_List", + "x-ms-examples": { + "ListMeshGateways": { + "$ref": "./examples/Resources/Gateways/list.json" + } + }, + "summary": "Lists all the gateway resources.", + "description": "Gets the information about all gateway resources in a given resource group. The information include the description and other properties of the Gateway.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion_6-4-Preview_RequiredQueryParam" + } + ], + "tags": [ + "MeshGateways" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PagedGatewayResourceDescriptionList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/FabricError" + } + } + } + } + } + }, + "definitions": { + "HealthState": { + "type": "string", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc.", + "enum": [ + "Invalid", + "Ok", + "Warning", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid health state. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ok", + "description": "Indicates the health state is okay. The value is 1." + }, + { + "value": "Warning", + "description": "Indicates the health state is at a warning level. The value is 2." + }, + { + "value": "Error", + "description": "Indicates the health state is at an error level. Error health state should be investigated, as they can impact the correct functionality of the cluster. The value is 3." + }, + { + "value": "Unknown", + "description": "Indicates an unknown health status. The value is 65535." + } + ] + } + }, + "FabricErrorCodes": { + "type": "string", + "description": "Defines the fabric error codes that be returned as part of the error object in response to Service Fabric API operations that are not successful. Following are the error code values that can be returned for a specific HTTP status code.\n\n - Possible values of the error code for HTTP status code 400 (Bad Request)\n - \"FABRIC_E_INVALID_PARTITION_KEY\"\n - \"FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_ADDRESS\"\n - \"FABRIC_E_APPLICATION_NOT_UPGRADING\"\n - \"FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_FABRIC_NOT_UPGRADING\"\n - \"FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_CONFIGURATION\"\n - \"FABRIC_E_INVALID_NAME_URI\"\n - \"FABRIC_E_PATH_TOO_LONG\"\n - \"FABRIC_E_KEY_TOO_LARGE\"\n - \"FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED\"\n - \"FABRIC_E_INVALID_ATOMIC_GROUP\"\n - \"FABRIC_E_VALUE_EMPTY\"\n - \"FABRIC_E_BACKUP_IS_ENABLED\"\n - \"FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH\"\n - \"FABRIC_E_INVALID_FOR_STATELESS_SERVICES\"\n - \"FABRIC_E_INVALID_SERVICE_SCALING_POLICY\"\n - \"E_INVALIDARG\"\n\n - Possible values of the error code for HTTP status code 404 (Not Found)\n - \"FABRIC_E_NODE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_TYPE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_TYPE_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND\"\n - \"FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND\"\n - \"FABRIC_E_PARTITION_NOT_FOUND\"\n - \"FABRIC_E_REPLICA_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST\"\n - \"FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND\"\n - \"FABRIC_E_DIRECTORY_NOT_FOUND\"\n - \"FABRIC_E_FABRIC_VERSION_NOT_FOUND\"\n - \"FABRIC_E_FILE_NOT_FOUND\"\n - \"FABRIC_E_NAME_DOES_NOT_EXIST\"\n - \"FABRIC_E_PROPERTY_DOES_NOT_EXIST\"\n - \"FABRIC_E_ENUMERATION_COMPLETED\"\n - \"FABRIC_E_SERVICE_MANIFEST_NOT_FOUND\"\n - \"FABRIC_E_KEY_NOT_FOUND\"\n - \"FABRIC_E_HEALTH_ENTITY_NOT_FOUND\"\n - \"FABRIC_E_BACKUP_NOT_ENABLED\"\n - \"FABRIC_E_BACKUP_POLICY_NOT_EXISTING\"\n - \"FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING\"\n - \"FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR\"\n\n - Possible values of the error code for HTTP status code 409 (Conflict)\n - \"FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS\"\n - \"FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_SERVICE_ALREADY_EXISTS\"\n - \"FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_TYPE_IN_USE\"\n - \"FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS\"\n - \"FABRIC_E_FABRIC_VERSION_IN_USE\"\n - \"FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_NAME_ALREADY_EXISTS\"\n - \"FABRIC_E_NAME_NOT_EMPTY\"\n - \"FABRIC_E_PROPERTY_CHECK_FAILED\"\n - \"FABRIC_E_SERVICE_METADATA_MISMATCH\"\n - \"FABRIC_E_SERVICE_TYPE_MISMATCH\"\n - \"FABRIC_E_HEALTH_STALE_REPORT\"\n - \"FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED\"\n - \"FABRIC_E_NODE_HAS_NOT_STOPPED_YET\"\n - \"FABRIC_E_INSTANCE_ID_MISMATCH\"\n - \"FABRIC_E_BACKUP_IN_PROGRESS\"\n - \"FABRIC_E_RESTORE_IN_PROGRESS\"\n - \"FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING\"\n\n - Possible values of the error code for HTTP status code 413 (Request Entity Too Large)\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 500 (Internal Server Error)\n - \"FABRIC_E_NODE_IS_UP\"\n - \"E_FAIL\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_VOLUME_ALREADY_EXISTS\"\n - \"FABRIC_E_VOLUME_NOT_FOUND\"\n - \"SerializationError\"\n\n - Possible values of the error code for HTTP status code 503 (Service Unavailable)\n - \"FABRIC_E_NO_WRITE_QUORUM\"\n - \"FABRIC_E_NOT_PRIMARY\"\n - \"FABRIC_E_NOT_READY\"\n - \"FABRIC_E_RECONFIGURATION_PENDING\"\n - \"FABRIC_E_SERVICE_OFFLINE\"\n - \"E_ABORT\"\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 504 (Gateway Timeout)\n - \"FABRIC_E_COMMUNICATION_ERROR\"\n - \"FABRIC_E_OPERATION_NOT_COMPLETE\"\n - \"FABRIC_E_TIMEOUT\"", + "enum": [ + "FABRIC_E_INVALID_PARTITION_KEY", + "FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR", + "FABRIC_E_INVALID_ADDRESS", + "FABRIC_E_APPLICATION_NOT_UPGRADING", + "FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR", + "FABRIC_E_FABRIC_NOT_UPGRADING", + "FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR", + "FABRIC_E_INVALID_CONFIGURATION", + "FABRIC_E_INVALID_NAME_URI", + "FABRIC_E_PATH_TOO_LONG", + "FABRIC_E_KEY_TOO_LARGE", + "FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED", + "FABRIC_E_INVALID_ATOMIC_GROUP", + "FABRIC_E_VALUE_EMPTY", + "FABRIC_E_NODE_NOT_FOUND", + "FABRIC_E_APPLICATION_TYPE_NOT_FOUND", + "FABRIC_E_APPLICATION_NOT_FOUND", + "FABRIC_E_SERVICE_TYPE_NOT_FOUND", + "FABRIC_E_SERVICE_DOES_NOT_EXIST", + "FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND", + "FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND", + "FABRIC_E_PARTITION_NOT_FOUND", + "FABRIC_E_REPLICA_DOES_NOT_EXIST", + "FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST", + "FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND", + "FABRIC_E_DIRECTORY_NOT_FOUND", + "FABRIC_E_FABRIC_VERSION_NOT_FOUND", + "FABRIC_E_FILE_NOT_FOUND", + "FABRIC_E_NAME_DOES_NOT_EXIST", + "FABRIC_E_PROPERTY_DOES_NOT_EXIST", + "FABRIC_E_ENUMERATION_COMPLETED", + "FABRIC_E_SERVICE_MANIFEST_NOT_FOUND", + "FABRIC_E_KEY_NOT_FOUND", + "FABRIC_E_HEALTH_ENTITY_NOT_FOUND", + "FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION", + "FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS", + "FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS", + "FABRIC_E_SERVICE_ALREADY_EXISTS", + "FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS", + "FABRIC_E_APPLICATION_TYPE_IN_USE", + "FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION", + "FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS", + "FABRIC_E_FABRIC_VERSION_IN_USE", + "FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS", + "FABRIC_E_NAME_ALREADY_EXISTS", + "FABRIC_E_NAME_NOT_EMPTY", + "FABRIC_E_PROPERTY_CHECK_FAILED", + "FABRIC_E_SERVICE_METADATA_MISMATCH", + "FABRIC_E_SERVICE_TYPE_MISMATCH", + "FABRIC_E_HEALTH_STALE_REPORT", + "FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED", + "FABRIC_E_NODE_HAS_NOT_STOPPED_YET", + "FABRIC_E_INSTANCE_ID_MISMATCH", + "FABRIC_E_VALUE_TOO_LARGE", + "FABRIC_E_NO_WRITE_QUORUM", + "FABRIC_E_NOT_PRIMARY", + "FABRIC_E_NOT_READY", + "FABRIC_E_RECONFIGURATION_PENDING", + "FABRIC_E_SERVICE_OFFLINE", + "E_ABORT", + "FABRIC_E_COMMUNICATION_ERROR", + "FABRIC_E_OPERATION_NOT_COMPLETE", + "FABRIC_E_TIMEOUT", + "FABRIC_E_NODE_IS_UP", + "E_FAIL", + "FABRIC_E_BACKUP_IS_ENABLED", + "FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH", + "FABRIC_E_INVALID_FOR_STATELESS_SERVICES", + "FABRIC_E_BACKUP_NOT_ENABLED", + "FABRIC_E_BACKUP_POLICY_NOT_EXISTING", + "FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING", + "FABRIC_E_BACKUP_IN_PROGRESS", + "FABRIC_E_RESTORE_IN_PROGRESS", + "FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING", + "FABRIC_E_INVALID_SERVICE_SCALING_POLICY", + "E_INVALIDARG", + "FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS", + "FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND", + "FABRIC_E_VOLUME_ALREADY_EXISTS", + "FABRIC_E_VOLUME_NOT_FOUND", + "SerializationError", + "FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR" + ], + "x-ms-enum": { + "name": "FabricErrorCodes", + "modelAsString": true, + "values": [ + { + "value": "FABRIC_E_INVALID_PARTITION_KEY" + }, + { + "value": "FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_INVALID_ADDRESS" + }, + { + "value": "FABRIC_E_APPLICATION_NOT_UPGRADING" + }, + { + "value": "FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_FABRIC_NOT_UPGRADING" + }, + { + "value": "FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR" + }, + { + "value": "FABRIC_E_INVALID_CONFIGURATION" + }, + { + "value": "FABRIC_E_INVALID_NAME_URI" + }, + { + "value": "FABRIC_E_PATH_TOO_LONG" + }, + { + "value": "FABRIC_E_KEY_TOO_LARGE" + }, + { + "value": "FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED" + }, + { + "value": "FABRIC_E_INVALID_ATOMIC_GROUP" + }, + { + "value": "FABRIC_E_VALUE_EMPTY" + }, + { + "value": "FABRIC_E_NODE_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_NOT_FOUND" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_NOT_FOUND" + }, + { + "value": "FABRIC_E_SERVICE_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND" + }, + { + "value": "FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND" + }, + { + "value": "FABRIC_E_PARTITION_NOT_FOUND" + }, + { + "value": "FABRIC_E_REPLICA_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND" + }, + { + "value": "FABRIC_E_DIRECTORY_NOT_FOUND" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_NOT_FOUND" + }, + { + "value": "FABRIC_E_FILE_NOT_FOUND" + }, + { + "value": "FABRIC_E_NAME_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_PROPERTY_DOES_NOT_EXIST" + }, + { + "value": "FABRIC_E_ENUMERATION_COMPLETED" + }, + { + "value": "FABRIC_E_SERVICE_MANIFEST_NOT_FOUND" + }, + { + "value": "FABRIC_E_KEY_NOT_FOUND" + }, + { + "value": "FABRIC_E_HEALTH_ENTITY_NOT_FOUND" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS" + }, + { + "value": "FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_SERVICE_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_APPLICATION_TYPE_IN_USE" + }, + { + "value": "FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_FABRIC_VERSION_IN_USE" + }, + { + "value": "FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_NAME_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_NAME_NOT_EMPTY" + }, + { + "value": "FABRIC_E_PROPERTY_CHECK_FAILED" + }, + { + "value": "FABRIC_E_SERVICE_METADATA_MISMATCH" + }, + { + "value": "FABRIC_E_SERVICE_TYPE_MISMATCH" + }, + { + "value": "FABRIC_E_HEALTH_STALE_REPORT" + }, + { + "value": "FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED" + }, + { + "value": "FABRIC_E_NODE_HAS_NOT_STOPPED_YET" + }, + { + "value": "FABRIC_E_INSTANCE_ID_MISMATCH" + }, + { + "value": "FABRIC_E_VALUE_TOO_LARGE" + }, + { + "value": "FABRIC_E_NO_WRITE_QUORUM" + }, + { + "value": "FABRIC_E_NOT_PRIMARY" + }, + { + "value": "FABRIC_E_NOT_READY" + }, + { + "value": "FABRIC_E_RECONFIGURATION_PENDING" + }, + { + "value": "FABRIC_E_SERVICE_OFFLINE" + }, + { + "value": "E_ABORT" + }, + { + "value": "FABRIC_E_COMMUNICATION_ERROR" + }, + { + "value": "FABRIC_E_OPERATION_NOT_COMPLETE" + }, + { + "value": "FABRIC_E_TIMEOUT" + }, + { + "value": "FABRIC_E_NODE_IS_UP" + }, + { + "value": "E_FAIL" + }, + { + "value": "FABRIC_E_BACKUP_IS_ENABLED" + }, + { + "value": "FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH" + }, + { + "value": "FABRIC_E_INVALID_FOR_STATELESS_SERVICES" + }, + { + "value": "FABRIC_E_BACKUP_NOT_ENABLED" + }, + { + "value": "FABRIC_E_BACKUP_POLICY_NOT_EXISTING" + }, + { + "value": "FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING" + }, + { + "value": "FABRIC_E_BACKUP_IN_PROGRESS" + }, + { + "value": "FABRIC_E_RESTORE_IN_PROGRESS" + }, + { + "value": "FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING" + }, + { + "value": "FABRIC_E_INVALID_SERVICE_SCALING_POLICY" + }, + { + "value": "E_INVALIDARG" + }, + { + "value": "FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND" + }, + { + "value": "FABRIC_E_VOLUME_ALREADY_EXISTS" + }, + { + "value": "FABRIC_E_VOLUME_NOT_FOUND" + }, + { + "value": "SerializationError" + }, + { + "value": "FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR" + } + ] + } + }, + "FabricError": { + "description": "The REST API operations for Service Fabric return standard HTTP status codes. This type defines the additional information returned from the Service Fabric API operations that are not successful.", + "properties": { + "Error": { + "$ref": "#/definitions/FabricErrorError", + "description": "Error object containing error code and error message." + } + }, + "required": [ + "Error" + ] + }, + "FabricErrorError": { + "description": "Error object containing error code and error message.", + "properties": { + "Code": { + "$ref": "#/definitions/FabricErrorCodes", + "description": "Defines the fabric error codes that be returned as part of the error object in response to Service Fabric API operations that are not successful. Following are the error code values that can be returned for a specific HTTP status code.\n\n - Possible values of the error code for HTTP status code 400 (Bad Request)\n - \"FABRIC_E_INVALID_PARTITION_KEY\"\n - \"FABRIC_E_IMAGEBUILDER_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_ADDRESS\"\n - \"FABRIC_E_APPLICATION_NOT_UPGRADING\"\n - \"FABRIC_E_APPLICATION_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_FABRIC_NOT_UPGRADING\"\n - \"FABRIC_E_FABRIC_UPGRADE_VALIDATION_ERROR\"\n - \"FABRIC_E_INVALID_CONFIGURATION\"\n - \"FABRIC_E_INVALID_NAME_URI\"\n - \"FABRIC_E_PATH_TOO_LONG\"\n - \"FABRIC_E_KEY_TOO_LARGE\"\n - \"FABRIC_E_SERVICE_AFFINITY_CHAIN_NOT_SUPPORTED\"\n - \"FABRIC_E_INVALID_ATOMIC_GROUP\"\n - \"FABRIC_E_VALUE_EMPTY\"\n - \"FABRIC_E_BACKUP_IS_ENABLED\"\n - \"FABRIC_E_RESTORE_SOURCE_TARGET_PARTITION_MISMATCH\"\n - \"FABRIC_E_INVALID_FOR_STATELESS_SERVICES\"\n - \"FABRIC_E_INVALID_SERVICE_SCALING_POLICY\"\n - \"E_INVALIDARG\"\n\n - Possible values of the error code for HTTP status code 404 (Not Found)\n - \"FABRIC_E_NODE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_TYPE_NOT_FOUND\"\n - \"FABRIC_E_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_TYPE_NOT_FOUND\"\n - \"FABRIC_E_SERVICE_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_TYPE_TEMPLATE_NOT_FOUND\"\n - \"FABRIC_E_CONFIGURATION_SECTION_NOT_FOUND\"\n - \"FABRIC_E_PARTITION_NOT_FOUND\"\n - \"FABRIC_E_REPLICA_DOES_NOT_EXIST\"\n - \"FABRIC_E_SERVICE_GROUP_DOES_NOT_EXIST\"\n - \"FABRIC_E_CONFIGURATION_PARAMETER_NOT_FOUND\"\n - \"FABRIC_E_DIRECTORY_NOT_FOUND\"\n - \"FABRIC_E_FABRIC_VERSION_NOT_FOUND\"\n - \"FABRIC_E_FILE_NOT_FOUND\"\n - \"FABRIC_E_NAME_DOES_NOT_EXIST\"\n - \"FABRIC_E_PROPERTY_DOES_NOT_EXIST\"\n - \"FABRIC_E_ENUMERATION_COMPLETED\"\n - \"FABRIC_E_SERVICE_MANIFEST_NOT_FOUND\"\n - \"FABRIC_E_KEY_NOT_FOUND\"\n - \"FABRIC_E_HEALTH_ENTITY_NOT_FOUND\"\n - \"FABRIC_E_BACKUP_NOT_ENABLED\"\n - \"FABRIC_E_BACKUP_POLICY_NOT_EXISTING\"\n - \"FABRIC_E_FAULT_ANALYSIS_SERVICE_NOT_EXISTING\"\n - \"FABRIC_E_IMAGEBUILDER_RESERVED_DIRECTORY_ERROR\"\n\n - Possible values of the error code for HTTP status code 409 (Conflict)\n - \"FABRIC_E_APPLICATION_TYPE_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_APPLICATION_TYPE_PROVISION_IN_PROGRESS\"\n - \"FABRIC_E_APPLICATION_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_SERVICE_ALREADY_EXISTS\"\n - \"FABRIC_E_SERVICE_GROUP_ALREADY_EXISTS\"\n - \"FABRIC_E_APPLICATION_TYPE_IN_USE\"\n - \"FABRIC_E_FABRIC_ALREADY_IN_TARGET_VERSION\"\n - \"FABRIC_E_FABRIC_VERSION_ALREADY_EXISTS\"\n - \"FABRIC_E_FABRIC_VERSION_IN_USE\"\n - \"FABRIC_E_FABRIC_UPGRADE_IN_PROGRESS\"\n - \"FABRIC_E_NAME_ALREADY_EXISTS\"\n - \"FABRIC_E_NAME_NOT_EMPTY\"\n - \"FABRIC_E_PROPERTY_CHECK_FAILED\"\n - \"FABRIC_E_SERVICE_METADATA_MISMATCH\"\n - \"FABRIC_E_SERVICE_TYPE_MISMATCH\"\n - \"FABRIC_E_HEALTH_STALE_REPORT\"\n - \"FABRIC_E_SEQUENCE_NUMBER_CHECK_FAILED\"\n - \"FABRIC_E_NODE_HAS_NOT_STOPPED_YET\"\n - \"FABRIC_E_INSTANCE_ID_MISMATCH\"\n - \"FABRIC_E_BACKUP_IN_PROGRESS\"\n - \"FABRIC_E_RESTORE_IN_PROGRESS\"\n - \"FABRIC_E_BACKUP_POLICY_ALREADY_EXISTING\"\n\n - Possible values of the error code for HTTP status code 413 (Request Entity Too Large)\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 500 (Internal Server Error)\n - \"FABRIC_E_NODE_IS_UP\"\n - \"E_FAIL\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_ALREADY_EXISTS\"\n - \"FABRIC_E_SINGLE_INSTANCE_APPLICATION_NOT_FOUND\"\n - \"FABRIC_E_VOLUME_ALREADY_EXISTS\"\n - \"FABRIC_E_VOLUME_NOT_FOUND\"\n - \"SerializationError\"\n\n - Possible values of the error code for HTTP status code 503 (Service Unavailable)\n - \"FABRIC_E_NO_WRITE_QUORUM\"\n - \"FABRIC_E_NOT_PRIMARY\"\n - \"FABRIC_E_NOT_READY\"\n - \"FABRIC_E_RECONFIGURATION_PENDING\"\n - \"FABRIC_E_SERVICE_OFFLINE\"\n - \"E_ABORT\"\n - \"FABRIC_E_VALUE_TOO_LARGE\"\n\n - Possible values of the error code for HTTP status code 504 (Gateway Timeout)\n - \"FABRIC_E_COMMUNICATION_ERROR\"\n - \"FABRIC_E_OPERATION_NOT_COMPLETE\"\n - \"FABRIC_E_TIMEOUT\"" + }, + "Message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "Code" + ] + }, + "ContainerLogs": { + "description": "Container logs.", + "properties": { + "Content": { + "type": "string", + "description": "Container logs." + } + } + }, + "AadMetadata": { + "description": "Azure Active Directory metadata used for secured connection to cluster.", + "properties": { + "authority": { + "type": "string", + "description": "The AAD authority url." + }, + "client": { + "type": "string", + "description": "The AAD client application Id." + }, + "cluster": { + "type": "string", + "description": "The AAD cluster application Id." + }, + "login": { + "type": "string", + "description": "The AAD login url." + }, + "redirect": { + "type": "string", + "description": "The client application redirect address." + }, + "tenant": { + "type": "string", + "description": "The AAD tenant Id." + } + } + }, + "AadMetadataObject": { + "description": "Azure Active Directory metadata object used for secured connection to cluster.", + "properties": { + "type": { + "type": "string", + "description": "The client authentication method." + }, + "metadata": { + "$ref": "#/definitions/AadMetadata", + "description": "Azure Active Directory metadata used for secured connection to cluster." + } + } + }, + "AnalysisEventMetadata": { + "description": "Metadata about an Analysis Event.", + "properties": { + "Delay": { + "type": "string", + "format": "duration", + "description": "The analysis delay." + }, + "Duration": { + "type": "string", + "format": "duration", + "description": "The duration of analysis." + } + } + }, + "ApplicationDefinitionKind": { + "type": "string", + "description": "The mechanism used to define a Service Fabric application.", + "enum": [ + "Invalid", + "ServiceFabricApplicationDescription", + "Compose" + ], + "x-ms-enum": { + "name": "ApplicationDefinitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application definition kind is invalid. All Service Fabric enumerations have the invalid type. The value is 65535." + }, + { + "value": "ServiceFabricApplicationDescription", + "description": "Indicates the application is defined by a Service Fabric application description. The value is 0." + }, + { + "value": "Compose", + "description": "Indicates the application is defined by compose file(s). The value is 1." + } + ] + } + }, + "ApplicationEvent": { + "description": "Represents the base for all Application Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "ApplicationId": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + } + }, + "required": [ + "ApplicationId" + ], + "x-ms-discriminator-value": "ApplicationEvent" + }, + "ApplicationEventList": { + "description": "A list of ApplicationEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationEvent" + } + }, + "ApplicationHealth": { + "description": "Represents the health of the application. Contains the application aggregated health state and the service and deployed application health states.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthState" + }, + "description": "Service health states as found in the health store." + }, + "DeployedApplicationHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthState" + }, + "description": "Deployed application health states as found in the health store." + } + } + }, + "ApplicationHealthEvaluation": { + "x-ms-discriminator-value": "Application", + "description": "Represents health evaluation for an application, containing information about the data and the algorithm used by the health store to evaluate health.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the application. The types of the unhealthy evaluations can be DeployedApplicationsHealthEvaluation, ServicesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "ApplicationHealthPolicies": { + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities.", + "properties": { + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "The wrapper that contains the map with application health policies used to evaluate specific applications in the cluster." + } + } + }, + "ApplicationHealthPolicy": { + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.", + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "MaxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.", + "default": 0 + }, + "DefaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "ServiceTypeHealthPolicyMap": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthPolicyMapItem" + }, + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + }, + "ApplicationHealthPolicyMapItem": { + "description": "Defines an item in ApplicationHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "$ref": "#/definitions/ApplicationName", + "description": "The key of the application health policy map item. This is the name of the application." + }, + "Value": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "The value of the application health policy map item. This is the ApplicationHealthPolicy for this application." + } + } + }, + "ApplicationHealthState": { + "description": "Represents the health state of an application, which contains the application identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "ApplicationHealthStateChunk": { + "description": "Represents the health state chunk of a application.\nThe application health state chunk contains the application name, its aggregated health state and any children services and deployed applications that respect the filters in cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "ServiceHealthStateChunks": { + "$ref": "#/definitions/ServiceHealthStateChunkList", + "description": "The list of service health state chunks in the cluster that respect the filters in the cluster health chunk query description." + }, + "DeployedApplicationHealthStateChunks": { + "$ref": "#/definitions/DeployedApplicationHealthStateChunkList", + "description": "The list of deployed application health state chunks in the cluster that respect the filters in the cluster health chunk query description." + } + } + }, + "ApplicationHealthStateChunkList": { + "description": "The list of application health state chunks in the cluster that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunkList" + } + ], + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthStateChunk" + }, + "description": "The list of application health state chunks that respect the input filters in the chunk query." + } + } + }, + "ApplicationHealthStateFilter": { + "description": "Defines matching criteria to determine whether a application should be included in the cluster health chunk.\nOne filter can match zero, one or multiple applications, depending on its properties.", + "properties": { + "ApplicationNameFilter": { + "type": "string", + "description": "The name of the application that matches the filter, as a fabric uri. The filter is applied only to the specified application, if it exists.\nIf the application doesn't exist, no application is returned in the cluster health chunk based on this filter.\nIf the application exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all applications are matched against the other filter members, like health state filter." + }, + "ApplicationTypeNameFilter": { + "type": "string", + "description": "The name of the application type that matches the filter.\nIf specified, the filter is applied only to applications of the selected application type, if any exists.\nIf no applications of the specified application type exists, no application is returned in the cluster health chunk based on this filter.\nEach application of the specified application type is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all applications are matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the applications. It allows selecting applications if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only applications that match the filter are returned. All applications are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the application name or the application type name are specified. If the filter has default value and application name is specified, the matching application is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches applications with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "ServiceFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthStateFilter" + }, + "description": "Defines a list of filters that specify which services to be included in the returned cluster health chunk as children of the application. The services are returned only if the parent application matches a filter.\nIf the list is empty, no services are returned. All the services are used to evaluate the parent application aggregated health state, regardless of the input filters.\nThe application filter may specify multiple service filters.\nFor example, it can specify a filter to return all services with health state Error and another filter to always include a service identified by its service name." + }, + "DeployedApplicationFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthStateFilter" + }, + "description": "Defines a list of filters that specify which deployed applications to be included in the returned cluster health chunk as children of the application. The deployed applications are returned only if the parent application matches a filter.\nIf the list is empty, no deployed applications are returned. All the deployed applications are used to evaluate the parent application aggregated health state, regardless of the input filters.\nThe application filter may specify multiple deployed application filters.\nFor example, it can specify a filter to return all deployed applications with health state Error and another filter to always include a deployed application on a specified node." + } + } + }, + "ApplicationId": { + "type": "string", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "ApplicationInfo": { + "description": "Information about a Service Fabric application.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "Status": { + "$ref": "#/definitions/ApplicationStatus", + "description": "The status of the application." + }, + "Parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "ApplicationDefinitionKind": { + "$ref": "#/definitions/ApplicationDefinitionKind", + "description": "The mechanism used to define a Service Fabric application." + } + } + }, + "ApplicationLoadInfo": { + "description": "Load Information about a Service Fabric application.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "MinimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes for this application.\nIt is the number of nodes where Service Fabric will reserve Capacity in the cluster which equals to ReservedLoad * MinimumNodes for this Application instance.\nFor applications that do not have application capacity defined this value will be zero." + }, + "MaximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where this application can be instantiated.\nIt is the number of nodes this application is allowed to span.\nFor applications that do not have application capacity defined this value will be zero." + }, + "NodeCount": { + "type": "integer", + "format": "int64", + "description": "The number of nodes on which this application is instantiated.\nFor applications that do not have application capacity defined this value will be zero." + }, + "ApplicationLoadMetricInformation": { + "$ref": "#/definitions/ApplicationLoadMetricInformationList", + "description": "List of application load metric information." + } + } + }, + "ApplicationName": { + "type": "string", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ApplicationNameInfo": { + "description": "Information about the application name.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "ApplicationPackageCleanupPolicy": { + "type": "string", + "description": "The kind of action that needs to be taken for cleaning up the application package after successful provision.", + "enum": [ + "Invalid", + "Default", + "Automatic", + "Manual" + ], + "x-ms-enum": { + "name": "ApplicationPackageCleanupPolicy", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the application package cleanup policy is invalid. This value is default. The value is zero." + }, + { + "value": "Default", + "description": "Indicates that the cleanup policy of application packages is based on the cluster setting \"CleanupApplicationPackageOnProvisionSuccess.\" The value is 1." + }, + { + "value": "Automatic", + "description": "Indicates that the service fabric runtime determines when to do the application package cleanup. By default, cleanup is done on successful provision. The value is 2." + }, + { + "value": "Manual", + "description": "Indicates that the user has to explicitly clean up the application package. The value is 3." + } + ] + } + }, + "ApplicationParameter": { + "description": "Describes an application parameter override to be applied when creating or upgrading an application.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The name of the parameter." + }, + "Value": { + "type": "string", + "description": "The value of the parameter." + } + } + }, + "ApplicationParameterList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationParameter" + }, + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "ApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "Applications", + "description": "Represents health evaluation for applications, containing health evaluations for each unhealthy application that impacted current aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy applications from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of applications from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ApplicationHealthEvaluation that impacted the aggregated health." + } + } + }, + "ApplicationStatus": { + "type": "string", + "description": "The status of the application.", + "enum": [ + "Invalid", + "Ready", + "Upgrading", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates the application status is ready. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the application status is upgrading. The value is 2." + }, + { + "value": "Creating", + "description": "Indicates the application status is creating. The value is 3." + }, + { + "value": "Deleting", + "description": "Indicates the application status is deleting. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates the creation or deletion of application was terminated due to persistent failures. Another create/delete request can be accepted to resume a failed application. The value is 5." + } + ] + } + }, + "ApplicationTypeApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "ApplicationTypeApplications", + "description": "Represents health evaluation for applications of a particular application type. The application type applications evaluation can be returned when cluster health evaluation returns unhealthy aggregated health state, either Error or Warning. It contains health evaluations for each unhealthy application of the included application type that impacted current aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy applications for the application type, specified as an entry in ApplicationTypeHealthPolicyMap." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of applications of the application type found in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ApplicationHealthEvaluation of this application type that impacted the aggregated health." + } + } + }, + "ApplicationTypeDefinitionKind": { + "type": "string", + "description": "The mechanism used to define a Service Fabric application type.", + "enum": [ + "Invalid", + "ServiceFabricApplicationPackage", + "Compose" + ], + "x-ms-enum": { + "name": "ApplicationTypeDefinitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application type definition kind is invalid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "ServiceFabricApplicationPackage", + "description": "Indicates the application type is defined and created by a Service Fabric application package provided by the user. The value is 1." + }, + { + "value": "Compose", + "description": "Indicates the application type is defined and created implicitly as part of a compose deployment. The value is 2." + } + ] + } + }, + "ApplicationTypeHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeHealthPolicyMapItem" + }, + "description": "Defines a map with max percentage unhealthy applications for specific application types.\nEach entry specifies as key the application type name and as value an integer that represents the MaxPercentUnhealthyApplications percentage used to evaluate the applications of the specified application type.\n\nThe application type health policy map can be used during cluster health evaluation to describe special application types.\nThe application types included in the map are evaluated against the percentage specified in the map, and not with the global MaxPercentUnhealthyApplications defined in the cluster health policy.\nThe applications of application types specified in the map are not counted against the global pool of applications.\nFor example, if some applications of a type are critical, the cluster administrator can add an entry to the map for that application type\nand assign it a value of 0% (that is, do not tolerate any failures).\nAll other applications can be evaluated with MaxPercentUnhealthyApplications set to 20% to tolerate some failures out of the thousands of application instances.\nThe application type health policy map is used only if the cluster manifest enables application type health evaluation using the configuration entry for HealthManager/EnableApplicationTypeHealthEvaluation." + }, + "ApplicationTypeHealthPolicyMapItem": { + "description": "Defines an item in ApplicationTypeHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key of the application type health policy map item. This is the name of the application type." + }, + "Value": { + "type": "integer", + "description": "The value of the application type health policy map item.\nThe max percent unhealthy applications allowed for the application type. Must be between zero and 100." + } + } + }, + "ApplicationTypeInfo": { + "description": "Information about an application type.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "Version": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "DefaultParameterList": { + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + }, + "Status": { + "$ref": "#/definitions/ApplicationTypeStatus", + "description": "The status of the application type." + }, + "StatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the application type." + }, + "ApplicationTypeDefinitionKind": { + "$ref": "#/definitions/ApplicationTypeDefinitionKind", + "description": "The mechanism used to define a Service Fabric application type." + } + } + }, + "PagedApplicationTypeInfoList": { + "description": "The list of application types that are provisioned or being provisioned in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of application type information.", + "items": { + "$ref": "#/definitions/ApplicationTypeInfo" + } + } + } + }, + "ApplicationTypeManifest": { + "description": "Contains the manifest describing an application type registered in a Service Fabric cluster.", + "properties": { + "Manifest": { + "type": "string", + "description": "The XML manifest as a string." + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationParameter" + }, + "description": "List of application type parameters that can be overridden when creating or updating the application." + }, + "ApplicationTypeStatus": { + "type": "string", + "description": "The status of the application type.", + "enum": [ + "Invalid", + "Provisioning", + "Available", + "Unprovisioning", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationTypeStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the application type status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Provisioning", + "description": "Indicates that the application type is being provisioned in the cluster. The value is 1." + }, + { + "value": "Available", + "description": "Indicates that the application type is fully provisioned and is available for use. An application of this type and version can be created. The value is 2." + }, + { + "value": "Unprovisioning", + "description": "Indicates that the application type is in process of being unprovisioned from the cluster. The value is 3." + }, + { + "value": "Failed", + "description": "Indicates that the application type provisioning failed and it is unavailable for use. The failure details can be obtained from the application type information query. The failed application type information remains in the cluster until it is unprovisioned or reprovisioned successfully. The value is 4." + } + ] + } + }, + "ApplicationUnhealthyEvaluations": { + "description": "List of health evaluations that resulted in the current aggregated health state.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvaluationWrapper" + } + }, + "ApplicationUpgradeDescription": { + "description": "Describes the parameters for an application upgrade. Note that upgrade description replaces the existing application description. This means that if the parameters are not specified, the existing parameters on the applications will be overwritten with the empty parameters list. This would result in the application using the default value of the parameters from the application manifest. If you do not want to change any existing parameter values, please get the application parameters first using the GetApplicationInfo query and then supply those values as Parameters in this ApplicationUpgradeDescription.", + "properties": { + "Name": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "Parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + } + }, + "required": [ + "Name", + "TargetApplicationTypeVersion", + "UpgradeKind" + ] + }, + "ApplicationUpgradeProgressInfo": { + "description": "Describes the parameters for an application upgrade.", + "properties": { + "Name": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "UpgradeDomains": { + "$ref": "#/definitions/UpgradeDomainInfoList", + "description": "List of upgrade domains and their statuses." + }, + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "NextUpgradeDomain": { + "$ref": "#/definitions/NextUpgradeDomain", + "description": "The name of the next upgrade domain to be processed." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDescription": { + "$ref": "#/definitions/ApplicationUpgradeDescription", + "description": "Describes the parameters for an application upgrade. Note that upgrade description replaces the existing application description. This means that if the parameters are not specified, the existing parameters on the applications will be overwritten with the empty parameters list. This would result in the application using the default value of the parameters from the application manifest. If you do not want to change any existing parameter values, please get the application parameters first using the GetApplicationInfo query and then supply those values as Parameters in this ApplicationUpgradeDescription." + }, + "UpgradeDurationInMilliseconds": { + "type": "string", + "description": "The estimated total amount of time spent processing the overall upgrade." + }, + "UpgradeDomainDurationInMilliseconds": { + "type": "string", + "description": "The estimated total amount of time spent processing the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailureUpgradeDomainProgressInfo", + "description": "Information about the upgrade domain progress at the time of upgrade failure." + }, + "UpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + } + } + }, + "ByteArray": { + "description": "Array of bytes to be sent as an integer array. Each element of array is a number between 0 and 255.", + "type": "array", + "items": { + "type": "integer" + } + }, + "ClusterConfiguration": { + "description": "Information about the standalone cluster configuration.", + "properties": { + "ClusterConfiguration": { + "type": "string", + "description": "The contents of the cluster configuration file." + } + } + }, + "ClusterEvent": { + "description": "Represents the base for all Cluster Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "x-ms-discriminator-value": "ClusterEvent" + }, + "ClusterEventList": { + "description": "A list of ClusterEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ClusterEvent" + } + }, + "ClusterHealth": { + "description": "Represents the health of the cluster.\nContains the cluster aggregated health state, the cluster application and node health states as well as the health events and the unhealthy evaluations.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "NodeHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthState" + }, + "description": "Cluster node health states as found in the health store." + }, + "ApplicationHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthState" + }, + "description": "Cluster application health states as found in the health store." + } + } + }, + "ClusterHealthChunk": { + "description": "Represents the health chunk of the cluster.\nContains the cluster aggregated health state, and the cluster entities that respect the input filter.", + "properties": { + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The HealthState representing the aggregated health state of the cluster computed by Health Manager.\nThe health evaluation of the entity reflects all events reported on the entity and its children (if any).\nThe aggregation is done by applying the desired cluster health policy and the application health policies." + }, + "NodeHealthStateChunks": { + "$ref": "#/definitions/NodeHealthStateChunkList", + "description": "The list of node health state chunks in the cluster that respect the filters in the cluster health chunk query description." + }, + "ApplicationHealthStateChunks": { + "$ref": "#/definitions/ApplicationHealthStateChunkList", + "description": "The list of application health state chunks in the cluster that respect the filters in the cluster health chunk query description." + } + } + }, + "ClusterHealthChunkQueryDescription": { + "description": "The cluster health chunk query description, which can specify the health policies to evaluate cluster health and very expressive filters to select which cluster entities to include in response.", + "properties": { + "NodeFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthStateFilter" + }, + "description": "Defines a list of filters that specify which nodes to be included in the returned cluster health chunk.\nIf no filters are specified, no nodes are returned. All the nodes are used to evaluate the cluster's aggregated health state, regardless of the input filters.\nThe cluster health chunk query may specify multiple node filters.\nFor example, it can specify a filter to return all nodes with health state Error and another filter to always include a node identified by its NodeName." + }, + "ApplicationFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationHealthStateFilter" + }, + "description": "Defines a list of filters that specify which applications to be included in the returned cluster health chunk.\nIf no filters are specified, no applications are returned. All the applications are used to evaluate the cluster's aggregated health state, regardless of the input filters.\nThe cluster health chunk query may specify multiple application filters.\nFor example, it can specify a filter to return all applications with health state Error and another filter to always include applications of a specified application type." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "ApplicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterHealthPolicies": { + "description": "Health policies to evaluate cluster health.", + "properties": { + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + } + } + }, + "ClusterHealthPolicy": { + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.", + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.", + "default": 0 + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.", + "default": 0 + }, + "ApplicationTypeHealthPolicyMap": { + "$ref": "#/definitions/ApplicationTypeHealthPolicyMap", + "description": "Defines a map with max percentage unhealthy applications for specific application types.\nEach entry specifies as key the application type name and as value an integer that represents the MaxPercentUnhealthyApplications percentage used to evaluate the applications of the specified application type.\n\nThe application type health policy map can be used during cluster health evaluation to describe special application types.\nThe application types included in the map are evaluated against the percentage specified in the map, and not with the global MaxPercentUnhealthyApplications defined in the cluster health policy.\nThe applications of application types specified in the map are not counted against the global pool of applications.\nFor example, if some applications of a type are critical, the cluster administrator can add an entry to the map for that application type\nand assign it a value of 0% (that is, do not tolerate any failures).\nAll other applications can be evaluated with MaxPercentUnhealthyApplications set to 20% to tolerate some failures out of the thousands of application instances.\nThe application type health policy map is used only if the cluster manifest enables application type health evaluation using the configuration entry for HealthManager/EnableApplicationTypeHealthEvaluation." + } + } + }, + "ClusterManifest": { + "description": "Information about the cluster manifest.", + "properties": { + "Manifest": { + "type": "string", + "description": "The contents of the cluster manifest file." + } + } + }, + "ClusterLoadInfo": { + "description": "Information about load in a Service Fabric cluster. It holds a summary of all metrics and their load in a cluster.", + "properties": { + "LastBalancingStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The starting time of last resource balancing run." + }, + "LastBalancingEndTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The end time of last resource balancing run." + }, + "LoadMetricInformation": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadMetricInformation" + }, + "description": "List that contains metrics and their load information in this cluster." + } + } + }, + "LoadMetricInformation": { + "description": "Represents data structure that contains load information for a certain metric in a cluster.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the metric for which this load information is provided." + }, + "IsBalancedBefore": { + "type": "boolean", + "description": "Value that indicates whether the metrics is balanced or not before resource balancer run" + }, + "IsBalancedAfter": { + "type": "boolean", + "description": "Value that indicates whether the metrics is balanced or not after resource balancer run." + }, + "DeviationBefore": { + "type": "string", + "format": "double", + "description": "The standard average deviation of the metrics before resource balancer run." + }, + "DeviationAfter": { + "type": "string", + "format": "double", + "description": "The standard average deviation of the metrics after resource balancer run." + }, + "BalancingThreshold": { + "type": "string", + "format": "double", + "description": "The balancing threshold for a certain metric." + }, + "Action": { + "type": "string", + "description": "The current action being taken with regard to this metric" + }, + "ActivityThreshold": { + "type": "string", + "format": "double", + "description": "The Activity Threshold specified for this metric in the system Cluster Manifest." + }, + "ClusterCapacity": { + "type": "string", + "description": "The total cluster capacity for a given metric" + }, + "ClusterLoad": { + "type": "string", + "description": "The total cluster load. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentClusterLoad." + }, + "CurrentClusterLoad": { + "type": "string", + "format": "double", + "description": "The total cluster load." + }, + "ClusterRemainingCapacity": { + "type": "string", + "description": "The remaining capacity for the metric in the cluster. In future releases of Service Fabric this parameter will be deprecated in favor of ClusterCapacityRemaining." + }, + "ClusterCapacityRemaining": { + "type": "string", + "description": "The remaining capacity for the metric in the cluster." + }, + "IsClusterCapacityViolation": { + "type": "boolean", + "description": "Indicates that the metric is currently over capacity in the cluster." + }, + "NodeBufferPercentage": { + "type": "string", + "format": "double", + "description": "The reserved percentage of total node capacity for this metric." + }, + "ClusterBufferedCapacity": { + "type": "string", + "description": "Remaining capacity in the cluster excluding the reserved space. In future releases of Service Fabric this parameter will be deprecated in favor of BufferedClusterCapacityRemaining." + }, + "BufferedClusterCapacityRemaining": { + "type": "string", + "format": "double", + "description": "Remaining capacity in the cluster excluding the reserved space." + }, + "ClusterRemainingBufferedCapacity": { + "type": "string", + "description": "The remaining percentage of cluster total capacity for this metric." + }, + "MinNodeLoadValue": { + "type": "string", + "description": "The minimum load on any node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of MinimumNodeLoad." + }, + "MinimumNodeLoad": { + "type": "string", + "format": "double", + "description": "The minimum load on any node for this metric." + }, + "MinNodeLoadNodeId": { + "$ref": "#/definitions/NodeId", + "description": "The node id of the node with the minimum load for this metric." + }, + "MaxNodeLoadValue": { + "type": "string", + "description": "The maximum load on any node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of MaximumNodeLoad." + }, + "MaximumNodeLoad": { + "type": "string", + "format": "double", + "description": "The maximum load on any node for this metric." + }, + "MaxNodeLoadNodeId": { + "$ref": "#/definitions/NodeId", + "description": "The node id of the node with the maximum load for this metric." + }, + "PlannedLoadRemoval": { + "type": "string", + "format": "double", + "description": "This value represents the load of the replicas that are planned to be removed in the future within the cluster.\nThis kind of load is reported for replicas that are currently being moving to other nodes and for replicas that are currently being dropped but still use the load on the source node." + } + } + }, + "ClusterVersion": { + "description": "The cluster version.", + "properties": { + "Version": { + "type": "string", + "description": "The Service Fabric cluster runtime version." + } + } + }, + "ContainerApiRequestBody": { + "description": "parameters for making container API call.", + "properties": { + "HttpVerb": { + "type": "string", + "description": "HTTP verb of container REST API, defaults to \"GET\"" + }, + "UriPath": { + "type": "string", + "description": "URI path of container REST API" + }, + "Content-Type": { + "type": "string", + "description": "Content type of container REST API request, defaults to \"application/json\"" + }, + "Body": { + "type": "string", + "description": "HTTP request body of container REST API" + } + }, + "required": [ + "UriPath" + ] + }, + "ContainerApiResponse": { + "description": "Response body that wraps container API result.", + "properties": { + "ContainerApiResult": { + "$ref": "#/definitions/ContainerApiResult", + "description": "Container API result." + } + }, + "required": [ + "ContainerApiResult" + ] + }, + "ContainerApiResult": { + "description": "Container API result.", + "properties": { + "Status": { + "type": "integer", + "description": "HTTP status code returned by the target container API" + }, + "Content-Type": { + "type": "string", + "description": "HTTP content type" + }, + "Content-Encoding": { + "type": "string", + "description": "HTTP content encoding" + }, + "Body": { + "type": "string", + "description": "container API result body" + } + }, + "required": [ + "Status" + ] + }, + "ContainerInstanceEvent": { + "description": "Represents the base for all Container Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "x-ms-discriminator-value": "ContainerInstanceEvent" + }, + "ContainerInstanceEventList": { + "description": "A list of ContainerInstanceEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerInstanceEvent" + } + }, + "ContinuationToken": { + "type": "string", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "ConfigParameterOverrideList": { + "type": "array", + "items": { + "$ref": "#/definitions/ConfigParameterOverride" + }, + "description": "List that contains parameters, sections that they belong and their values." + }, + "ConfigParameterOverride": { + "description": "Information about a configuration parameter override.", + "properties": { + "SectionName": { + "type": "string", + "description": "Name of the section for the parameter override." + }, + "ParameterName": { + "type": "string", + "description": "Name of the parameter that has been overridden." + }, + "ParameterValue": { + "type": "string", + "description": "Value of the overridden parameter." + }, + "Timeout": { + "type": "string", + "format": "duration", + "description": "The duration until config override is considered as valid." + }, + "PersistAcrossUpgrade": { + "type": "boolean", + "description": "A value that indicates whether config override will be removed on upgrade or will still be considered as valid." + } + }, + "required": [ + "SectionName", + "ParameterName", + "ParameterValue" + ] + }, + "CurrentUpgradeDomainProgressInfo": { + "description": "Information about the current in-progress upgrade domain.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "CurrentUpgradeDomainDuration": { + "type": "string", + "description": "The estimated amount of time spent processing current Upgrade Domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "DeactivationIntentDescription": { + "description": "Describes the intent or reason for deactivating the node.", + "properties": { + "DeactivationIntent": { + "type": "string", + "description": "Describes the intent or reason for deactivating the node. The possible values are following.", + "enum": [ + "Pause", + "Restart", + "RemoveData" + ], + "x-ms-enum": { + "name": "DeactivationIntent", + "modelAsString": true, + "values": [ + { + "value": "Pause", + "description": "Indicates that the node should be paused. The value is 1." + }, + { + "value": "Restart", + "description": "Indicates that the intent is for the node to be restarted after a short period of time. The value is 2." + }, + { + "value": "RemoveData", + "description": "Indicates the intent is for the node to remove data. The value is 3." + } + ] + } + } + } + }, + "DeltaNodesCheckHealthEvaluation": { + "x-ms-discriminator-value": "DeltaNodesCheck", + "description": "Represents health evaluation for delta nodes, containing health evaluations for each unhealthy node that impacted current aggregated health state.\nCan be returned during cluster upgrade when the aggregated health state of the cluster is Warning or Error.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "BaselineErrorCount": { + "type": "integer", + "format": "int64", + "description": "Number of nodes with aggregated heath state Error in the health store at the beginning of the cluster upgrade." + }, + "BaselineTotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the health store at the beginning of the cluster upgrade." + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of delta unhealthy nodes from the ClusterUpgradeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state.\nIncludes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedApplicationHealth": { + "description": "Information about the health of an application deployed on a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "Name of the application deployed on the node whose health information is described by this object." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where this application is deployed." + }, + "DeployedServicePackageHealthStates": { + "$ref": "#/definitions/DeployedServicePackageHealthStateList", + "description": "Deployed service package health states for the current deployed application as found in the health store." + } + } + }, + "DeployedApplicationHealthEvaluation": { + "x-ms-discriminator-value": "DeployedApplication", + "description": "Represents health evaluation for a deployed application, containing information about the data and the algorithm used by the health store to evaluate health.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where the application is deployed to." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the deployed application.\nThe types of the unhealthy evaluations can be DeployedServicePackagesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "DeployedApplicationHealthState": { + "description": "Represents the health state of a deployed application, which contains the entity identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node on which the service package is deployed." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + } + }, + "DeployedApplicationHealthStateChunk": { + "description": "Represents the health state chunk of a deployed application, which contains the node where the application is deployed, the aggregated health state and any deployed service packages that respect the chunk query description filters.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "NodeName": { + "type": "string", + "description": "The name of node where the application is deployed." + }, + "DeployedServicePackageHealthStateChunks": { + "$ref": "#/definitions/DeployedServicePackageHealthStateChunkList", + "description": "The list of deployed service package health state chunks belonging to the deployed application that respect the filters in the cluster health chunk query description." + } + } + }, + "DeployedApplicationHealthStateChunkList": { + "description": "The list of deployed application health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationHealthStateChunk" + }, + "description": "The list of deployed application health state chunks that respect the input filters in the chunk query." + } + } + }, + "DeployedApplicationHealthStateFilter": { + "description": "Defines matching criteria to determine whether a deployed application should be included as a child of an application in the cluster health chunk.\nThe deployed applications are only returned if the parent application matches a filter specified in the cluster health chunk query description.\nOne filter can match zero, one or multiple deployed applications, depending on its properties.", + "properties": { + "NodeNameFilter": { + "type": "string", + "description": "The name of the node where the application is deployed in order to match the filter.\nIf specified, the filter is applied only to the application deployed on the specified node.\nIf the application is not deployed on the node with the specified name, no deployed application is returned in the cluster health chunk based on this filter.\nOtherwise, the deployed application is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all deployed applications that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the deployed applications. It allows selecting deployed applications if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only deployed applications that match the filter are returned. All deployed applications are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the node name is specified. If the filter has default value and node name is specified, the matching deployed application is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches deployed applications with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "DeployedServicePackageFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthStateFilter" + }, + "description": "Defines a list of filters that specify which deployed service packages to be included in the returned cluster health chunk as children of the parent deployed application. The deployed service packages are returned only if the parent deployed application matches a filter.\nIf the list is empty, no deployed service packages are returned. All the deployed service packages are used to evaluate the parent deployed application aggregated health state, regardless of the input filters.\nThe deployed application filter may specify multiple deployed service package filters.\nFor example, it can specify a filter to return all deployed service packages with health state Error and another filter to always include a deployed service package on a node." + } + } + }, + "DeployedApplicationInfo": { + "description": "Information about application deployed on the node.", + "properties": { + "Id": { + "$ref": "#/definitions/ApplicationId", + "description": "The identity of the application. This is an encoded representation of the application name. This is used in the REST APIs to identify the application resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the application name is \"fabric:/myapp/app1\",\nthe application identity would be \"myapp\\~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "Status": { + "$ref": "#/definitions/DeployedApplicationStatus", + "description": "The status of the application deployed on the node. Following are the possible values." + }, + "WorkDirectory": { + "type": "string", + "description": "The work directory of the application on the node. The work directory can be used to store application data." + }, + "LogDirectory": { + "type": "string", + "description": "The log directory of the application on the node. The log directory can be used to store application logs." + }, + "TempDirectory": { + "type": "string", + "description": "The temp directory of the application on the node. The code packages belonging to the application are forked with this directory set as their temporary directory." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "DeployedApplicationInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedApplicationInfo" + }, + "description": "List of deployed application information." + }, + "DeployedApplicationsHealthEvaluation": { + "x-ms-discriminator-value": "DeployedApplications", + "description": "Represents health evaluation for deployed applications, containing health evaluations for each unhealthy deployed application that impacted current aggregated health state.\nCan be returned when evaluating application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy deployed applications from the ApplicationHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of deployed applications of the application in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy DeployedApplicationHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedApplicationStatus": { + "type": "string", + "description": "The status of the application deployed on the node. Following are the possible values.", + "enum": [ + "Invalid", + "Downloading", + "Activating", + "Active", + "Upgrading", + "Deactivating" + ], + "x-ms-enum": { + "name": "DeployedApplicationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that deployment status is not valid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Downloading", + "description": "Indicates that the package is downloading from the ImageStore. The value is 1." + }, + { + "value": "Activating", + "description": "Indicates that the package is activating. The value is 2." + }, + { + "value": "Active", + "description": "Indicates that the package is active. The value is 3." + }, + { + "value": "Upgrading", + "description": "Indicates that the package is upgrading. The value is 4." + }, + { + "value": "Deactivating", + "description": "Indicates that the package is deactivating. The value is 5." + } + ] + } + }, + "DeployedServicePackageHealth": { + "description": "Information about the health of a service package for a specific application deployed on a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "Name of the service manifest." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node where this service package is deployed." + } + } + }, + "DeployedServicePackageHealthEvaluation": { + "x-ms-discriminator-value": "DeployedServicePackage", + "description": "Represents health evaluation for a deployed service package, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state. The type of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "DeployedServicePackageHealthState": { + "description": "Represents the health state of a deployed service package, containing the entity identifier and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node on which the service package is deployed." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "Name of the manifest describing the service package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServicePackageHealthStateChunk": { + "description": "Represents the health state chunk of a deployed service package, which contains the service manifest name and the service package aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServicePackageHealthStateChunkList": { + "description": "The list of deployed service package health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthStateChunk" + }, + "description": "The list of deployed service package health state chunks that respect the input filters in the chunk query." + } + } + }, + "DeployedServicePackageHealthStateFilter": { + "description": "Defines matching criteria to determine whether a deployed service package should be included as a child of a deployed application in the cluster health chunk.\nThe deployed service packages are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent deployed application and its parent application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple deployed service packages, depending on its properties.", + "properties": { + "ServiceManifestNameFilter": { + "type": "string", + "description": "The name of the service manifest which identifies the deployed service packages that matches the filter.\nIf specified, the filter is applied only to the specified deployed service packages, if any.\nIf no deployed service packages with specified manifest name exist, nothing is returned in the cluster health chunk based on this filter.\nIf any deployed service package exists, they are included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all deployed service packages that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "ServicePackageActivationIdFilter": { + "type": "string", + "description": "The activation ID of a deployed service package that matches the filter.\nIf not specified, the filter applies to all deployed service packages that match the other parameters.\nIf specified, the filter matches only the deployed service package with the specified activation ID." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the deployed service packages. It allows selecting deployed service packages if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only deployed service packages that match the filter are returned. All deployed service packages are used to evaluate the parent deployed application aggregated health state.\nIf not specified, default value is None, unless the deployed service package ID is specified. If the filter has default value and deployed service package ID is specified, the matching deployed service package is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches deployed service packages with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "DeployedServicePackageHealthStateList": { + "description": "List of health states for a service package deployed on a Service Fabric node.", + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageHealthState" + } + }, + "DeployedServicePackagesHealthEvaluation": { + "x-ms-discriminator-value": "DeployedServicePackages", + "description": "Represents health evaluation for deployed service packages, containing health evaluations for each unhealthy deployed service package that impacted current aggregated health state. Can be returned when evaluating deployed application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of deployed service packages of the deployed application in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy DeployedServicePackageHealthEvaluation that impacted the aggregated health." + } + } + }, + "DeployedServiceReplicaInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service replica deployed on a node.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package that hosts this replica." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "ReplicaStatus": { + "$ref": "#/definitions/ReplicaStatus", + "description": "The status of a replica of a service." + }, + "Address": { + "type": "string", + "description": "The last address returned by the replica in Open or ChangeRole." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "HostProcessId": { + "type": "string", + "description": "Host process ID of the process that is hosting the replica. This will be zero if the replica is down. In hyper-v containers this host process ID will be from different kernel." + } + } + }, + "DeployedServiceReplicaInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + }, + "description": "List of deployed service replica information." + }, + "DeployedStatefulServiceReplicaInfo": { + "description": "Information about a stateful service replica deployed on a node.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + }, + "ReconfigurationInformation": { + "$ref": "#/definitions/ReconfigurationInformation", + "description": "Information about current reconfiguration like phase, type, previous configuration role of replica and reconfiguration start date time." + } + } + }, + "DeployedStatelessServiceInstanceInfo": { + "description": "Information about a stateless service instance deployed on a node.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "EntityHealth": { + "description": "Health information common to all entities in the cluster. It contains the aggregated health state, health events and unhealthy evaluation.", + "properties": { + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The HealthState representing the aggregated health state of the entity computed by Health Manager.\nThe health evaluation of the entity reflects all events reported on the entity and its children (if any).\nThe aggregation is done by applying the desired health policy." + }, + "HealthEvents": { + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvent" + }, + "description": "The list of health events reported on the entity." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "The unhealthy evaluations that show why the current aggregated health state was returned by Health Manager." + }, + "HealthStatistics": { + "$ref": "#/definitions/HealthStatistics", + "description": "Shows the health statistics for all children types of the queried entity." + } + } + }, + "EntityHealthState": { + "description": "A base type for the health state of various entities in the cluster. It contains the aggregated health state.", + "properties": { + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "EntityHealthStateChunk": { + "description": "A base type for the health state chunk of various entities in the cluster. It contains the aggregated health state.", + "properties": { + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + } + } + }, + "EntityHealthStateChunkList": { + "description": "A base type for the list of health state chunks found in the cluster. It contains the total number of health states that match the input filters.", + "properties": { + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of entity health state objects that match the specified filters from the cluster health chunk query description." + } + } + }, + "Epoch": { + "description": "An Epoch is a configuration number for the partition as a whole. When the configuration of the replica set changes, for example when the Primary replica changes, the operations that are replicated from the new Primary replica are said to be a new Epoch from the ones which were sent by the old Primary replica.", + "properties": { + "ConfigurationVersion": { + "type": "string", + "description": "The current configuration number of this Epoch. The configuration number is an increasing value that is updated whenever the configuration of this replica set changes." + }, + "DataLossVersion": { + "type": "string", + "description": "The current data loss number of this Epoch. The data loss number property is an increasing value which is updated whenever data loss is suspected, as when loss of a quorum of replicas in the replica set that includes the Primary replica." + } + } + }, + "EventHealthEvaluation": { + "x-ms-discriminator-value": "Event", + "description": "Represents health evaluation of a HealthEvent that was reported on the entity.\nThe health evaluation is returned when evaluating health of an entity results in Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ConsiderWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors. The field is specified in the health policy used to evaluate the entity." + }, + "UnhealthyEvent": { + "$ref": "#/definitions/HealthEvent", + "description": "Represents health information reported on a health entity, such as cluster, application or node, with additional metadata added by the Health Manager." + } + } + }, + "EventList": { + "description": "A list of FabricEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/FabricEvent" + } + }, + "FabricCodeVersionInfo": { + "description": "Information about a Service Fabric code version.", + "properties": { + "CodeVersion": { + "description": "The product version of Service Fabric.", + "type": "string" + } + } + }, + "FabricCodeVersionInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/FabricCodeVersionInfo" + }, + "description": "List of all Service Fabric code versions." + }, + "FabricConfigVersionInfo": { + "description": "Information about a Service Fabric config version.", + "properties": { + "ConfigVersion": { + "description": "The config version of Service Fabric.", + "type": "string" + } + } + }, + "FabricConfigVersionInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/FabricConfigVersionInfo" + }, + "description": "List of all Service Fabric config versions." + }, + "FabricEvent": { + "discriminator": "Kind", + "description": "Represents the base for all Fabric Events.", + "properties": { + "Kind": { + "$ref": "#/definitions/FabricEventKind", + "description": "The kind of FabricEvent." + }, + "EventInstanceId": { + "type": "string", + "format": "uuid", + "description": "The identifier for the FabricEvent instance." + }, + "Category": { + "type": "string", + "description": "The category of event." + }, + "TimeStamp": { + "type": "string", + "format": "date-time", + "description": "The time event was logged." + }, + "HasCorrelatedEvents": { + "type": "boolean", + "description": "Shows there is existing related events available." + } + }, + "required": [ + "Kind", + "EventInstanceId", + "TimeStamp" + ] + }, + "FabricEventKind": { + "type": "string", + "description": "The kind of FabricEvent.", + "enum": [ + "ClusterEvent", + "ContainerInstanceEvent", + "NodeEvent", + "ApplicationEvent", + "ServiceEvent", + "PartitionEvent", + "ReplicaEvent", + "PartitionAnalysisEvent", + "ApplicationCreated", + "ApplicationDeleted", + "ApplicationNewHealthReport", + "ApplicationHealthReportExpired", + "ApplicationUpgradeCompleted", + "ApplicationUpgradeDomainCompleted", + "ApplicationUpgradeRollbackCompleted", + "ApplicationUpgradeRollbackStarted", + "ApplicationUpgradeStarted", + "DeployedApplicationNewHealthReport", + "DeployedApplicationHealthReportExpired", + "ApplicationProcessExited", + "ApplicationContainerInstanceExited", + "NodeAborted", + "NodeAddedToCluster", + "NodeClosed", + "NodeDeactivateCompleted", + "NodeDeactivateStarted", + "NodeDown", + "NodeNewHealthReport", + "NodeHealthReportExpired", + "NodeOpenSucceeded", + "NodeOpenFailed", + "NodeRemovedFromCluster", + "NodeUp", + "PartitionNewHealthReport", + "PartitionHealthReportExpired", + "PartitionReconfigured", + "PartitionPrimaryMoveAnalysis", + "ServiceCreated", + "ServiceDeleted", + "ServiceNewHealthReport", + "ServiceHealthReportExpired", + "DeployedServicePackageNewHealthReport", + "DeployedServicePackageHealthReportExpired", + "StatefulReplicaNewHealthReport", + "StatefulReplicaHealthReportExpired", + "StatelessReplicaNewHealthReport", + "StatelessReplicaHealthReportExpired", + "ClusterNewHealthReport", + "ClusterHealthReportExpired", + "ClusterUpgradeCompleted", + "ClusterUpgradeDomainCompleted", + "ClusterUpgradeRollbackCompleted", + "ClusterUpgradeRollbackStarted", + "ClusterUpgradeStarted", + "ChaosStopped", + "ChaosStarted", + "ChaosCodePackageRestartScheduled", + "ChaosReplicaRemovalScheduled", + "ChaosPartitionSecondaryMoveScheduled", + "ChaosPartitionPrimaryMoveScheduled", + "ChaosReplicaRestartScheduled", + "ChaosNodeRestartScheduled" + ], + "x-ms-enum": { + "name": "FabricEventKind", + "modelAsString": true, + "values": [ + { + "value": "ClusterEvent" + }, + { + "value": "ContainerInstanceEvent" + }, + { + "value": "NodeEvent" + }, + { + "value": "ApplicationEvent" + }, + { + "value": "ServiceEvent" + }, + { + "value": "PartitionEvent" + }, + { + "value": "ReplicaEvent" + }, + { + "value": "PartitionAnalysisEvent" + }, + { + "value": "ApplicationCreated" + }, + { + "value": "ApplicationDeleted" + }, + { + "value": "ApplicationNewHealthReport" + }, + { + "value": "ApplicationHealthReportExpired" + }, + { + "value": "ApplicationUpgradeCompleted" + }, + { + "value": "ApplicationUpgradeDomainCompleted" + }, + { + "value": "ApplicationUpgradeRollbackCompleted" + }, + { + "value": "ApplicationUpgradeRollbackStarted" + }, + { + "value": "ApplicationUpgradeStarted" + }, + { + "value": "DeployedApplicationNewHealthReport" + }, + { + "value": "DeployedApplicationHealthReportExpired" + }, + { + "value": "ApplicationProcessExited" + }, + { + "value": "ApplicationContainerInstanceExited" + }, + { + "value": "NodeAborted" + }, + { + "value": "NodeAddedToCluster" + }, + { + "value": "NodeClosed" + }, + { + "value": "NodeDeactivateCompleted" + }, + { + "value": "NodeDeactivateStarted" + }, + { + "value": "NodeDown" + }, + { + "value": "NodeNewHealthReport" + }, + { + "value": "NodeHealthReportExpired" + }, + { + "value": "NodeOpenSucceeded" + }, + { + "value": "NodeOpenFailed" + }, + { + "value": "NodeRemovedFromCluster" + }, + { + "value": "NodeUp" + }, + { + "value": "PartitionNewHealthReport" + }, + { + "value": "PartitionHealthReportExpired" + }, + { + "value": "PartitionReconfigured" + }, + { + "value": "PartitionPrimaryMoveAnalysis" + }, + { + "value": "ServiceCreated" + }, + { + "value": "ServiceDeleted" + }, + { + "value": "ServiceNewHealthReport" + }, + { + "value": "ServiceHealthReportExpired" + }, + { + "value": "DeployedServicePackageNewHealthReport" + }, + { + "value": "DeployedServicePackageHealthReportExpired" + }, + { + "value": "StatefulReplicaNewHealthReport" + }, + { + "value": "StatefulReplicaHealthReportExpired" + }, + { + "value": "StatelessReplicaNewHealthReport" + }, + { + "value": "StatelessReplicaHealthReportExpired" + }, + { + "value": "ClusterNewHealthReport" + }, + { + "value": "ClusterHealthReportExpired" + }, + { + "value": "ClusterUpgradeCompleted" + }, + { + "value": "ClusterUpgradeDomainCompleted" + }, + { + "value": "ClusterUpgradeRollbackCompleted" + }, + { + "value": "ClusterUpgradeRollbackStarted" + }, + { + "value": "ClusterUpgradeStarted" + }, + { + "value": "ChaosStopped" + }, + { + "value": "ChaosStarted" + }, + { + "value": "ChaosCodePackageRestartScheduled" + }, + { + "value": "ChaosReplicaRemovalScheduled" + }, + { + "value": "ChaosPartitionSecondaryMoveScheduled" + }, + { + "value": "ChaosPartitionPrimaryMoveScheduled" + }, + { + "value": "ChaosReplicaRestartScheduled" + }, + { + "value": "ChaosNodeRestartScheduled" + } + ] + } + }, + "ClusterConfigurationUpgradeStatusInfo": { + "description": "Information about a standalone cluster configuration upgrade status.", + "properties": { + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "ProgressStatus": { + "type": "integer", + "description": "The cluster manifest version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster configuration version." + }, + "Details": { + "type": "string", + "description": "The cluster upgrade status details." + } + } + }, + "FailureAction": { + "type": "string", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode.", + "enum": [ + "Invalid", + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "FailureAction", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the failure action is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rollback", + "description": "The upgrade will start rolling back automatically. The value is 1" + }, + { + "value": "Manual", + "description": "The upgrade will switch to UnmonitoredManual upgrade mode. The value is 2" + } + ] + } + }, + "FailureReason": { + "type": "string", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed.", + "enum": [ + "None", + "Interrupted", + "HealthCheck", + "UpgradeDomainTimeout", + "OverallUpgradeTimeout" + ], + "x-ms-enum": { + "name": "FailureReason", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Indicates the reason is invalid or unknown. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Interrupted", + "description": "There was an external request to roll back the upgrade. The value is 1" + }, + { + "value": "HealthCheck", + "description": "The upgrade failed due to health policy violations. The value is 2" + }, + { + "value": "UpgradeDomainTimeout", + "description": "An upgrade domain took longer than the allowed upgrade domain timeout to process. The value is 3" + }, + { + "value": "OverallUpgradeTimeout", + "description": "The overall upgrade took longer than the allowed upgrade timeout to process. The value is 4" + } + ] + } + }, + "FailureUpgradeDomainProgressInfo": { + "description": "Information about the upgrade domain progress at the time of upgrade failure.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "HealthEvaluation": { + "discriminator": "Kind", + "description": "Represents a health evaluation which describes the data and the algorithm used by health manager to evaluate the health of an entity.", + "properties": { + "Kind": { + "$ref": "#/definitions/HealthEvaluationKind", + "description": "The health manager in the cluster performs health evaluations in determining the aggregated health state of an entity. This enumeration provides information on the kind of evaluation that was performed. Following are the possible values." + }, + "AggregatedHealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "Description": { + "type": "string", + "description": "Description of the health evaluation, which represents a summary of the evaluation process." + } + }, + "required": [ + "Kind" + ] + }, + "HealthEvaluationKind": { + "type": "string", + "description": "The health manager in the cluster performs health evaluations in determining the aggregated health state of an entity. This enumeration provides information on the kind of evaluation that was performed. Following are the possible values.", + "enum": [ + "Invalid", + "Event", + "Replicas", + "Partitions", + "DeployedServicePackages", + "DeployedApplications", + "Services", + "Nodes", + "Applications", + "SystemApplication", + "UpgradeDomainDeployedApplications", + "UpgradeDomainNodes", + "Replica", + "Partition", + "DeployedServicePackage", + "DeployedApplication", + "Service", + "Node", + "Application", + "DeltaNodesCheck", + "UpgradeDomainDeltaNodesCheck", + "ApplicationTypeApplications" + ], + "x-ms-enum": { + "name": "HealthEvaluationKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the health evaluation is invalid. The value is zero." + }, + { + "value": "Event", + "description": "Indicates that the health evaluation is for a health event. The value is 1." + }, + { + "value": "Replicas", + "description": "Indicates that the health evaluation is for the replicas of a partition. The value is 2." + }, + { + "value": "Partitions", + "description": "Indicates that the health evaluation is for the partitions of a service. The value is 3." + }, + { + "value": "DeployedServicePackages", + "description": "Indicates that the health evaluation is for the deployed service packages of a deployed application. The value is 4." + }, + { + "value": "DeployedApplications", + "description": "Indicates that the health evaluation is for the deployed applications of an application. The value is 5." + }, + { + "value": "Services", + "description": "Indicates that the health evaluation is for services of an application. The value is 6." + }, + { + "value": "Nodes", + "description": "Indicates that the health evaluation is for the cluster nodes. The value is 7." + }, + { + "value": "Applications", + "description": "Indicates that the health evaluation is for the cluster applications. The value is 8." + }, + { + "value": "SystemApplication", + "description": "Indicates that the health evaluation is for the system application. The value is 9." + }, + { + "value": "UpgradeDomainDeployedApplications", + "description": "Indicates that the health evaluation is for the deployed applications of an application in an upgrade domain. The value is 10." + }, + { + "value": "UpgradeDomainNodes", + "description": "Indicates that the health evaluation is for the cluster nodes in an upgrade domain. The value is 11." + }, + { + "value": "Replica", + "description": "Indicates that the health evaluation is for a replica. The value is 13." + }, + { + "value": "Partition", + "description": "Indicates that the health evaluation is for a partition. The value is 14." + }, + { + "value": "DeployedServicePackage", + "description": "Indicates that the health evaluation is for a deployed service package. The value is 16." + }, + { + "value": "DeployedApplication", + "description": "Indicates that the health evaluation is for a deployed application. The value is 17." + }, + { + "value": "Service", + "description": "Indicates that the health evaluation is for a service. The value is 15." + }, + { + "value": "Node", + "description": "Indicates that the health evaluation is for a node. The value is 12." + }, + { + "value": "Application", + "description": "Indicates that the health evaluation is for an application. The value is 18." + }, + { + "value": "DeltaNodesCheck", + "description": "Indicates that the health evaluation is for the delta of unhealthy cluster nodes. The value is 19." + }, + { + "value": "UpgradeDomainDeltaNodesCheck", + "description": "Indicates that the health evaluation is for the delta of unhealthy upgrade domain cluster nodes. The value is 20." + }, + { + "value": "ApplicationTypeApplications", + "description": "– Indicates that the health evaluation is for applications of an application type. The value is 21." + } + ] + } + }, + "HealthEvaluationWrapper": { + "description": "Wrapper object for health evaluation.", + "properties": { + "HealthEvaluation": { + "$ref": "#/definitions/HealthEvaluation", + "description": "Represents a health evaluation which describes the data and the algorithm used by health manager to evaluate the health of an entity." + } + } + }, + "HealthEvent": { + "description": "Represents health information reported on a health entity, such as cluster, application or node, with additional metadata added by the Health Manager.", + "allOf": [ + { + "$ref": "#/definitions/HealthInformation" + } + ], + "properties": { + "IsExpired": { + "type": "boolean", + "description": "Returns true if the health event is expired, otherwise false." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when the health report was sent by the source." + }, + "LastModifiedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when the health report was last modified by the health store." + }, + "LastOkTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Ok', this property returns the time at which the health report was first reported with 'Ok'.\nFor periodic reporting, many reports with the same state may have been generated.\nThis property returns the date and time when the first 'Ok' health report was received.\n\nIf the current health state is 'Error' or 'Warning', returns the date and time at which the health state was last in 'Ok', before transitioning to a different state.\n\nIf the health state was never 'Ok', the value will be zero date-time." + }, + "LastWarningTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Warning', this property returns the time at which the health report was first reported with 'Warning'. For periodic reporting, many reports with the same state may have been generated however, this property returns only the date and time at the first 'Warning' health report was received.\n\nIf the current health state is 'Ok' or 'Error', returns the date and time at which the health state was last in 'Warning', before transitioning to a different state.\n\nIf the health state was never 'Warning', the value will be zero date-time." + }, + "LastErrorTransitionAt": { + "type": "string", + "format": "date-time", + "description": "If the current health state is 'Error', this property returns the time at which the health report was first reported with 'Error'. For periodic reporting, many reports with the same state may have been generated however, this property returns only the date and time at the first 'Error' health report was received.\n\nIf the current health state is 'Ok' or 'Warning', returns the date and time at which the health state was last in 'Error', before transitioning to a different state.\n\nIf the health state was never 'Error', the value will be zero date-time." + } + } + }, + "HealthInformation": { + "description": "Represents common health report information. It is included in all health reports sent to health store and in all health events returned by health queries.", + "required": [ + "SourceId", + "Property", + "HealthState" + ], + "properties": { + "SourceId": { + "type": "string", + "description": "The source name that identifies the client/watchdog/system component that generated the health information." + }, + "Property": { + "type": "string", + "description": "The property of the health information. An entity can have health reports for different properties.\nThe property is a string and not a fixed enumeration to allow the reporter flexibility to categorize the state condition that triggers the report.\nFor example, a reporter with SourceId \"LocalWatchdog\" can monitor the state of the available disk on a node,\nso it can report \"AvailableDisk\" property on that node.\nThe same reporter can monitor the node connectivity, so it can report a property \"Connectivity\" on the same node.\nIn the health store, these reports are treated as separate health events for the specified node.\n\nTogether with the SourceId, the property uniquely identifies the health information." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "TimeToLiveInMilliSeconds": { + "type": "string", + "format": "duration", + "description": "The duration for which this health report is valid. This field uses ISO8601 format for specifying the duration.\nWhen clients report periodically, they should send reports with higher frequency than time to live.\nIf clients report on transition, they can set the time to live to infinite.\nWhen time to live expires, the health event that contains the health information\nis either removed from health store, if RemoveWhenExpired is true, or evaluated at error, if RemoveWhenExpired false.\n\nIf not specified, time to live defaults to infinite value." + }, + "Description": { + "type": "string", + "description": "The description of the health information. It represents free text used to add human readable information about the report.\nThe maximum string length for the description is 4096 characters.\nIf the provided string is longer, it will be automatically truncated.\nWhen truncated, the last characters of the description contain a marker \"[Truncated]\", and total string size is 4096 characters.\nThe presence of the marker indicates to users that truncation occurred.\nNote that when truncated, the description has less than 4096 characters from the original string." + }, + "SequenceNumber": { + "type": "string", + "description": "The sequence number for this health report as a numeric string.\nThe report sequence number is used by the health store to detect stale reports.\nIf not specified, a sequence number is auto-generated by the health client when a report is added." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Value that indicates whether the report is removed from health store when it expires.\nIf set to true, the report is removed from the health store after it expires.\nIf set to false, the report is treated as an error when expired. The value of this property is false by default.\nWhen clients report periodically, they should set RemoveWhenExpired false (default).\nThis way, if the reporter has issues (e.g. deadlock) and can't report, the entity is evaluated at error when the health report expires.\nThis flags the entity as being in Error health state." + }, + "HealthReportId": { + "type": "string", + "description": "A health report ID which identifies the health report and can be used to find more detailed information about a specific health event at\naka.ms/sfhealthid" + } + } + }, + "Int64RangePartitionInformation": { + "description": "Describes the partition information for the integer range that is based on partition schemes.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Int64Range", + "properties": { + "LowKey": { + "type": "string", + "description": "Specifies the minimum key value handled by this partition." + }, + "HighKey": { + "type": "string", + "description": "Specifies the maximum key value handled by this partition." + } + } + }, + "MinInstanceCount": { + "type": "integer", + "default": 1, + "minimum": 1, + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "type": "integer", + "default": 0, + "minimum": 0, + "maximum": 100, + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MonitoringPolicyDescription": { + "description": "Describes the parameters for monitoring an upgrade in Monitored mode.", + "properties": { + "FailureAction": { + "$ref": "#/definitions/FailureAction", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode." + }, + "HealthCheckWaitDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckStableDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckRetryTimeoutInMilliseconds": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeDomainTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "NamedPartitionInformation": { + "description": "Describes the partition information for the name as a string that is based on partition schemes.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Named", + "properties": { + "Name": { + "type": "string", + "description": "Name of the partition." + } + } + }, + "NextUpgradeDomain": { + "type": "string", + "description": "The name of the next upgrade domain to be processed." + }, + "NodeDeactivationInfo": { + "description": "Information about the node deactivation. This information is valid for a node that is undergoing deactivation or has already been deactivated.", + "properties": { + "NodeDeactivationIntent": { + "$ref": "#/definitions/NodeDeactivationIntent", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it." + }, + "NodeDeactivationStatus": { + "$ref": "#/definitions/NodeDeactivationStatus", + "description": "The status of node deactivation operation. Following are the possible values." + }, + "NodeDeactivationTask": { + "$ref": "#/definitions/NodeDeactivationTaskList", + "description": "List of tasks representing the deactivation operation on the node." + }, + "PendingSafetyChecks": { + "$ref": "#/definitions/SafetyCheckInfoList", + "description": "List of pending safety checks" + } + } + }, + "NodeDeactivationIntent": { + "type": "string", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it.", + "enum": [ + "Invalid", + "Pause", + "Restart", + "RemoveData", + "RemoveNode" + ], + "x-ms-enum": { + "name": "NodeDeactivationIntent", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node deactivation intent is invalid. All Service Fabric enumerations have the invalid type. The value is zero. This value is not used." + }, + { + "value": "Pause", + "description": "Indicates that the node should be paused. The value is 1." + }, + { + "value": "Restart", + "description": "Indicates that the intent is for the node to be restarted after a short period of time. Service Fabric does not restart the node, this action is done outside of Service Fabric. The value is 2." + }, + { + "value": "RemoveData", + "description": "Indicates that the intent is to reimage the node. Service Fabric does not reimage the node, this action is done outside of Service Fabric. The value is 3." + }, + { + "value": "RemoveNode", + "description": "Indicates that the node is being decommissioned and is not expected to return. Service Fabric does not decommission the node, this action is done outside of Service Fabric. The value is 4." + } + ] + } + }, + "NodeDeactivationStatus": { + "type": "string", + "description": "The status of node deactivation operation. Following are the possible values.", + "enum": [ + "None", + "SafetyCheckInProgress", + "SafetyCheckComplete", + "Completed" + ], + "x-ms-enum": { + "name": "NodeDeactivationStatus", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "No status is associated with the task. The value is zero." + }, + { + "value": "SafetyCheckInProgress", + "description": "When a node is deactivated Service Fabric performs checks to ensure that the operation is safe to proceed to ensure availability of the service and reliability of the state. This value indicates that one or more safety checks are in progress. The value is 1." + }, + { + "value": "SafetyCheckComplete", + "description": "When a node is deactivated Service Fabric performs checks to ensure that the operation is safe to proceed to ensure availability of the service and reliability of the state. This value indicates that all safety checks have been completed. The value is 2." + }, + { + "value": "Completed", + "description": "The task is completed. The value is 3." + } + ] + } + }, + "NodeDeactivationTask": { + "description": "The task representing the deactivation operation on the node.", + "properties": { + "NodeDeactivationTaskId": { + "$ref": "#/definitions/NodeDeactivationTaskId", + "description": "Identity of the task related to deactivation operation on the node." + }, + "NodeDeactivationIntent": { + "$ref": "#/definitions/NodeDeactivationIntent", + "description": "The intent or the reason for deactivating the node. Following are the possible values for it." + } + } + }, + "NodeDeactivationTaskId": { + "description": "Identity of the task related to deactivation operation on the node.", + "properties": { + "Id": { + "type": "string", + "description": "Value of the task id." + }, + "NodeDeactivationTaskType": { + "$ref": "#/definitions/NodeDeactivationTaskType", + "description": "The type of the task that performed the node deactivation. Following are the possible values." + } + } + }, + "NodeDeactivationTaskList": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeDeactivationTask" + }, + "description": "List of tasks representing the deactivation operation on the node." + }, + "NodeDeactivationTaskType": { + "type": "string", + "description": "The type of the task that performed the node deactivation. Following are the possible values.", + "enum": [ + "Invalid", + "Infrastructure", + "Repair", + "Client" + ], + "x-ms-enum": { + "name": "NodeDeactivationTaskType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node deactivation task type is invalid. All Service Fabric enumerations have the invalid type. The value is zero. This value is not used." + }, + { + "value": "Infrastructure", + "description": "Specifies the task created by Infrastructure hosting the nodes. The value is 1." + }, + { + "value": "Repair", + "description": "Specifies the task that was created by the Repair Manager service. The value is 2." + }, + { + "value": "Client", + "description": "Specifies that the task was created by using the public API. The value is 3." + } + ] + } + }, + "NodeEvent": { + "description": "Represents the base for all Node Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + } + }, + "required": [ + "NodeName" + ], + "x-ms-discriminator-value": "NodeEvent" + }, + "NodeEventList": { + "description": "A list of NodeEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/NodeEvent" + } + }, + "NodeHealth": { + "description": "Information about the health of a Service Fabric node.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node whose health information is described by this object." + } + } + }, + "NodeHealthEvaluation": { + "x-ms-discriminator-value": "Node", + "description": "Represents health evaluation for a node, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the node. The types of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "NodeHealthState": { + "description": "Represents the health state of a node, which contains the node identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "Id": { + "$ref": "#/definitions/NodeId", + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name." + } + } + }, + "NodeHealthStateChunk": { + "description": "Represents the health state chunk of a node, which contains the node name and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + } + } + }, + "NodeHealthStateChunkList": { + "description": "The list of node health state chunks in the cluster that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunkList" + } + ], + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeHealthStateChunk" + }, + "description": "The list of node health state chunks that respect the input filters in the chunk query." + } + } + }, + "NodeHealthStateFilter": { + "description": "Defines matching criteria to determine whether a node should be included in the returned cluster health chunk.\nOne filter can match zero, one or multiple nodes, depending on its properties.\nCan be specified in the cluster health chunk query description.", + "properties": { + "NodeNameFilter": { + "type": "string", + "description": "Name of the node that matches the filter. The filter is applied only to the specified node, if it exists.\nIf the node doesn't exist, no node is returned in the cluster health chunk based on this filter.\nIf the node exists, it is included in the cluster health chunk if the health state matches the other filter properties.\nIf not specified, all nodes that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the nodes. It allows selecting nodes if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only nodes that match the filter are returned. All nodes are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the node name is specified. If the filter has default value and node name is specified, the matching node is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches nodes with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "NodeId": { + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name.", + "properties": { + "Id": { + "type": "string", + "description": "Value of the node Id. This is a 128 bit integer." + } + } + }, + "NodeIdList": { + "description": "A list of NodeIds.", + "type": "array", + "items": { + "$ref": "#/definitions/NodeId" + } + }, + "NodeInfo": { + "description": "Information about a node in Service Fabric cluster.", + "properties": { + "Name": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "The IP address or fully qualified domain name of the node." + }, + "Type": { + "type": "string", + "description": "The type of the node." + }, + "CodeVersion": { + "type": "string", + "description": "The version of Service Fabric binaries that the node is running." + }, + "ConfigVersion": { + "type": "string", + "description": "The version of Service Fabric cluster manifest that the node is using." + }, + "NodeStatus": { + "$ref": "#/definitions/NodeStatus", + "description": "The status of the node." + }, + "NodeUpTimeInSeconds": { + "type": "string", + "description": "Time in seconds since the node has been in NodeStatus Up. Value zero indicates that the node is not Up." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if the node is a seed node or not. Returns true if the node is a seed node, otherwise false. A quorum of seed nodes are required for proper operation of Service Fabric cluster." + }, + "UpgradeDomain": { + "type": "string", + "description": "The upgrade domain of the node." + }, + "FaultDomain": { + "type": "string", + "description": "The fault domain of the node." + }, + "Id": { + "$ref": "#/definitions/NodeId", + "description": "An internal ID used by Service Fabric to uniquely identify a node. Node Id is deterministically generated from node name." + }, + "InstanceId": { + "type": "string", + "description": "The ID representing the node instance. While the ID of the node is deterministically generated from the node name and remains same across restarts, the InstanceId changes every time node restarts." + }, + "NodeDeactivationInfo": { + "$ref": "#/definitions/NodeDeactivationInfo", + "description": "Information about the node deactivation. This information is valid for a node that is undergoing deactivation or has already been deactivated." + }, + "IsStopped": { + "type": "boolean", + "description": "Indicates if the node is stopped by calling stop node API or not. Returns true if the node is stopped, otherwise false." + }, + "NodeDownTimeInSeconds": { + "type": "string", + "description": "Time in seconds since the node has been in NodeStatus Down. Value zero indicates node is not NodeStatus Down." + }, + "NodeUpAt": { + "type": "string", + "format": "date-time", + "description": "Date time in UTC when the node came up. If the node has never been up then this value will be zero date time." + }, + "NodeDownAt": { + "type": "string", + "format": "date-time", + "description": "Date time in UTC when the node went down. If node has never been down then this value will be zero date time." + } + } + }, + "NodeLoadInfo": { + "description": "Information about load on a Service Fabric node. It holds a summary of all metrics and their load on a node.", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "Name of the node for which the load information is provided by this object." + }, + "NodeLoadMetricInformation": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeLoadMetricInformation" + }, + "description": "List that contains metrics and their load information on this node." + } + } + }, + "NodeLoadMetricInformation": { + "description": "Represents data structure that contains load information for a certain metric on a node.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the metric for which this load information is provided." + }, + "NodeCapacity": { + "type": "string", + "description": "Total capacity on the node for this metric." + }, + "NodeLoad": { + "type": "string", + "description": "Current load on the node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentNodeLoad." + }, + "NodeRemainingCapacity": { + "type": "string", + "description": "The remaining capacity on the node for this metric. In future releases of Service Fabric this parameter will be deprecated in favor of NodeCapacityRemaining." + }, + "IsCapacityViolation": { + "type": "boolean", + "description": "Indicates if there is a capacity violation for this metric on the node." + }, + "NodeBufferedCapacity": { + "type": "string", + "description": "The value that indicates the reserved capacity for this metric on the node." + }, + "NodeRemainingBufferedCapacity": { + "type": "string", + "description": "The remaining reserved capacity for this metric on the node. In future releases of Service Fabric this parameter will be deprecated in favor of BufferedNodeCapacityRemaining." + }, + "CurrentNodeLoad": { + "type": "string", + "format": "double", + "description": "Current load on the node for this metric." + }, + "NodeCapacityRemaining": { + "type": "string", + "format": "double", + "description": "The remaining capacity on the node for the metric." + }, + "BufferedNodeCapacityRemaining": { + "type": "string", + "format": "double", + "description": "The remaining capacity which is not reserved by NodeBufferPercentage for this metric on the node." + }, + "PlannedNodeLoadRemoval": { + "type": "string", + "format": "double", + "description": "This value represents the load of the replicas that are planned to be removed in the future.\nThis kind of load is reported for replicas that are currently being moving to other nodes and for replicas that are currently being dropped but still use the load on the source node." + } + } + }, + "NodeName": { + "type": "string", + "description": "The name of a Service Fabric node." + }, + "NodeType": { + "type": "string", + "description": "The type name of a Service Fabric node.\nRefer to the article [The relationship between Service Fabric node types and Virtual Machine Scale Sets](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-nodetypes) for more details." + }, + "NodesHealthEvaluation": { + "x-ms-discriminator-value": "Nodes", + "description": "Represents health evaluation for nodes, containing health evaluations for each unhealthy node that impacted current aggregated health state. Can be returned when evaluating cluster health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy nodes from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes found in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "NodeStatus": { + "type": "string", + "description": "The status of the node.", + "enum": [ + "Invalid", + "Up", + "Down", + "Enabling", + "Disabling", + "Disabled", + "Unknown", + "Removed" + ], + "x-ms-enum": { + "name": "NodeStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the node status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Up", + "description": "Indicates the node is up. The value is 1." + }, + { + "value": "Down", + "description": "Indicates the node is down. The value is 2." + }, + { + "value": "Enabling", + "description": "Indicates the node is in process of being enabled. The value is 3." + }, + { + "value": "Disabling", + "description": "Indicates the node is in the process of being disabled. The value is 4." + }, + { + "value": "Disabled", + "description": "Indicates the node is disabled. The value is 5." + }, + { + "value": "Unknown", + "description": "Indicates the node is unknown. A node would be in Unknown state if Service Fabric does not have authoritative information about that node. This can happen if the system learns about a node at runtime.The value is 6." + }, + { + "value": "Removed", + "description": "Indicates the node is removed. A node would be in Removed state if NodeStateRemoved API has been called for this node. In other words, Service Fabric has been informed that the persisted state on the node has been permanently lost. The value is 7." + } + ] + } + }, + "NodeUpgradePhase": { + "type": "string", + "description": "The state of the upgrading node.", + "enum": [ + "Invalid", + "PreUpgradeSafetyCheck", + "Upgrading", + "PostUpgradeSafetyCheck" + ], + "x-ms-enum": { + "name": "NodeUpgradePhase", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "PreUpgradeSafetyCheck", + "description": "The upgrade has not started yet due to pending safety checks. The value is 1" + }, + { + "value": "Upgrading", + "description": "The upgrade is in progress. The value is 2" + }, + { + "value": "PostUpgradeSafetyCheck", + "description": "The upgrade has completed and post upgrade safety checks are being performed. The value is 3" + } + ] + } + }, + "NodeUpgradeProgressInfo": { + "description": "Information about the upgrading node and its status", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "UpgradePhase": { + "$ref": "#/definitions/NodeUpgradePhase", + "description": "The state of the upgrading node." + }, + "PendingSafetyChecks": { + "$ref": "#/definitions/SafetyCheckInfoList", + "description": "List of pending safety checks" + } + } + }, + "NodeUpgradeProgressInfoList": { + "type": "array", + "description": "List of upgrading nodes and their statuses", + "items": { + "$ref": "#/definitions/NodeUpgradeProgressInfo" + } + }, + "PagedApplicationInfoList": { + "description": "The list of applications in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of application information.", + "items": { + "$ref": "#/definitions/ApplicationInfo" + } + } + } + }, + "PagedDeployedApplicationInfoList": { + "description": "The list of deployed applications in activating, downloading, or active states on a node.\nThe list is paged when all of the results cannot fit in a single message.\nThe next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of deployed application information.", + "items": { + "$ref": "#/definitions/DeployedApplicationInfo" + } + } + } + }, + "PagedNodeInfoList": { + "description": "The list of nodes in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of node information.", + "items": { + "$ref": "#/definitions/NodeInfo" + } + } + } + }, + "PagedServicePartitionInfoList": { + "description": "The list of partition in the cluster for a service. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service partition information.", + "items": { + "$ref": "#/definitions/ServicePartitionInfo" + } + } + } + }, + "PagedReplicaInfoList": { + "description": "The list of replicas in the cluster for a given partition. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of replica information.", + "items": { + "$ref": "#/definitions/ReplicaInfo" + } + } + } + }, + "PagedServiceInfoList": { + "description": "The list of services in the cluster for an application. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service information.", + "items": { + "$ref": "#/definitions/ServiceInfo" + } + } + } + }, + "PartitionAnalysisEvent": { + "description": "Represents the base for all Partition Analysis Events.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "Metadata": { + "$ref": "#/definitions/AnalysisEventMetadata", + "description": "Metadata about an Analysis Event." + } + }, + "required": [ + "Metadata" + ], + "x-ms-discriminator-value": "PartitionAnalysisEvent" + }, + "PartitionEvent": { + "description": "Represents the base for all Partition Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + }, + "required": [ + "PartitionId" + ], + "x-ms-discriminator-value": "PartitionEvent" + }, + "PartitionEventList": { + "description": "A list of PartitionEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/PartitionEvent" + } + }, + "PartitionHealth": { + "description": "Information about the health of a Service Fabric partition.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "ID of the partition whose health information is described by this object." + }, + "ReplicaHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthState" + }, + "description": "The list of replica health states associated with the partition." + } + } + }, + "PartitionHealthEvaluation": { + "x-ms-discriminator-value": "Partition", + "description": "Represents health evaluation for a partition, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition whose health evaluation is described by this object." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the partition. The types of the unhealthy evaluations can be ReplicasHealthEvaluation or EventHealthEvaluation." + } + } + }, + "PartitionHealthState": { + "description": "Represents the health state of a partition, which contains the partition identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition whose health state is described by this object." + } + } + }, + "PartitionHealthStateChunk": { + "description": "Represents the health state chunk of a partition, which contains the partition ID, its aggregated health state and any replicas that respect the filters in the cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The Id of the partition." + }, + "ReplicaHealthStateChunks": { + "$ref": "#/definitions/ReplicaHealthStateChunkList", + "description": "The list of replica health state chunks belonging to the partition that respect the filters in the cluster health chunk query description." + } + } + }, + "PartitionHealthStateChunkList": { + "description": "The list of partition health state chunks that respect the input filters in the chunk query description.\nReturned by get cluster health state chunks query as part of the parent application hierarchy.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthStateChunk" + }, + "description": "The list of partition health state chunks that respect the input filters in the chunk query." + } + } + }, + "PartitionHealthStateFilter": { + "description": "Defines matching criteria to determine whether a partition should be included as a child of a service in the cluster health chunk.\nThe partitions are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent service and application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple partitions, depending on its properties.", + "properties": { + "PartitionIdFilter": { + "type": "string", + "format": "uuid", + "description": "ID of the partition that matches the filter. The filter is applied only to the specified partition, if it exists.\nIf the partition doesn't exist, no partition is returned in the cluster health chunk based on this filter.\nIf the partition exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all partitions that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the partitions. It allows selecting partitions if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only partitions that match the filter are returned. All partitions are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the partition ID is specified. If the filter has default value and partition ID is specified, the matching partition is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches partitions with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "ReplicaFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthStateFilter" + }, + "description": "Defines a list of filters that specify which replicas to be included in the returned cluster health chunk as children of the parent partition. The replicas are returned only if the parent partition matches a filter.\nIf the list is empty, no replicas are returned. All the replicas are used to evaluate the parent partition aggregated health state, regardless of the input filters.\nThe partition filter may specify multiple replica filters.\nFor example, it can specify a filter to return all replicas with health state Error and another filter to always include a replica identified by its replica id." + } + } + }, + "PartitionId": { + "type": "string", + "format": "uuid", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "PartitionInformation": { + "discriminator": "ServicePartitionKind", + "description": "Information about the partition identity, partitioning scheme and keys supported by it.", + "required": [ + "ServicePartitionKind" + ], + "properties": { + "ServicePartitionKind": { + "$ref": "#/definitions/ServicePartitionKind", + "description": "The kind of partitioning scheme used to partition the service." + }, + "Id": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + } + }, + "ProvisionFabricDescription": { + "description": "Describes the parameters for provisioning a cluster.", + "properties": { + "CodeFilePath": { + "type": "string", + "description": "The cluster code package file path." + }, + "ClusterManifestFilePath": { + "type": "string", + "description": "The cluster manifest file path." + } + } + }, + "ProvisionApplicationTypeKind": { + "type": "string", + "description": "The kind of application type registration or provision requested. The application package can be registered or provisioned either from the image store or from an external store. Following are the kinds of the application type provision.", + "enum": [ + "Invalid", + "ImageStorePath", + "ExternalStore" + ], + "x-ms-enum": { + "name": "ProvisionApplicationTypeKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the provision kind is invalid. This value is default and should not be used. The value is zero." + }, + { + "value": "ImageStorePath", + "description": "Indicates that the provision is for a package that was previously uploaded to the image store. The value is 1." + }, + { + "value": "ExternalStore", + "description": "Indicates that the provision is for an application package that was previously uploaded to an external store. The application package ends with the extension *.sfpkg. The value is 2." + } + ] + } + }, + "ProvisionApplicationTypeDescriptionBase": { + "discriminator": "Kind", + "description": "Represents the type of registration or provision requested, and if the operation needs to be asynchronous or not. Supported types of provision operations are from either image store or external store.", + "properties": { + "Kind": { + "$ref": "#/definitions/ProvisionApplicationTypeKind", + "description": "The kind of application type registration or provision requested. The application package can be registered or provisioned either from the image store or from an external store. Following are the kinds of the application type provision." + }, + "Async": { + "type": "boolean", + "description": "Indicates whether or not provisioning should occur asynchronously. When set to true, the provision operation returns when the request is accepted by the system, and the provision operation continues without any timeout limit. The default value is false. For large application packages, we recommend setting the value to true." + } + }, + "required": [ + "Kind", + "Async" + ] + }, + "ProvisionApplicationTypeDescription": { + "description": "Describes the operation to register or provision an application type using an application package uploaded to the Service Fabric image store.", + "required": [ + "ApplicationTypeBuildPath" + ], + "allOf": [ + { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + ], + "properties": { + "ApplicationTypeBuildPath": { + "description": "The relative path for the application package in the image store specified during the prior upload operation.", + "type": "string" + }, + "ApplicationPackageCleanupPolicy": { + "$ref": "#/definitions/ApplicationPackageCleanupPolicy", + "description": "The kind of action that needs to be taken for cleaning up the application package after successful provision." + } + }, + "x-ms-discriminator-value": "ImageStorePath" + }, + "ExternalStoreProvisionApplicationTypeDescription": { + "description": "Describes the operation to register or provision an application type using an application package from an external store instead of a package uploaded to the Service Fabric image store.", + "allOf": [ + { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + ], + "properties": { + "ApplicationPackageDownloadUri": { + "description": "The path to the '.sfpkg' application package from where the application package can be downloaded using HTTP or HTTPS protocols. The application package can be stored in an external store that provides GET operation to download the file. Supported protocols are HTTP and HTTPS, and the path must allow READ access.", + "type": "string" + }, + "ApplicationTypeName": { + "description": "The application type name represents the name of the application type found in the application manifest.", + "type": "string" + }, + "ApplicationTypeVersion": { + "description": "The application type version represents the version of the application type found in the application manifest.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ExternalStore", + "required": [ + "ApplicationPackageDownloadUri", + "ApplicationTypeName", + "ApplicationTypeVersion" + ] + }, + "UnprovisionFabricDescription": { + "description": "Describes the parameters for unprovisioning a cluster.", + "properties": { + "CodeVersion": { + "type": "string", + "description": "The cluster code package version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster manifest version." + } + } + }, + "ResumeClusterUpgradeDescription": { + "description": "Describes the parameters for resuming a cluster upgrade.", + "properties": { + "UpgradeDomain": { + "type": "string", + "description": "The next upgrade domain for this cluster upgrade." + } + }, + "required": [ + "UpgradeDomain" + ] + }, + "StartClusterUpgradeDescription": { + "description": "Describes the parameters for starting a cluster upgrade.", + "properties": { + "CodeVersion": { + "type": "string", + "description": "The cluster code version." + }, + "ConfigVersion": { + "type": "string", + "description": "The cluster configuration version." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "EnableDeltaHealthEvaluation": { + "type": "boolean", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + } + } + }, + "UpdateClusterUpgradeDescription": { + "description": "Parameters for updating a cluster upgrade.", + "properties": { + "UpgradeKind": { + "$ref": "#/definitions/UpgradeType", + "description": "The type of upgrade out of the following possible values." + }, + "UpdateDescription": { + "$ref": "#/definitions/RollingUpgradeUpdateDescription", + "description": "Describes the parameters for updating a rolling upgrade of application or cluster." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "EnableDeltaHealthEvaluation": { + "$ref": "#/definitions/DeltaHealthEvaluationBool", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "SafetyCheckKind": { + "type": "string", + "description": "The kind of safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state. Following are the kinds of safety checks.", + "enum": [ + "Invalid", + "EnsureSeedNodeQuorum", + "EnsurePartitionQuorum", + "WaitForPrimaryPlacement", + "WaitForPrimarySwap", + "WaitForReconfiguration", + "WaitForInbuildReplica", + "EnsureAvailability" + ], + "x-ms-enum": { + "name": "SafetyCheckKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the upgrade safety check kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "EnsureSeedNodeQuorum", + "description": "Indicates that if we bring down the node then this will result in global seed node quorum loss. The value is 1." + }, + { + "value": "EnsurePartitionQuorum", + "description": "Indicates that there is some partition for which if we bring down the replica on the node, it will result in quorum loss for that partition. The value is 2." + }, + { + "value": "WaitForPrimaryPlacement", + "description": "Indicates that there is some replica on the node that was moved out of this node due to upgrade. Service Fabric is now waiting for the primary to be moved back to this node. The value is 3." + }, + { + "value": "WaitForPrimarySwap", + "description": "Indicates that Service Fabric is waiting for a primary replica to be moved out of the node before starting upgrade on that node. The value is 4." + }, + { + "value": "WaitForReconfiguration", + "description": "Indicates that there is some replica on the node that is involved in a reconfiguration. Service Fabric is waiting for the reconfiguration to be complete before staring upgrade on that node. The value is 5." + }, + { + "value": "WaitForInbuildReplica", + "description": "Indicates that there is either a replica on the node that is going through copy, or there is a primary replica on the node that is copying data to some other replica. In both cases, bringing down the replica on the node due to upgrade will abort the copy. The value is 6." + }, + { + "value": "EnsureAvailability", + "description": "Indicates that there is either a stateless service partition on the node having exactly one instance, or there is a primary replica on the node for which the partition is quorum loss. In both cases, bringing down the replicas due to upgrade will result in loss of availability. The value is 7." + } + ] + } + }, + "SafetyCheck": { + "discriminator": "Kind", + "description": "Represents a safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state.", + "properties": { + "Kind": { + "$ref": "#/definitions/SafetyCheckKind", + "description": "The kind of safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state. Following are the kinds of safety checks." + } + }, + "required": [ + "Kind" + ] + }, + "PartitionSafetyCheck": { + "description": "Represents a safety check for the service partition being performed by service fabric before continuing with operations.", + "allOf": [ + { + "$ref": "#/definitions/SafetyCheck" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition which is undergoing the safety check." + } + } + }, + "EnsureAvailabilitySafetyCheck": { + "description": "Safety check that waits to ensure the availability of the partition. It waits until there are replicas available such that bringing down this replica will not cause availability loss for the partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsureAvailability" + }, + "EnsurePartitionQuorumSafetyCheck": { + "description": "Safety check that ensures that a quorum of replicas are not lost for a partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsurePartitionQuorum" + }, + "SeedNodeSafetyCheck": { + "description": "Represents a safety check for the seed nodes being performed by service fabric before continuing with node level operations.", + "allOf": [ + { + "$ref": "#/definitions/SafetyCheck" + } + ], + "x-ms-discriminator-value": "EnsureSeedNodeQuorum" + }, + "PartitionsHealthEvaluation": { + "x-ms-discriminator-value": "Partitions", + "description": "Represents health evaluation for the partitions of a service, containing health evaluations for each unhealthy partition that impacts current aggregated health state. Can be returned when evaluating service health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy partitions per service from the ServiceTypeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of partitions of the service from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy PartitionHealthEvaluation that impacted the aggregated health." + } + } + }, + "ReplicaEvent": { + "description": "Represents the base for all Replica Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "ReplicaId": { + "$ref": "#/definitions/ReplicaId_Integer", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + }, + "required": [ + "PartitionId", + "ReplicaId" + ], + "x-ms-discriminator-value": "ReplicaEvent" + }, + "ReplicaEventList": { + "description": "A list of ReplicaEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaEvent" + } + }, + "ReplicaHealth": { + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "discriminator": "ServiceKind", + "description": "Represents a base class for stateful service replica or stateless service instance health.\nContains the replica aggregated health state, the health events and the unhealthy evaluations.", + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition to which this replica belongs." + } + }, + "required": [ + "ServiceKind" + ] + }, + "ReplicaHealthEvaluation": { + "x-ms-discriminator-value": "Replica", + "description": "Represents health evaluation for a replica, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition to which the replica belongs." + }, + "ReplicaOrInstanceId": { + "$ref": "#/definitions/ReplicaOrInstanceId", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the replica. The types of the unhealthy evaluations can be EventHealthEvaluation." + } + } + }, + "ReplicaHealthState": { + "discriminator": "ServiceKind", + "required": [ + "ServiceKind" + ], + "description": "Represents a base class for stateful service replica or stateless service instance health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The ID of the partition to which this replica belongs." + } + } + }, + "ReplicaHealthStateChunk": { + "description": "Represents the health state chunk of a stateful service replica or a stateless service instance.\nThe replica health state contains the replica ID and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ReplicaOrInstanceId": { + "$ref": "#/definitions/ReplicaOrInstanceId", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + } + } + }, + "ReplicaHealthStateChunkList": { + "description": "The list of replica health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicaHealthStateChunk" + }, + "description": "The list of replica health state chunks that respect the input filters in the chunk query." + } + } + }, + "ReplicaHealthStateFilter": { + "description": "Defines matching criteria to determine whether a replica should be included as a child of a partition in the cluster health chunk.\nThe replicas are only returned if the parent entities match a filter specified in the cluster health chunk query description. The parent partition, service and application must be included in the cluster health chunk.\nOne filter can match zero, one or multiple replicas, depending on its properties.", + "properties": { + "ReplicaOrInstanceIdFilter": { + "type": "string", + "description": "Id of the stateful service replica or stateless service instance that matches the filter. The filter is applied only to the specified replica, if it exists.\nIf the replica doesn't exist, no replica is returned in the cluster health chunk based on this filter.\nIf the replica exists, it is included in the cluster health chunk if it respects the other filter properties.\nIf not specified, all replicas that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the replicas. It allows selecting replicas if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only replicas that match the filter are returned. All replicas are used to evaluate the parent partition aggregated health state.\nIf not specified, default value is None, unless the replica ID is specified. If the filter has default value and replica ID is specified, the matching replica is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches replicas with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + } + } + }, + "ReplicaId": { + "type": "string", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaId_Integer": { + "type": "integer", + "format": "int64", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "ReplicaOrInstanceId": { + "type": "string", + "description": "Id of a stateful service replica or a stateless service instance. This ID is used in the queries that apply to both stateful and stateless services. It is used by Service Fabric to uniquely identify a replica of a partition of a stateful service or an instance of a stateless service partition. It is unique within a partition and does not change for the lifetime of the replica or the instance. If a stateful replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the ID. If a stateless instance is failed over on the same or different node it will get a different value for the ID." + }, + "ReplicaInfo": { + "discriminator": "ServiceKind", + "description": "Information about the identity, status, health, node name, uptime, and other details about the replica.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ReplicaStatus": { + "$ref": "#/definitions/ReplicaStatus", + "description": "The status of a replica of a service." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "Address": { + "type": "string", + "description": "The address the replica is listening on." + }, + "LastInBuildDurationInSeconds": { + "type": "string", + "description": "The last in build duration of the replica in seconds." + } + } + }, + "ReplicaRole": { + "type": "string", + "description": "The role of a replica of a stateful service.", + "enum": [ + "Unknown", + "None", + "Primary", + "IdleSecondary", + "ActiveSecondary" + ], + "x-ms-enum": { + "name": "ReplicaRole", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the initial role that a replica is created in. The value is zero." + }, + { + "value": "None", + "description": "Specifies that the replica has no responsibility in regard to the replica set. The value is 1" + }, + { + "value": "Primary", + "description": "Refers to the replica in the set on which all read and write operations are complete in order to enforce strong consistency semantics. Read operations are handled directly by the Primary replica, while write operations must be acknowledged by a quorum of the replicas in the replica set. There can only be one Primary replica in a replica set at a time. The value is 2." + }, + { + "value": "IdleSecondary", + "description": "Refers to a replica in the set that receives a state transfer from the Primary replica to prepare for becoming an active Secondary replica. There can be multiple Idle Secondary replicas in a replica set at a time. Idle Secondary replicas do not count as a part of a write quorum. The value is 3." + }, + { + "value": "ActiveSecondary", + "description": "Refers to a replica in the set that receives state updates from the Primary replica, applies them, and sends acknowledgements back. Secondary replicas must participate in the write quorum for a replica set. There can be multiple active Secondary replicas in a replica set at a time. The number of active Secondary replicas is configurable that the reliability subsystem should maintain. The value is 4." + } + ] + } + }, + "ReplicasHealthEvaluation": { + "x-ms-discriminator-value": "Replicas", + "description": "Represents health evaluation for replicas, containing health evaluations for each unhealthy replica that impacted current aggregated health state. Can be returned when evaluating partition health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "MaxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy replicas per partition from the ApplicationHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of replicas in the partition from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ReplicaHealthEvaluation that impacted the aggregated health." + } + } + }, + "ReplicaStatus": { + "type": "string", + "description": "The status of a replica of a service.", + "enum": [ + "Invalid", + "InBuild", + "Standby", + "Ready", + "Down", + "Dropped" + ], + "x-ms-enum": { + "name": "ReplicaStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the replica status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InBuild", + "description": "The replica is being built. This means that a primary replica is seeding this replica. The value is 1." + }, + { + "value": "Standby", + "description": "The replica is in standby. The value is 2." + }, + { + "value": "Ready", + "description": "The replica is ready. The value is 3." + }, + { + "value": "Down", + "description": "The replica is down. The value is 4." + }, + { + "value": "Dropped", + "description": "Replica is dropped. This means that the replica has been removed from the replica set. If it is persisted, its state has been deleted. The value is 5." + } + ] + } + }, + "RestartNodeDescription": { + "description": "Describes the parameters to restart a Service Fabric node.", + "properties": { + "NodeInstanceId": { + "type": "string", + "description": "The instance ID of the target node. If instance ID is specified the node is restarted only if it matches with the current instance of the node. A default value of \"0\" would match any instance ID. The instance ID can be obtained using get node query.", + "default": "0" + }, + "CreateFabricDump": { + "type": "string", + "description": "Specify True to create a dump of the fabric node process. This is case-sensitive.", + "enum": [ + "False", + "True" + ], + "default": "False", + "x-ms-enum": { + "name": "CreateFabricDump", + "modelAsString": true, + "values": [ + { + "value": "False" + }, + { + "value": "True" + } + ] + } + } + }, + "required": [ + "NodeInstanceId" + ] + }, + "SafetyCheckInfoList": { + "type": "array", + "description": "List of pending safety checks", + "items": { + "$ref": "#/definitions/SafetyCheckWrapper" + } + }, + "SafetyCheckWrapper": { + "description": "A wrapper for the safety check object. Safety checks are performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state.", + "properties": { + "SafetyCheck": { + "$ref": "#/definitions/SafetyCheck", + "description": "Represents a safety check performed by service fabric before continuing with the operations. These checks ensure the availability of the service and the reliability of the state." + } + } + }, + "ServiceEvent": { + "description": "Represents the base for all Service Events.", + "allOf": [ + { + "$ref": "#/definitions/FabricEvent" + } + ], + "properties": { + "ServiceId": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + } + }, + "required": [ + "ServiceId" + ], + "x-ms-discriminator-value": "ServiceEvent" + }, + "ServiceEventList": { + "description": "A list of ServiceEvent objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEvent" + } + }, + "ServiceFromTemplateDescription": { + "description": "Defines description for creating a Service Fabric service from a template defined in the application manifest.", + "required": [ + "ApplicationName", + "ServiceName", + "ServiceTypeName" + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "InitializationData": { + "$ref": "#/definitions/ByteArray", + "description": "The initialization data for the newly created service instance." + }, + "ServicePackageActivationMode": { + "$ref": "#/definitions/ServicePackageActivationMode", + "description": "The activation mode of service package to be used for a service." + }, + "ServiceDnsName": { + "type": "string", + "description": "The DNS name of the service. It requires the DNS system service to be enabled in Service Fabric cluster." + } + } + }, + "ServiceHealthEvaluation": { + "x-ms-discriminator-value": "Service", + "description": "Represents health evaluation for a service, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Name of the service whose health evaluation is described by this object." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the service. The types of the unhealthy evaluations can be PartitionsHealthEvaluation or EventHealthEvaluation." + } + } + }, + "ServiceHealthState": { + "description": "Represents the health state of a service, which contains the service identifier and its aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthState" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Name of the service whose health state is represented by this object." + } + } + }, + "ServiceHealthStateChunk": { + "description": "Represents the health state chunk of a service, which contains the service name, its aggregated health state and any partitions that respect the filters in the cluster health chunk query description.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealthStateChunk" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service whose health state chunk is provided in this object." + }, + "PartitionHealthStateChunks": { + "$ref": "#/definitions/PartitionHealthStateChunkList", + "description": "The list of partition health state chunks belonging to the service that respect the filters in the cluster health chunk query description." + } + } + }, + "ServiceHealthStateChunkList": { + "description": "The list of service health state chunks that respect the input filters in the chunk query. Returned by get cluster health state chunks query.", + "properties": { + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceHealthStateChunk" + }, + "description": "The list of service health state chunks that respect the input filters in the chunk query." + } + } + }, + "ServiceHealthStateFilter": { + "description": "Defines matching criteria to determine whether a service should be included as a child of an application in the cluster health chunk.\nThe services are only returned if the parent application matches a filter specified in the cluster health chunk query description.\nOne filter can match zero, one or multiple services, depending on its properties.", + "properties": { + "ServiceNameFilter": { + "type": "string", + "description": "The name of the service that matches the filter. The filter is applied only to the specified service, if it exists.\nIf the service doesn't exist, no service is returned in the cluster health chunk based on this filter.\nIf the service exists, it is included as the application's child if the health state matches the other filter properties.\nIf not specified, all services that match the parent filters (if any) are taken into consideration and matched against the other filter members, like health state filter." + }, + "HealthStateFilter": { + "type": "integer", + "default": 0, + "description": "The filter for the health state of the services. It allows selecting services if they match the desired health states.\nThe possible values are integer value of one of the following health states. Only services that match the filter are returned. All services are used to evaluate the cluster aggregated health state.\nIf not specified, default value is None, unless the service name is specified. If the filter has default value and service name is specified, the matching service is returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6, it matches services with HealthState value of OK (2) and Warning (4).\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535." + }, + "PartitionFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthStateFilter" + }, + "description": "Defines a list of filters that specify which partitions to be included in the returned cluster health chunk as children of the service. The partitions are returned only if the parent service matches a filter.\nIf the list is empty, no partitions are returned. All the partitions are used to evaluate the parent service aggregated health state, regardless of the input filters.\nThe service filter may specify multiple partition filters.\nFor example, it can specify a filter to return all partitions with health state Error and another filter to always include a partition identified by its partition ID." + } + } + }, + "ServiceHealth": { + "description": "Information about the health of a Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/EntityHealth" + } + ], + "properties": { + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service whose health information is described by this object." + }, + "PartitionHealthStates": { + "type": "array", + "items": { + "$ref": "#/definitions/PartitionHealthState" + }, + "description": "The list of partition health states associated with the service." + } + } + }, + "ServiceId": { + "type": "string", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceManifestName": { + "type": "string", + "description": "The name of the service manifest." + }, + "ServiceTypeName": { + "type": "string", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service.", + "properties": { + "Id": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ManifestVersion": { + "description": "The version of the service manifest.", + "type": "string" + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "ServiceStatus": { + "$ref": "#/definitions/ServiceStatus", + "description": "The status of the application." + }, + "IsServiceGroup": { + "description": "Whether the service is in a service group.", + "type": "boolean" + } + }, + "required": [ + "ServiceKind" + ] + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceNameInfo": { + "description": "Information about the service name.", + "properties": { + "Id": { + "$ref": "#/definitions/ServiceId", + "description": "The identity of the service. This ID is an encoded representation of the service name. This is used in the REST APIs to identify the service resource.\nStarting in version 6.0, hierarchical names are delimited with the \"\\~\" character. For example, if the service name is \"fabric:/myapp/app1/svc1\",\nthe service identity would be \"myapp~app1\\~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + } + }, + "ServicePackageActivationId": { + "type": "string", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "ServicePartitionInfo": { + "discriminator": "ServiceKind", + "description": "Information about a partition of a Service Fabric service.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "HealthState": { + "$ref": "#/definitions/HealthState", + "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc." + }, + "PartitionStatus": { + "$ref": "#/definitions/ServicePartitionStatus", + "description": "The status of the service fabric service partition." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "Information about the partition identity, partitioning scheme and keys supported by it." + } + } + }, + "ServicePartitionKind": { + "type": "string", + "description": "The kind of partitioning scheme used to partition the service.", + "enum": [ + "Invalid", + "Singleton", + "Int64Range", + "Named" + ], + "x-ms-enum": { + "name": "ServicePartitionKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that there is only one partition, and SingletonPartitionSchemeDescription was specified while creating the service. The value is 1." + }, + { + "value": "Int64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and UniformInt64RangePartitionSchemeDescription was specified while creating the service. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and NamedPartitionInformation was specified while creating the service. The value is 3." + } + ] + } + }, + "ServicePartitionStatus": { + "type": "string", + "description": "The status of the service fabric service partition.", + "enum": [ + "Invalid", + "Ready", + "NotReady", + "InQuorumLoss", + "Reconfiguring", + "Deleting" + ], + "x-ms-enum": { + "name": "ServicePartitionStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates that the partition is ready. This means that for a stateless service partition there is at least one instance that is up and for a stateful service partition the number of ready replicas is greater than or equal to the MinReplicaSetSize. The value is 1." + }, + { + "value": "NotReady", + "description": "Indicates that the partition is not ready. This status is returned when none of the other states apply. The value is 2." + }, + { + "value": "InQuorumLoss", + "description": "Indicates that the partition is in quorum loss. This means that number of replicas that are up and participating in a replica set is less than MinReplicaSetSize for this partition. The value is 3." + }, + { + "value": "Reconfiguring", + "description": "Indicates that the partition is undergoing reconfiguration of its replica sets. This can happen due to failover, upgrade, load balancing or addition or removal of replicas from the replica set. The value is 4." + }, + { + "value": "Deleting", + "description": "Indicates that the partition is being deleted. The value is 5." + } + ] + } + }, + "ServicePlacementInvalidDomainPolicyDescription": { + "x-ms-discriminator-value": "InvalidDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where a particular fault or upgrade domain should not be used for placement of the instances or replicas of that service.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should not be used for placement." + } + } + }, + "ServicePlacementNonPartiallyPlaceServicePolicyDescription": { + "x-ms-discriminator-value": "NonPartiallyPlaceService", + "description": "Describes the policy to be used for placement of a Service Fabric service where all replicas must be able to be placed in order for any replicas to be created.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ] + }, + "ServicePlacementPolicyDescription": { + "discriminator": "Type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "Type" + ], + "properties": { + "Type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "List of service placement policy descriptions." + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequireDomain", + "PreferPrimaryDomain", + "RequireDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequireDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequireDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + } + ] + } + }, + "ServicePlacementPreferPrimaryDomainPolicyDescription": { + "x-ms-discriminator-value": "PreferPrimaryDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where the service's Primary replicas should optimally be placed in a particular domain.\n\nThis placement policy is usually used with fault domains in scenarios where the Service Fabric cluster is geographically distributed in order to indicate that a service's primary replica should be located in a particular fault domain, which in geo-distributed scenarios usually aligns with regional or datacenter boundaries. Note that since this is an optimization it is possible that the Primary replica may not end up located in this domain due to failures, capacity limits, or other constraints.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequiredDomainPolicyDescription": { + "x-ms-discriminator-value": "RequireDomain", + "description": "Describes the policy to be used for placement of a Service Fabric service where the instances or replicas of that service must be placed in a particular domain", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicePlacementRequireDomainDistributionPolicyDescription": { + "x-ms-discriminator-value": "RequireDomainDistribution", + "description": "Describes the policy to be used for placement of a Service Fabric service where two replicas from the same partition should never be placed in the same fault or upgrade domain.\n\nWhile this is not common it can expose the service to an increased risk of concurrent failures due to unplanned outages or other cases of subsequent/concurrent failures. As an example, consider a case where replicas are deployed across different data center, with one replica per location. In the event that one of the datacenters goes offline, normally the replica that was placed in that datacenter will be packed into one of the remaining datacenters. If this is not desirable then this policy should be set.", + "allOf": [ + { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + } + ], + "properties": { + "DomainName": { + "type": "string", + "description": "The name of the domain that should used for placement as per this policy." + } + } + }, + "ServicesHealthEvaluation": { + "x-ms-discriminator-value": "Services", + "description": "Represents health evaluation for services of a certain service type belonging to an application, containing health evaluations for each unhealthy service that impacted current aggregated health state. Can be returned when evaluating application health and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Name of the service type of the services." + }, + "MaxPercentUnhealthyServices": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy services from the ServiceTypeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of services of the current service type in the application from the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy ServiceHealthEvaluation that impacted the aggregated health." + } + } + }, + "ServiceStatus": { + "type": "string", + "description": "The status of the application.", + "enum": [ + "Unknown", + "Active", + "Upgrading", + "Deleting", + "Creating", + "Failed" + ], + "x-ms-enum": { + "name": "ServiceStatus", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the service status is unknown. The value is zero." + }, + { + "value": "Active", + "description": "Indicates the service status is active. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the service is upgrading. The value is 2." + }, + { + "value": "Deleting", + "description": "Indicates the service is being deleted. The value is 3." + }, + { + "value": "Creating", + "description": "Indicates the service is being created. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates creation or deletion was terminated due to persistent failures. Another create/delete request can be accepted. The value is 5." + } + ] + } + }, + "ServiceTypeDescription": { + "discriminator": "Kind", + "description": "Describes a service type defined in the service manifest of a provisioned application type. The properties the ones defined in the service manifest.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates whether the service type is a stateful service type or a stateless service type. This property is true if the service type is a stateful service type, false otherwise." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraint to be used when instantiating this service in a Service Fabric cluster." + }, + "LoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPolicyDescriptionList", + "description": "List of service placement policy descriptions." + }, + "Extensions": { + "$ref": "#/definitions/ServiceTypeExtensionDescriptionList", + "description": "List of service type extensions." + } + } + }, + "ServiceTypeExtensionDescription": { + "description": "Describes extension of a service type defined in the service manifest.", + "properties": { + "Key": { + "type": "string", + "description": "The name of the extension." + }, + "Value": { + "type": "string", + "description": "The extension value." + } + } + }, + "ServiceTypeExtensionDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeExtensionDescription" + }, + "description": "List of service type extensions." + }, + "ServiceTypeHealthPolicy": { + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.", + "properties": { + "MaxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy partitions per service. Allowed values are Byte values from zero to 100\n\nThe percentage represents the maximum tolerated percentage of partitions that can be unhealthy before the service is considered in error.\nIf the percentage is respected but there is at least one unhealthy partition, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy partitions over the total number of partitions in the service.\nThe computation rounds up to tolerate one failure on small numbers of partitions. Default percentage is zero.", + "default": 0 + }, + "MaxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy replicas per partition. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of replicas that can be unhealthy before the partition is considered in error.\nIf the percentage is respected but there is at least one unhealthy replica, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy replicas over the total number of replicas in the partition.\nThe computation rounds up to tolerate one failure on small numbers of replicas. Default percentage is zero.", + "default": 0 + }, + "MaxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", + "default": 0 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMapItem" + }, + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type. For example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently. With policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation." + }, + "ServiceTypeHealthPolicyMapItem": { + "description": "Defines an item in ServiceTypeHealthPolicyMap.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key of the service type health policy map item. This is the name of the service type." + }, + "Value": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The value of the service type health policy map item. This is the ServiceTypeHealthPolicy for this service type." + } + } + }, + "ServiceTypeInfo": { + "description": "Information about a service type that is defined in a service manifest of a provisioned application type.", + "properties": { + "ServiceTypeDescription": { + "$ref": "#/definitions/ServiceTypeDescription", + "description": "Describes a service type defined in the service manifest of a provisioned application type. The properties the ones defined in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "ServiceManifestVersion": { + "type": "string", + "description": "The version of the service manifest in which this service type is defined." + }, + "IsServiceGroup": { + "type": "boolean", + "description": "Indicates whether the service is a service group. If it is, the property value is true otherwise false." + } + } + }, + "ServiceTypeInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTypeInfo" + }, + "description": "List of service type information." + }, + "ServiceTypeManifest": { + "description": "Contains the manifest describing a service type registered as part of an application in a Service Fabric cluster.", + "properties": { + "Manifest": { + "type": "string", + "description": "The XML manifest as a string." + } + } + }, + "SingletonPartitionInformation": { + "description": "Information about a partition that is singleton. The services with singleton partitioning scheme are effectively non-partitioned. They only have one partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionInformation" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceInfo": { + "description": "Information about a stateful Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceInfo" + } + ], + "properties": { + "HasPersistedState": { + "description": "Whether the service has persisted state.", + "type": "boolean" + } + }, + "x-ms-discriminator-value": "Stateful" + }, + "StatefulServicePartitionInfo": { + "description": "Information about a partition of a stateful Service Fabric service..", + "allOf": [ + { + "$ref": "#/definitions/ServicePartitionInfo" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "format": "int64", + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int64", + "description": "The minimum replica set size as a number." + }, + "LastQuorumLossDuration": { + "type": "string", + "format": "duration", + "description": "The duration for which this partition was in quorum loss. If the partition is currently in quorum loss, it returns the duration since it has been in that state. This field is using ISO8601 format for specifying the duration." + }, + "PrimaryEpoch": { + "$ref": "#/definitions/Epoch", + "description": "An Epoch is a configuration number for the partition as a whole. When the configuration of the replica set changes, for example when the Primary replica changes, the operations that are replicated from the new Primary replica are said to be a new Epoch from the ones which were sent by the old Primary replica." + } + } + }, + "StatefulServiceReplicaHealth": { + "description": "Represents the health of the stateful service replica.\nContains the replica aggregated health state, the health events and the unhealthy evaluations.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealth" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatefulServiceReplicaHealthState": { + "x-ms-discriminator-value": "Stateful", + "description": "Represents the health state of the stateful service replica, which contains the replica ID and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealthState" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatefulServiceTypeDescription": { + "description": "Describes a stateful service type defined in the service manifest of a provisioned application type.", + "allOf": [ + { + "$ref": "#/definitions/ServiceTypeDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "HasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + } + } + }, + "StatelessServiceInfo": { + "description": "Information about a stateless Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceInfo" + } + ], + "x-ms-discriminator-value": "Stateless" + }, + "StatelessServiceInstanceHealth": { + "description": "Represents the health of the stateless service instance.\nContains the instance aggregated health state, the health events and the unhealthy evaluations.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealth" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "StatelessServiceInstanceHealthState": { + "x-ms-discriminator-value": "Stateless", + "description": "Represents the health state of the stateless service instance, which contains the instance ID and the aggregated health state.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaHealthState" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of the stateless service instance on the wire this field is called ReplicaId." + } + } + }, + "StatelessServicePartitionInfo": { + "description": "Information about a partition of a stateless Service Fabric service.", + "allOf": [ + { + "$ref": "#/definitions/ServicePartitionInfo" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "InstanceCount": { + "type": "integer", + "format": "int64", + "description": "Number of instances of this partition." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + } + } + }, + "StatelessServiceTypeDescription": { + "description": "Describes a stateless service type defined in the service manifest of a provisioned application type.", + "allOf": [ + { + "$ref": "#/definitions/ServiceTypeDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "UseImplicitHost": { + "type": "boolean", + "description": "A flag indicating if this type is not implemented and hosted by a user service process, but is implicitly hosted by a system created process. This value is true for services using the guest executable services, false otherwise." + } + } + }, + "SystemApplicationHealthEvaluation": { + "x-ms-discriminator-value": "SystemApplication", + "description": "Represents health evaluation for the fabric:/System application, containing information about the data and the algorithm used by health store to evaluate health. The evaluation is returned only when the aggregated health state of the cluster is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the current aggregated health state of the system application. The types of the unhealthy evaluations can be DeployedApplicationsHealthEvaluation, ServicesHealthEvaluation or EventHealthEvaluation." + } + } + }, + "TargetApplicationName": { + "type": "string", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "TargetApplicationTypeVersion": { + "type": "string", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "TargetDeploymentName": { + "type": "string", + "description": "The name of the target deployment." + }, + "UnhealthyEvaluations": { + "description": "List of health evaluations that resulted in the current aggregated health state.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthEvaluationWrapper" + } + }, + "UpgradeDomainDeltaNodesCheckHealthEvaluation": { + "x-ms-discriminator-value": "UpgradeDomainDeltaNodesCheck", + "description": "Represents health evaluation for delta unhealthy cluster nodes in an upgrade domain, containing health evaluations for each unhealthy node that impacted current aggregated health state.\nCan be returned during cluster upgrade when cluster aggregated health state is Warning or Error.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "Name of the upgrade domain where nodes health is currently evaluated." + }, + "BaselineErrorCount": { + "type": "integer", + "format": "int64", + "description": "Number of upgrade domain nodes with aggregated heath state Error in the health store at the beginning of the cluster upgrade." + }, + "BaselineTotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of upgrade domain nodes in the health store at the beginning of the cluster upgrade." + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of upgrade domain delta unhealthy nodes from the ClusterUpgradeHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of upgrade domain nodes in the health store." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "UpgradeDomainInfo": { + "description": "Information about an upgrade domain.", + "properties": { + "Name": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "State": { + "$ref": "#/definitions/UpgradeDomainState", + "description": "The state of the upgrade domain." + } + } + }, + "UpgradeDomainInfoList": { + "type": "array", + "description": "List of upgrade domains and their statuses.", + "items": { + "$ref": "#/definitions/UpgradeDomainInfo" + } + }, + "UpgradeDomainName": { + "type": "string", + "description": "The name of the upgrade domain" + }, + "UpgradeDomainNodesHealthEvaluation": { + "x-ms-discriminator-value": "UpgradeDomainNodes", + "description": "Represents health evaluation for cluster nodes in an upgrade domain, containing health evaluations for each unhealthy node that impacted current aggregated health state. Can be returned when evaluating cluster health during cluster upgrade and the aggregated health state is either Error or Warning.", + "allOf": [ + { + "$ref": "#/definitions/HealthEvaluation" + } + ], + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "Name of the upgrade domain where nodes health is currently evaluated." + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "Maximum allowed percentage of unhealthy nodes from the ClusterHealthPolicy." + }, + "TotalCount": { + "type": "integer", + "format": "int64", + "description": "Total number of nodes in the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of unhealthy evaluations that led to the aggregated health state. Includes all the unhealthy NodeHealthEvaluation that impacted the aggregated health." + } + } + }, + "UpgradeDomainState": { + "type": "string", + "description": "The state of the upgrade domain.", + "enum": [ + "Invalid", + "Pending", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "UpgradeDomainState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade domain state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Pending", + "description": "The upgrade domain has not started upgrading yet. The value is 1" + }, + { + "value": "InProgress", + "description": "The upgrade domain is being upgraded but not complete yet. The value is 2" + }, + { + "value": "Completed", + "description": "The upgrade domain has completed upgrade. The value is 3" + } + ] + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeDuration": { + "type": "string", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "UpgradeKind": { + "type": "string", + "description": "The kind of upgrade out of the following possible values.", + "default": "Rolling", + "enum": [ + "Invalid", + "Rolling" + ], + "x-ms-enum": { + "name": "UpgradeKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rolling", + "description": "The upgrade progresses one upgrade domain at a time. The value is 1" + } + ] + } + }, + "UpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "UnmonitoredAuto", + "x-ms-enum": { + "name": "UpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "UpgradeSortOrder": { + "type": "string", + "description": "Defines the order in which an upgrade proceeds through the cluster.", + "enum": [ + "Invalid", + "Default", + "Numeric", + "Lexicographical", + "ReverseNumeric", + "ReverseLexicographical" + ], + "default": "Default", + "x-ms-enum": { + "name": "UpgradeSortOrder", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that this sort order is not valid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "Default", + "description": "Indicates that the default sort order (as specified in cluster manifest) will be used. The value is 1." + }, + { + "value": "Numeric", + "description": "Indicates that forward numeric sort order (UD names sorted as numbers) will be used. The value is 2." + }, + { + "value": "Lexicographical", + "description": "Indicates that forward lexicographical sort order (UD names sorted as strings) will be used. The value is 3." + }, + { + "value": "ReverseNumeric", + "description": "Indicates that reverse numeric sort order (UD names sorted as numbers) will be used. The value is 4." + }, + { + "value": "ReverseLexicographical", + "description": "Indicates that reverse lexicographical sort order (UD names sorted as strings) will be used. The value is 5." + } + ] + } + }, + "UpgradeType": { + "type": "string", + "description": "The type of upgrade out of the following possible values.", + "default": "Rolling", + "enum": [ + "Invalid", + "Rolling", + "Rolling_ForceRestart" + ], + "x-ms-enum": { + "name": "UpgradeType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Rolling", + "description": "The upgrade progresses one upgrade domain at a time. The value is 1." + }, + { + "value": "Rolling_ForceRestart", + "description": "The upgrade gets restarted by force. The value is 2." + } + ] + } + }, + "UpgradeReplicaSetCheckTimeout": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer).", + "default": 42949672925 + }, + "UpgradeState": { + "type": "string", + "description": "The state of the upgrade domain.", + "enum": [ + "Invalid", + "RollingBackInProgress", + "RollingBackCompleted", + "RollingForwardPending", + "RollingForwardInProgress", + "RollingForwardCompleted", + "Failed" + ], + "x-ms-enum": { + "name": "UpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "RollingBackInProgress", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 1" + }, + { + "value": "RollingBackCompleted", + "description": "The upgrade has finished rolling back. The value is 2" + }, + { + "value": "RollingForwardPending", + "description": "The current upgrade domain has finished upgrading. The overall upgrade is waiting for an explicit move next request in UnmonitoredManual mode or performing health checks in Monitored mode. The value is 3" + }, + { + "value": "RollingForwardInProgress", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 4" + }, + { + "value": "RollingForwardCompleted", + "description": "The upgrade has finished rolling forward. The value is 5" + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 6" + } + ] + } + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "WaitForInbuildReplicaSafetyCheck": { + "description": "Safety check that waits for the replica build operation to finish. This indicates that there is a replica that is going through the copy or is providing data for building another replica. Bring the node down will abort this copy operation which are typically expensive involving data movements.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForInbuildReplica" + }, + "WaitForPrimaryPlacementSafetyCheck": { + "description": "Safety check that waits for the primary replica that was moved out of the node due to upgrade to be placed back again on that node.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForPrimaryPlacement" + }, + "WaitForPrimarySwapSafetyCheck": { + "description": "Safety check that waits for the primary replica to be moved out of the node before starting an upgrade to ensure the availability of the primary replica for the partition.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForPrimarySwap" + }, + "WaitForReconfigurationSafetyCheck": { + "description": "Safety check that waits for the current reconfiguration of the partition to be completed before starting an upgrade.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSafetyCheck" + } + ], + "x-ms-discriminator-value": "WaitForReconfiguration" + }, + "LoadMetricReport": { + "description": "Represents the load metric report which contains the time metric was reported, its name and value.", + "properties": { + "LastReportedUtc": { + "type": "string", + "format": "date-time", + "description": "Gets the UTC time when the load was reported." + }, + "Name": { + "type": "string", + "description": "The name of the load metric." + }, + "Value": { + "type": "string", + "format": "int32", + "description": "The value of the load metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentValue." + }, + "CurrentValue": { + "type": "string", + "format": "double", + "description": "The value of the load metric." + } + } + }, + "PartitionLoadInformation": { + "description": "Represents load information for a partition, which contains the primary and secondary reported load metrics.\nIn case there is no load reported, PartitionLoadInformation will contain the default load for the service of the partition.\nFor default loads, LoadMetricReport's LastReportedUtc is set to 0.", + "properties": { + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "Id of the partition." + }, + "PrimaryLoadMetricReports": { + "type": "array", + "description": "Array of load reports from the primary replica for this partition.", + "items": { + "$ref": "#/definitions/LoadMetricReport" + } + }, + "SecondaryLoadMetricReports": { + "type": "array", + "description": "Array of aggregated load reports from all secondary replicas for this partition.\nArray only contains the latest reported load for each metric.", + "items": { + "$ref": "#/definitions/LoadMetricReport" + } + } + } + }, + "StatefulServiceReplicaInfo": { + "x-ms-discriminator-value": "Stateful", + "description": "Represents a stateful service replica. This includes information about the identity, role, status, health, node name, uptime, and other details about the replica.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaInfo" + } + ], + "properties": { + "ReplicaRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + }, + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + } + } + }, + "StatelessServiceInstanceInfo": { + "x-ms-discriminator-value": "Stateless", + "description": "Represents a stateless service instance. This includes information about the identity, status, health, node name, uptime, and other details about the instance.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + } + } + }, + "ClusterFabricCodeVersionString": { + "type": "string", + "description": "The ServiceFabric code version of the cluster." + }, + "ClusterFabricConfigVersionString": { + "type": "string", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "ClusterUpgradeDescriptionObject": { + "description": "Represents a ServiceFabric cluster upgrade", + "properties": { + "ConfigVersion": { + "$ref": "#/definitions/ClusterFabricConfigVersionString", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "CodeVersion": { + "$ref": "#/definitions/ClusterFabricCodeVersionString", + "description": "The ServiceFabric code version of the cluster." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "SortOrder": { + "$ref": "#/definitions/UpgradeSortOrder", + "description": "Defines the order in which an upgrade proceeds through the cluster." + }, + "EnableDeltaHealthEvaluation": { + "$ref": "#/definitions/DeltaHealthEvaluationBool", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." + }, + "ClusterUpgradeHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeHealthPolicyObject", + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade." + }, + "ApplicationHealthPolicyMap": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nIf an application is not specified in the map, the application health evaluation uses the ApplicationHealthPolicy found in its application manifest or the default application health policy (if no health policy is defined in the manifest).\nThe map is empty by default." + } + } + }, + "ClusterUpgradeHealthPolicyObject": { + "description": "Defines a health policy used to evaluate the health of the cluster during a cluster upgrade.", + "properties": { + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. The default value is 10%.", + "maximum": 100, + "minimum": 0 + }, + "MaxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits. The default value is 15%.", + "maximum": 100, + "minimum": 0 + } + } + }, + "ClusterUpgradeProgressObject": { + "description": "Information about a cluster upgrade.", + "properties": { + "CodeVersion": { + "$ref": "#/definitions/ClusterFabricCodeVersionString", + "description": "The ServiceFabric code version of the cluster." + }, + "ConfigVersion": { + "$ref": "#/definitions/ClusterFabricConfigVersionString", + "description": "The cluster configuration version (specified in the cluster manifest)." + }, + "UpgradeDomains": { + "$ref": "#/definitions/UpgradeDomainInfoList", + "description": "List of upgrade domains and their statuses." + }, + "UpgradeState": { + "$ref": "#/definitions/UpgradeState", + "description": "The state of the upgrade domain." + }, + "NextUpgradeDomain": { + "$ref": "#/definitions/NextUpgradeDomain", + "description": "The name of the next upgrade domain to be processed." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDescription": { + "$ref": "#/definitions/ClusterUpgradeDescriptionObject", + "description": "Represents a ServiceFabric cluster upgrade" + }, + "UpgradeDurationInMilliseconds": { + "$ref": "#/definitions/UpgradeDurationString", + "description": "The estimated elapsed time spent processing the current overall upgrade." + }, + "UpgradeDomainDurationInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainDurationString", + "description": "The estimated elapsed time spent processing the current upgrade domain." + }, + "UnhealthyEvaluations": { + "$ref": "#/definitions/UnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "$ref": "#/definitions/UpgradeStartTimeUTCString", + "description": "The start time of the upgrade in UTC." + }, + "FailureTimestampUtc": { + "$ref": "#/definitions/UpgradeFailureTimeUTCString", + "description": "The failure time of the upgrade in UTC." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailedUpgradeDomainProgressObject", + "description": "The detailed upgrade progress for nodes in the current upgrade domain at the point of failure." + } + } + }, + "ClusterConfigurationUpgradeDescription": { + "description": "Describes the parameters for a standalone cluster configuration upgrade.", + "properties": { + "ClusterConfig": { + "type": "string", + "description": "The cluster configuration as a JSON string. For example, [this file](https://github.com/Azure-Samples/service-fabric-dotnet-standalone-cluster-configuration/blob/master/Samples/ClusterConfig.Unsecure.DevCluster.json) contains JSON describing the [nodes and other properties of the cluster](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-manifest)." + }, + "HealthCheckRetryTimeout": { + "type": "string", + "format": "duration", + "description": "The length of time between attempts to perform health checks if the application or cluster is not healthy.", + "default": "PT0H0M0S" + }, + "HealthCheckWaitDurationInSeconds": { + "type": "string", + "format": "duration", + "description": "The length of time to wait after completing an upgrade domain before starting the health checks process.", + "default": "PT0H0M0S" + }, + "HealthCheckStableDurationInSeconds": { + "type": "string", + "format": "duration", + "description": "The length of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain.", + "default": "PT0H0M0S" + }, + "UpgradeDomainTimeoutInSeconds": { + "type": "string", + "format": "duration", + "description": "The timeout for the upgrade domain.", + "default": "PT0H0M0S" + }, + "UpgradeTimeoutInSeconds": { + "type": "string", + "format": "duration", + "description": "The upgrade timeout.", + "default": "PT0H0M0S" + }, + "MaxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of delta health degradation during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "MaxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain delta health degradation during the upgrade. Allowed values are integer values from zero to 100.", + "default": 0 + }, + "ApplicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicies", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + }, + "required": [ + "ClusterConfig" + ] + }, + "DeltaHealthEvaluationBool": { + "type": "boolean", + "description": "When true, enables delta health evaluation rather than absolute health evaluation after completion of each upgrade domain." + }, + "FailedUpgradeDomainProgressObject": { + "description": "The detailed upgrade progress for nodes in the current upgrade domain at the point of failure.", + "properties": { + "DomainName": { + "$ref": "#/definitions/UpgradeDomainName", + "description": "The name of the upgrade domain" + }, + "NodeUpgradeProgressList": { + "$ref": "#/definitions/NodeUpgradeProgressInfoList", + "description": "List of upgrading nodes and their statuses" + } + } + }, + "UpgradeDomainDurationString": { + "type": "string", + "description": "The estimated elapsed time spent processing the current upgrade domain." + }, + "UpgradeDurationString": { + "type": "string", + "description": "The estimated elapsed time spent processing the current overall upgrade." + }, + "UpgradeFailureTimeUTCString": { + "type": "string", + "description": "The failure time of the upgrade in UTC." + }, + "UpgradeStartTimeUTCString": { + "type": "string", + "description": "The start time of the upgrade in UTC." + }, + "UpgradeOrchestrationServiceState": { + "description": "Service state of Service Fabric Upgrade Orchestration Service.", + "properties": { + "ServiceState": { + "type": "string", + "description": "The state of Service Fabric Upgrade Orchestration Service." + } + } + }, + "UpgradeOrchestrationServiceStateSummary": { + "description": "Service state summary of Service Fabric Upgrade Orchestration Service.", + "properties": { + "CurrentCodeVersion": { + "type": "string", + "description": "The current code version of the cluster." + }, + "CurrentManifestVersion": { + "type": "string", + "description": "The current manifest version of the cluster." + }, + "TargetCodeVersion": { + "type": "string", + "description": "The target code version of the cluster." + }, + "TargetManifestVersion": { + "type": "string", + "description": "The target manifest version of the cluster." + }, + "PendingUpgradeType": { + "type": "string", + "description": "The type of the pending upgrade of the cluster." + } + } + }, + "ApplicationTypeImageStorePath": { + "description": "Path description for the application package in the image store specified during the prior copy operation.", + "required": [ + "ApplicationTypeBuildPath" + ], + "properties": { + "ApplicationTypeBuildPath": { + "type": "string", + "description": "The relative image store path to the application package." + } + } + }, + "UnprovisionApplicationTypeDescriptionInfo": { + "description": "Describes the operation to unregister or unprovision an application type and its version that was registered with the Service Fabric.", + "required": [ + "ApplicationTypeVersion" + ], + "properties": { + "ApplicationTypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "Async": { + "type": "boolean", + "description": "The flag indicating whether or not unprovision should occur asynchronously. When set to true, the unprovision operation returns when the request is accepted by the system, and the unprovision operation continues without any timeout limit. The default value is false. However, we recommend setting it to true for large application packages that were provisioned." + } + } + }, + "CodePackageName": { + "type": "string", + "description": "The name of the code package defined in the service manifest." + }, + "CodePackageEntryPointStatistics": { + "description": "Statistics about setup or main entry point of a code package deployed on a Service Fabric node.", + "properties": { + "LastExitCode": { + "type": "string", + "description": "The last exit code of the entry point." + }, + "LastActivationTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when Service Fabric attempted to run the entry point." + }, + "LastExitTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point finished running." + }, + "LastSuccessfulActivationTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point ran successfully." + }, + "LastSuccessfulExitTime": { + "type": "string", + "format": "date-time", + "description": "The last time (in UTC) when the entry point finished running gracefully." + }, + "ActivationCount": { + "type": "string", + "description": "Number of times the entry point has run." + }, + "ActivationFailureCount": { + "type": "string", + "description": "Number of times the entry point failed to run." + }, + "ContinuousActivationFailureCount": { + "type": "string", + "description": "Number of times the entry point continuously failed to run." + }, + "ExitCount": { + "type": "string", + "description": "Number of times the entry point finished running." + }, + "ExitFailureCount": { + "type": "string", + "description": "Number of times the entry point failed to exit gracefully." + }, + "ContinuousExitFailureCount": { + "type": "string", + "description": "Number of times the entry point continuously failed to exit gracefully." + } + } + }, + "DeployedCodePackageInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedCodePackageInfo" + }, + "description": "List of deployed code package information." + }, + "DeployedCodePackageInfo": { + "description": "Information about code package deployed on a Service Fabric node.", + "properties": { + "Name": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package." + }, + "Version": { + "type": "string", + "description": "The version of the code package specified in service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest that specified this code package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "HostType": { + "$ref": "#/definitions/HostType", + "description": "Specifies the type of host for main entry point of a code package as specified in service manifest." + }, + "HostIsolationMode": { + "$ref": "#/definitions/HostIsolationMode", + "description": "Specifies the isolation mode of main entry point of a code package when it's host type is ContainerHost. This is specified as part of container host policies in application manifest while importing service manifest." + }, + "Status": { + "$ref": "#/definitions/DeploymentStatus", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node." + }, + "RunFrequencyInterval": { + "type": "string", + "description": "The interval at which code package is run. This is used for periodic code package." + }, + "SetupEntryPoint": { + "$ref": "#/definitions/CodePackageEntryPoint", + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node." + }, + "MainEntryPoint": { + "$ref": "#/definitions/CodePackageEntryPoint", + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node." + } + } + }, + "DeploymentStatus": { + "type": "string", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node.", + "enum": [ + "Invalid", + "Downloading", + "Activating", + "Active", + "Upgrading", + "Deactivating", + "RanToCompletion", + "Failed" + ], + "x-ms-enum": { + "name": "DeploymentStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates status of the application or service package is not known or invalid. The value is 0." + }, + { + "value": "Downloading", + "description": "Indicates the application or service package is being downloaded to the node from the ImageStore. The value is 1." + }, + { + "value": "Activating", + "description": "Indicates the application or service package is being activated. The value is 2." + }, + { + "value": "Active", + "description": "Indicates the application or service package is active the node. The value is 3." + }, + { + "value": "Upgrading", + "description": "Indicates the application or service package is being upgraded. The value is 4." + }, + { + "value": "Deactivating", + "description": "Indicates the application or service package is being deactivated. The value is 5." + }, + { + "value": "RanToCompletion", + "description": "Indicates the application or service package has ran to completion successfully. The value is 6." + }, + { + "value": "Failed", + "description": "Indicates the application or service package has failed to run to completion. The value is 7." + } + ] + } + }, + "EntryPointStatus": { + "type": "string", + "description": "Specifies the status of the code package entry point deployed on a Service Fabric node.", + "enum": [ + "Invalid", + "Pending", + "Starting", + "Started", + "Stopping", + "Stopped" + ], + "x-ms-enum": { + "name": "EntryPointStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates status of entry point is not known or invalid. The value is 0." + }, + { + "value": "Pending", + "description": "Indicates the entry point is scheduled to be started. The value is 1." + }, + { + "value": "Starting", + "description": "Indicates the entry point is being started. The value is 2." + }, + { + "value": "Started", + "description": "Indicates the entry point was started successfully and is running. The value is 3." + }, + { + "value": "Stopping", + "description": "Indicates the entry point is being stopped. The value is 4." + }, + { + "value": "Stopped", + "description": "Indicates the entry point is not running. The value is 5." + } + ] + } + }, + "CodePackageEntryPoint": { + "description": "Information about setup or main entry point of a code package deployed on a Service Fabric node.", + "properties": { + "EntryPointLocation": { + "type": "string", + "description": "The location of entry point executable on the node." + }, + "ProcessId": { + "type": "string", + "description": "The process ID of the entry point." + }, + "RunAsUserName": { + "type": "string", + "description": "The user name under which entry point executable is run on the node." + }, + "CodePackageEntryPointStatistics": { + "$ref": "#/definitions/CodePackageEntryPointStatistics", + "description": "Statistics about setup or main entry point of a code package deployed on a Service Fabric node." + }, + "Status": { + "$ref": "#/definitions/EntryPointStatus", + "description": "Specifies the status of the code package entry point deployed on a Service Fabric node." + }, + "NextActivationTime": { + "type": "string", + "format": "date-time", + "description": "The time (in UTC) when the entry point executable will be run next." + }, + "InstanceId": { + "$ref": "#/definitions/CodePackageInstanceId", + "description": "The instance ID for current running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started. Each time entry point executable is run, its instance id will change." + } + } + }, + "Chaos": { + "description": "Contains a description of Chaos.", + "properties": { + "ChaosParameters": { + "$ref": "#/definitions/ChaosParameters", + "description": "If Chaos is running, these are the parameters Chaos is running with." + }, + "Status": { + "$ref": "#/definitions/ChaosStatus", + "description": "Current status of the Chaos run." + }, + "ScheduleStatus": { + "$ref": "#/definitions/ChaosScheduleStatus", + "description": "Current status of the schedule." + } + } + }, + "ChaosStatus": { + "type": "string", + "description": "Current status of the Chaos run.", + "enum": [ + "Invalid", + "Running", + "Stopped" + ], + "x-ms-enum": { + "name": "ChaosStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos status. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Running", + "description": "Indicates that Chaos is not stopped. The value is one." + }, + { + "value": "Stopped", + "description": "Indicates that Chaos is not scheduling further faults. The value is two." + } + ] + } + }, + "ChaosScheduleStatus": { + "type": "string", + "description": "Current status of the schedule.", + "enum": [ + "Invalid", + "Stopped", + "Active", + "Expired", + "Pending" + ], + "x-ms-enum": { + "name": "ChaosScheduleStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos Schedule status. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stopped", + "description": "Indicates that the schedule is stopped and not being used to schedule runs of chaos. The value is one." + }, + { + "value": "Active", + "description": "Indicates that the schedule is active and is being used to schedule runs of Chaos. The value is two." + }, + { + "value": "Expired", + "description": "Indicates that the schedule is expired and will no longer be used to schedule runs of Chaos. The value is three." + }, + { + "value": "Pending", + "description": "Indicates that the schedule is pending and is not yet being used to schedule runs of Chaos but will be used when the start time is passed. The value is four." + } + ] + } + }, + "ChaosContextMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Describes a map that contains a collection of ChaosContextMapItem's." + }, + "ChaosContext": { + "description": "Describes a map, which is a collection of (string, string) type key-value pairs. The map can be used to record information about\nthe Chaos run. There cannot be more than 100 such pairs and each string (key or value) can be at most 4095 characters long.\nThis map is set by the starter of the Chaos run to optionally store the context about the specific run.", + "properties": { + "Map": { + "$ref": "#/definitions/ChaosContextMap", + "description": "Describes a map that contains a collection of ChaosContextMapItem's." + } + } + }, + "ChaosParameters": { + "description": "Defines all the parameters to configure a Chaos run.", + "properties": { + "TimeToRunInSeconds": { + "type": "string", + "description": "Total time (in seconds) for which Chaos will run before automatically stopping. The maximum allowed value is 4,294,967,295 (System.UInt32.MaxValue).", + "default": "4294967295" + }, + "MaxClusterStabilizationTimeoutInSeconds": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to wait for all cluster entities to become stable and healthy. Chaos executes in iterations and at the start of each iteration it validates the health of cluster entities.\nDuring validation if a cluster entity is not stable and healthy within MaxClusterStabilizationTimeoutInSeconds, Chaos generates a validation failed event.", + "default": 60, + "minimum": 0, + "maximum": 4294967295 + }, + "MaxConcurrentFaults": { + "type": "integer", + "format": "int64", + "description": "MaxConcurrentFaults is the maximum number of concurrent faults induced per iteration.\nChaos executes in iterations and two consecutive iterations are separated by a validation phase.\nThe higher the concurrency, the more aggressive the injection of faults, leading to inducing more complex series of states to uncover bugs.\nThe recommendation is to start with a value of 2 or 3 and to exercise caution while moving up.", + "default": 1, + "minimum": 0, + "maximum": 4294967295 + }, + "EnableMoveReplicaFaults": { + "type": "boolean", + "description": "Enables or disables the move primary and move secondary faults.", + "default": true + }, + "WaitTimeBetweenFaultsInSeconds": { + "type": "integer", + "format": "int64", + "description": "Wait time (in seconds) between consecutive faults within a single iteration.\nThe larger the value, the lower the overlapping between faults and the simpler the sequence of state transitions that the cluster goes through.\nThe recommendation is to start with a value between 1 and 5 and exercise caution while moving up.", + "default": 20, + "minimum": 0, + "maximum": 4294967295 + }, + "WaitTimeBetweenIterationsInSeconds": { + "type": "integer", + "format": "int64", + "description": "Time-separation (in seconds) between two consecutive iterations of Chaos.\nThe larger the value, the lower the fault injection rate.", + "default": 30, + "minimum": 0, + "maximum": 4294967295 + }, + "ClusterHealthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "Passed-in cluster health policy is used to validate health of the cluster in between Chaos iterations. If the cluster health is in error or if an unexpected exception happens during fault execution--to provide the cluster with some time to recuperate--Chaos will wait for 30 minutes before the next health-check." + }, + "Context": { + "$ref": "#/definitions/ChaosContext", + "description": "Describes a map, which is a collection of (string, string) type key-value pairs. The map can be used to record information about\nthe Chaos run. There cannot be more than 100 such pairs and each string (key or value) can be at most 4095 characters long.\nThis map is set by the starter of the Chaos run to optionally store the context about the specific run." + }, + "ChaosTargetFilter": { + "$ref": "#/definitions/ChaosTargetFilter", + "description": "List of cluster entities to target for Chaos faults.\nThis filter can be used to target Chaos faults only to certain node types or only to certain application instances. If ChaosTargetFilter is not used, Chaos faults all cluster entities.\nIf ChaosTargetFilter is used, Chaos faults only the entities that meet the ChaosTargetFilter specification." + } + } + }, + "ChaosParametersDictionaryItem": { + "description": "Defines an item in ChaosParametersDictionary of the Chaos Schedule.", + "required": [ + "Key", + "Value" + ], + "properties": { + "Key": { + "type": "string", + "description": "The key identifying the Chaos Parameter in the dictionary. This key is referenced by Chaos Schedule Jobs." + }, + "Value": { + "$ref": "#/definitions/ChaosParameters", + "description": "Defines all the parameters to configure a Chaos run." + } + } + }, + "ChaosEvent": { + "discriminator": "Kind", + "description": "Represents an event generated during a Chaos run.", + "properties": { + "Kind": { + "$ref": "#/definitions/ChaosEventKind", + "description": "The kind of Chaos event." + }, + "TimeStampUtc": { + "type": "string", + "description": "The UTC timestamp when this Chaos event was generated.", + "format": "date-time" + } + }, + "required": [ + "Kind", + "TimeStampUtc" + ] + }, + "ChaosEventWrapper": { + "description": "Wrapper object for Chaos event.", + "properties": { + "ChaosEvent": { + "$ref": "#/definitions/ChaosEvent", + "description": "Represents an event generated during a Chaos run." + } + } + }, + "ChaosEventKind": { + "type": "string", + "description": "The kind of Chaos event.", + "enum": [ + "Invalid", + "Started", + "ExecutingFaults", + "Waiting", + "ValidationFailed", + "TestError", + "Stopped" + ], + "x-ms-enum": { + "name": "ChaosEventKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid Chaos event kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Started", + "description": "Indicates a Chaos event that gets generated when Chaos is started." + }, + { + "value": "ExecutingFaults", + "description": "Indicates a Chaos event that gets generated when Chaos has decided on the faults for an iteration. This Chaos event contains the details of the faults as a list of strings." + }, + { + "value": "Waiting", + "description": "Indicates a Chaos event that gets generated when Chaos is waiting for the cluster to become ready for faulting, for example, Chaos may be waiting for the on-going upgrade to finish." + }, + { + "value": "ValidationFailed", + "description": "Indicates a Chaos event that gets generated when the cluster entities do not become stable and healthy within ChaosParameters.MaxClusterStabilizationTimeoutInSeconds." + }, + { + "value": "TestError", + "description": "Indicates a Chaos event that gets generated when an unexpected event has occurred in the Chaos engine, for example, due to the cluster snapshot being inconsistent, while faulting a faultable entity Chaos found that the entity was already faulted." + }, + { + "value": "Stopped", + "description": "Indicates a Chaos event that gets generated when Chaos stops because either the user issued a stop or the time to run was up." + } + ] + } + }, + "ChaosEventsSegment": { + "description": "Contains the list of Chaos events and the continuation token to get the next segment.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "History": { + "$ref": "#/definitions/ChaosEventHistory", + "description": "List of Chaos events that meet the user-supplied criteria." + } + } + }, + "ChaosScheduleDescription": { + "description": "Defines the Chaos Schedule used by Chaos and the version of the Chaos Schedule. The version value wraps back to 0 after surpassing 2,147,483,647.", + "properties": { + "Version": { + "description": "The version number of the Schedule.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "Schedule": { + "$ref": "#/definitions/ChaosSchedule", + "description": "Defines the schedule used by Chaos." + } + } + }, + "ChaosSchedule": { + "description": "Defines the schedule used by Chaos.", + "properties": { + "StartDate": { + "type": "string", + "format": "date-time", + "description": "The date and time Chaos will start using this schedule.", + "default": "1601-01-01T00:00:00Z" + }, + "ExpiryDate": { + "type": "string", + "format": "date-time", + "description": "The date and time Chaos will continue to use this schedule until.", + "default": "9999-12-31T23:59:59.999Z" + }, + "ChaosParametersDictionary": { + "type": "array", + "description": "A mapping of string names to Chaos Parameters to be referenced by Chaos Schedule Jobs.", + "items": { + "$ref": "#/definitions/ChaosParametersDictionaryItem" + } + }, + "Jobs": { + "description": "A list of all Chaos Schedule Jobs that will be automated by the schedule.", + "type": "array", + "items": { + "$ref": "#/definitions/ChaosScheduleJob" + } + } + } + }, + "ChaosScheduleJob": { + "description": "Defines a repetition rule and parameters of Chaos to be used with the Chaos Schedule.", + "properties": { + "ChaosParameters": { + "type": "string", + "description": "A reference to which Chaos Parameters of the Chaos Schedule to use." + }, + "Days": { + "$ref": "#/definitions/ChaosScheduleJobActiveDaysOfWeek", + "description": "Defines the days of the week that a Chaos Schedule Job will run for." + }, + "Times": { + "description": "A list of Time Ranges that specify when during active days that this job will run. The times are interpreted as UTC.", + "type": "array", + "items": { + "$ref": "#/definitions/TimeRange" + } + } + } + }, + "ChaosScheduleJobActiveDaysOfWeek": { + "description": "Defines the days of the week that a Chaos Schedule Job will run for.", + "properties": { + "Sunday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Sunday", + "default": false + }, + "Monday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Monday", + "default": false + }, + "Tuesday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Tuesday", + "default": false + }, + "Wednesday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Wednesday", + "default": false + }, + "Thursday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Thursday", + "default": false + }, + "Friday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Friday", + "default": false + }, + "Saturday": { + "type": "boolean", + "description": "Indicates if the Chaos Schedule Job will run on Saturday", + "default": false + } + } + }, + "TimeRange": { + "description": "Defines a time range in a 24 hour day specified by a start and end time.", + "properties": { + "StartTime": { + "$ref": "#/definitions/TimeOfDay", + "description": "Defines an hour and minute of the day specified in 24 hour time." + }, + "EndTime": { + "$ref": "#/definitions/TimeOfDay", + "description": "Defines an hour and minute of the day specified in 24 hour time." + } + } + }, + "TimeOfDay": { + "description": "Defines an hour and minute of the day specified in 24 hour time.", + "properties": { + "Hour": { + "type": "integer", + "format": "int32", + "description": "Represents the hour of the day. Value must be between 0 and 23 inclusive.", + "minimum": 0, + "maximum": 23 + }, + "Minute": { + "type": "integer", + "format": "int32", + "description": "Represents the minute of the hour. Value must be between 0 to 59 inclusive.", + "minimum": 0, + "maximum": 59 + } + } + }, + "ExecutingFaultsChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos has decided on the faults for an iteration. This Chaos event contains the details of the faults as a list of strings.", + "x-ms-discriminator-value": "ExecutingFaults", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Faults": { + "type": "array", + "description": "List of string description of the faults that Chaos decided to execute in an iteration.", + "items": { + "type": "string" + } + } + } + }, + "StartedChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos is started.", + "x-ms-discriminator-value": "Started", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "ChaosParameters": { + "$ref": "#/definitions/ChaosParameters", + "description": "Defines all the parameters to configure a Chaos run." + } + } + }, + "StoppedChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos stops because either the user issued a stop or the time to run was up.", + "x-ms-discriminator-value": "Stopped", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why Chaos stopped. Chaos can stop because of StopChaos API call or the timeToRun provided in ChaosParameters is over." + } + } + }, + "TestErrorChaosEvent": { + "description": "Describes a Chaos event that gets generated when an unexpected event occurs in the Chaos engine.\nFor example, due to the cluster snapshot being inconsistent, while faulting an entity, Chaos found that the entity was already faulted -- which would be an unexpected event.", + "x-ms-discriminator-value": "TestError", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why TestErrorChaosEvent was generated. For example, Chaos tries to fault a partition but finds that the partition is no longer fault tolerant, then a TestErrorEvent gets generated with the reason stating that the partition is not fault tolerant." + } + } + }, + "ValidationFailedChaosEvent": { + "description": "Chaos event corresponding to a failure during validation.", + "x-ms-discriminator-value": "ValidationFailed", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why the ValidationFailedChaosEvent was generated. This may happen because more than MaxPercentUnhealthyNodes are unhealthy for more than MaxClusterStabilizationTimeout. This reason will be in the Reason property of the ValidationFailedChaosEvent as a string." + } + } + }, + "WaitingChaosEvent": { + "description": "Describes a Chaos event that gets generated when Chaos is waiting for the cluster to become ready for faulting, for example, Chaos may be waiting for the on-going upgrade to finish.", + "x-ms-discriminator-value": "Waiting", + "allOf": [ + { + "$ref": "#/definitions/ChaosEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes why the WaitingChaosEvent was generated, for example, due to a cluster upgrade." + } + } + }, + "ChaosEventHistory": { + "type": "array", + "description": "An list of Chaos events that were generated during the time range passed into the GetChaosReport API call.", + "items": { + "$ref": "#/definitions/ChaosEventWrapper" + } + }, + "ChaosTargetFilter": { + "description": "Defines all filters for targeted Chaos faults, for example, faulting only certain node types or faulting only certain applications.\nIf ChaosTargetFilter is not used, Chaos faults all cluster entities. If ChaosTargetFilter is used, Chaos faults only the entities that meet the ChaosTargetFilter\nspecification. NodeTypeInclusionList and ApplicationInclusionList allow a union semantics only. It is not possible to specify an intersection\nof NodeTypeInclusionList and ApplicationInclusionList. For example, it is not possible to specify \"fault this application only when it is on that node type.\"\nOnce an entity is included in either NodeTypeInclusionList or ApplicationInclusionList, that entity cannot be excluded using ChaosTargetFilter. Even if\napplicationX does not appear in ApplicationInclusionList, in some Chaos iteration applicationX can be faulted because it happens to be on a node of nodeTypeY that is included\nin NodeTypeInclusionList. If both NodeTypeInclusionList and ApplicationInclusionList are null or empty, an ArgumentException is thrown.", + "properties": { + "NodeTypeInclusionList": { + "type": "array", + "description": "A list of node types to include in Chaos faults.\nAll types of faults (restart node, restart code package, remove replica, restart replica, move primary, and move secondary) are enabled for the nodes of these node types.\nIf a node type (say NodeTypeX) does not appear in the NodeTypeInclusionList, then node level faults (like NodeRestart) will never be enabled for the nodes of\nNodeTypeX, but code package and replica faults can still be enabled for NodeTypeX if an application in the ApplicationInclusionList.\nhappens to reside on a node of NodeTypeX.\nAt most 100 node type names can be included in this list, to increase this number, a config upgrade is required for MaxNumberOfNodeTypesInChaosEntityFilter configuration.", + "items": { + "$ref": "#/definitions/NodeType" + } + }, + "ApplicationInclusionList": { + "type": "array", + "description": "A list of application URIs to include in Chaos faults.\nAll replicas belonging to services of these applications are amenable to replica faults (restart replica, remove replica, move primary, and move secondary) by Chaos.\nChaos may restart a code package only if the code package hosts replicas of these applications only.\nIf an application does not appear in this list, it can still be faulted in some Chaos iteration if the application ends up on a node of a node type that is included in NodeTypeInclusionList.\nHowever, if applicationX is tied to nodeTypeY through placement constraints and applicationX is absent from ApplicationInclusionList and nodeTypeY is absent from NodeTypeInclusionList, then applicationX will never be faulted.\nAt most 1000 application names can be included in this list, to increase this number, a config upgrade is required for MaxNumberOfApplicationsInChaosEntityFilter configuration.", + "items": { + "$ref": "#/definitions/ApplicationName" + } + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationCapacityDescription": { + "description": "Describes capacity information for services of this application. This description can be used for describing the following.\n- Reserving the capacity for the services on the nodes\n- Limiting the total number of nodes that services of this application can run on\n- Limiting the custom capacity metrics to limit the total consumption of this metric by the services of this application", + "properties": { + "MinimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "MaximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "ApplicationMetrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + } + } + }, + "ApplicationDescription": { + "description": "Describes a Service Fabric application.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "TypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "TypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "ParameterList": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "ApplicationCapacity": { + "$ref": "#/definitions/ApplicationCapacityDescription", + "description": "Describes capacity information for services of this application. This description can be used for describing the following.\n- Reserving the capacity for the services on the nodes\n- Limiting the total number of nodes that services of this application can run on\n- Limiting the custom capacity metrics to limit the total consumption of this metric by the services of this application" + }, + "ManagedApplicationIdentity": { + "$ref": "#/definitions/ManagedApplicationIdentityDescription", + "description": "Managed application identity description." + } + }, + "required": [ + "Name", + "TypeName", + "TypeVersion" + ] + }, + "ApplicationMetricDescription": { + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "MaximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity." + }, + "ReservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric." + }, + "TotalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationLoadMetricInformation": { + "description": "Describes load information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "ReservationCapacity": { + "type": "integer", + "format": "int64", + "description": "This is the capacity reserved in the cluster for the application.\nIt's the product of NodeReservationCapacity and MinimumNodes.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity this value must be smaller than or equal to MaximumCapacity for each metric." + }, + "ApplicationCapacity": { + "type": "integer", + "format": "int64", + "description": "Total capacity for this metric in this application instance." + }, + "ApplicationLoad": { + "type": "integer", + "format": "int64", + "description": "Current load for this metric in this application instance." + } + } + }, + "ApplicationLoadMetricInformationList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationLoadMetricInformation" + }, + "description": "List of application load metric information." + }, + "ComposeDeploymentStatus": { + "type": "string", + "description": "The status of the compose deployment.", + "enum": [ + "Invalid", + "Provisioning", + "Creating", + "Ready", + "Unprovisioning", + "Deleting", + "Failed", + "Upgrading" + ], + "x-ms-enum": { + "name": "ComposeDeploymentStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the compose deployment status is invalid. The value is zero." + }, + { + "value": "Provisioning", + "description": "Indicates that the compose deployment is being provisioned in background. The value is 1." + }, + { + "value": "Creating", + "description": "Indicates that the compose deployment is being created in background. The value is 2." + }, + { + "value": "Ready", + "description": "Indicates that the compose deployment has been successfully created or upgraded. The value is 3." + }, + { + "value": "Unprovisioning", + "description": "Indicates that the compose deployment is being unprovisioned in background. The value is 4." + }, + { + "value": "Deleting", + "description": "Indicates that the compose deployment is being deleted in background. The value is 5." + }, + { + "value": "Failed", + "description": "Indicates that the compose deployment was terminated due to persistent failures. The value is 6." + }, + { + "value": "Upgrading", + "description": "Indicates that the compose deployment is being upgraded in the background. The value is 7." + } + ] + } + }, + "ComposeDeploymentStatusInfo": { + "description": "Information about a Service Fabric compose deployment.", + "properties": { + "Name": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "Status": { + "$ref": "#/definitions/ComposeDeploymentStatus", + "description": "The status of the compose deployment." + }, + "StatusDetails": { + "description": "The status details of compose deployment including failure message.", + "type": "string" + } + } + }, + "ComposeDeploymentUpgradeDescription": { + "description": "Describes the parameters for a compose deployment upgrade.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ComposeFileContent": { + "type": "string", + "description": "The content of the compose file that describes the deployment to create." + }, + "RegistryCredential": { + "$ref": "#/definitions/RegistryCredential", + "description": "Credential information to connect to container registry." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + } + }, + "required": [ + "DeploymentName", + "ComposeFileContent", + "UpgradeKind" + ] + }, + "ComposeDeploymentUpgradeProgressInfo": { + "description": "Describes the parameters for a compose deployment upgrade.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/TargetDeploymentName", + "description": "The name of the target deployment." + }, + "ApplicationName": { + "$ref": "#/definitions/TargetApplicationName", + "description": "The name of the target application, including the 'fabric:' URI scheme." + }, + "UpgradeState": { + "$ref": "#/definitions/ComposeDeploymentUpgradeState", + "description": "The state of the compose deployment upgrade." + }, + "UpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "MonitoringPolicy": { + "$ref": "#/definitions/MonitoringPolicyDescription", + "description": "Describes the parameters for monitoring an upgrade in Monitored mode." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "TargetApplicationTypeVersion": { + "$ref": "#/definitions/TargetApplicationTypeVersion", + "description": "The target application type version (found in the application manifest) for the application upgrade." + }, + "UpgradeDuration": { + "$ref": "#/definitions/UpgradeDuration", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "CurrentUpgradeDomainDuration": { + "$ref": "#/definitions/CurrentUpgradeDomainDuration", + "description": "The estimated amount of time spent processing current Upgrade Domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "ApplicationUnhealthyEvaluations": { + "$ref": "#/definitions/ApplicationUnhealthyEvaluations", + "description": "List of health evaluations that resulted in the current aggregated health state." + }, + "CurrentUpgradeDomainProgress": { + "$ref": "#/definitions/CurrentUpgradeDomainProgressInfo", + "description": "Information about the current in-progress upgrade domain." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + }, + "FailureReason": { + "$ref": "#/definitions/FailureReason", + "description": "The cause of an upgrade failure that resulted in FailureAction being executed." + }, + "UpgradeDomainProgressAtFailure": { + "$ref": "#/definitions/FailureUpgradeDomainProgressInfo", + "description": "Information about the upgrade domain progress at the time of upgrade failure." + }, + "ApplicationUpgradeStatusDetails": { + "type": "string", + "description": "Additional details of application upgrade including failure message." + } + } + }, + "ComposeDeploymentUpgradeState": { + "type": "string", + "description": "The state of the compose deployment upgrade.", + "enum": [ + "Invalid", + "ProvisioningTarget", + "RollingForwardInProgress", + "RollingForwardPending", + "UnprovisioningCurrent", + "RollingForwardCompleted", + "RollingBackInProgress", + "UnprovisioningTarget", + "RollingBackCompleted", + "Failed" + ], + "x-ms-enum": { + "name": "ComposeDeploymentUpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "ProvisioningTarget", + "description": "The upgrade is in the progress of provisioning target application type version. The value is 1." + }, + { + "value": "RollingForwardInProgress", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 2." + }, + { + "value": "RollingForwardPending", + "description": "The current upgrade domain has finished upgrading. The overall upgrade is waiting for an explicit move next request in UnmonitoredManual mode or performing health checks in Monitored mode. The value is 3" + }, + { + "value": "UnprovisioningCurrent", + "description": "The upgrade is in the progress of unprovisioning current application type version and rolling forward to the target version is completed. The value is 4." + }, + { + "value": "RollingForwardCompleted", + "description": "The upgrade has finished rolling forward. The value is 5." + }, + { + "value": "RollingBackInProgress", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 6." + }, + { + "value": "UnprovisioningTarget", + "description": "The upgrade is in the progress of unprovisioning target application type version and rolling back to the current version is completed. The value is 7." + }, + { + "value": "RollingBackCompleted", + "description": "The upgrade has finished rolling back. The value is 8." + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 9." + } + ] + } + }, + "PagedComposeDeploymentStatusInfoList": { + "description": "The list of compose deployments in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of compose deployment status information.", + "items": { + "$ref": "#/definitions/ComposeDeploymentStatusInfo" + } + } + } + }, + "CreateComposeDeploymentDescription": { + "description": "Defines description for creating a Service Fabric compose deployment.", + "properties": { + "DeploymentName": { + "$ref": "#/definitions/DeploymentName", + "description": "The name of the deployment." + }, + "ComposeFileContent": { + "type": "string", + "description": "The content of the compose file that describes the deployment to create." + }, + "RegistryCredential": { + "$ref": "#/definitions/RegistryCredential", + "description": "Credential information to connect to container registry." + } + }, + "required": [ + "DeploymentName", + "ComposeFileContent" + ] + }, + "RegistryCredential": { + "description": "Credential information to connect to container registry.", + "properties": { + "RegistryUserName": { + "type": "string", + "description": "The user name to connect to container registry." + }, + "RegistryPassword": { + "type": "string", + "description": "The password for supplied username to connect to container registry." + }, + "PasswordEncrypted": { + "type": "boolean", + "description": "Indicates that supplied container registry password is encrypted." + } + } + }, + "DeployedServicePackageInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServicePackageInfo" + }, + "description": "List of deployed service package information." + }, + "DeployedServicePackageInfo": { + "description": "Information about service package deployed on a Service Fabric node.", + "properties": { + "Name": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service package as specified in the service manifest." + }, + "Version": { + "type": "string", + "description": "The version of the service package specified in service manifest." + }, + "Status": { + "$ref": "#/definitions/DeploymentStatus", + "description": "Specifies the status of a deployed application or service package on a Service Fabric node." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeploymentName": { + "type": "string", + "description": "The name of the deployment." + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High", + "VeryHigh" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + }, + { + "value": "VeryHigh", + "description": "Specifies the move cost of the service as VeryHigh. The value is 4." + } + ] + } + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "description": "Creates a particular correlation between services.", + "required": [ + "Scheme", + "ServiceName" + ], + "properties": { + "Scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricDescription": { + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "Name" + ], + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case-sensitive." + }, + "Weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "PrimaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "SecondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "DefaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServicePackageActivationMode": { + "type": "string", + "description": "The activation mode of service package to be used for a Service Fabric service. This is specified at the time of creating the Service.", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "This is the default activation mode. With this activation mode, replicas or instances from different partition(s) of service, on a given node, will share same activation of service package on a node. The value is zero." + }, + { + "value": "ExclusiveProcess", + "description": "With this activation mode, each replica or instance of service, on a given node, will have its own dedicated activation of service package on a node. The value is 1." + } + ] + } + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "PartitionSchemeDescription": { + "discriminator": "PartitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "PartitionScheme" + ], + "properties": { + "PartitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "Count", + "Names" + ], + "properties": { + "Count": { + "type": "integer", + "description": "The number of partitions." + }, + "Names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘Count’ parameter, for the names of the partitions." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "Count", + "LowKey", + "HighKey" + ], + "properties": { + "Count": { + "type": "integer", + "description": "The number of partitions." + }, + "LowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partitions." + }, + "HighKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partitions." + } + } + }, + "ServiceDescription": { + "discriminator": "ServiceKind", + "description": "A ServiceDescription contains all of the information necessary to create a service.", + "required": [ + "ServiceKind", + "ServiceName", + "ServiceTypeName", + "PartitionDescription" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The service kind." + }, + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "InitializationData": { + "$ref": "#/definitions/ByteArray", + "description": "The initialization data as an array of bytes. Initialization data is passed to service instances or replicas when they are created." + }, + "PartitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "The partition description as an object." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "CorrelationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "The correlation scheme." + }, + "ServiceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "The service placement policies." + }, + "DefaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "The move cost for the service." + }, + "IsDefaultMoveCostSpecified": { + "type": "boolean", + "description": "Indicates if the DefaultMoveCost property is specified." + }, + "ServicePackageActivationMode": { + "$ref": "#/definitions/ServicePackageActivationMode", + "description": "The activation mode of service package to be used for a service." + }, + "ServiceDnsName": { + "type": "string", + "description": "The DNS name of the service. It requires the DNS system service to be enabled in Service Fabric cluster." + }, + "ScalingPolicies": { + "$ref": "#/definitions/ScalingPolicyDescriptionList", + "description": "Scaling policies for this service." + } + } + }, + "StatefulServiceDescription": { + "description": "Describes a stateful service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "required": [ + "TargetReplicaSetSize", + "MinReplicaSetSize", + "HasPersistedState" + ], + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "HasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "Flags": { + "type": "integer", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then the flags for QuorumLossWaitDuration (2) and StandByReplicaKeepDuration(4) are set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- ReplicaRestartWaitDuration - Indicates the ReplicaRestartWaitDuration property is set. The value is 1.\n- QuorumLossWaitDuration - Indicates the QuorumLossWaitDuration property is set. The value is 2.\n- StandByReplicaKeepDuration - Indicates the StandByReplicaKeepDuration property is set. The value is 4.\n- ServicePlacementTimeLimit - Indicates the ServicePlacementTimeLimit property is set. The value is 8." + }, + "ReplicaRestartWaitDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The duration, in seconds, between when a replica goes down and when a new replica is created." + }, + "QuorumLossWaitDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The maximum duration, in seconds, for which a partition is allowed to be in a state of quorum loss." + }, + "StandByReplicaKeepDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The definition on how long StandBy replicas should be maintained before being removed." + }, + "ServicePlacementTimeLimitSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck." + } + } + }, + "StatelessServiceDescription": { + "description": "Describes a stateless service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "required": [ + "InstanceCount" + ], + "properties": { + "InstanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "Flags": { + "type": "integer", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 1 then the flags for InstanceCloseDelayDuration is set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- InstanceCloseDelayDuration - Indicates the InstanceCloseDelayDuration property is set. The value is 1." + }, + "InstanceCloseDelayDurationSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade and disabling node.\nThe endpoint exposed on this instance is removed prior to starting the delay, which prevents new connections to this instance.\nIn addition, clients that have subscribed to service endpoint change events(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), can do\nthe following upon receiving the endpoint removal notification:\n - Stop sending new requests to this instance.\n - Close existing connections after in-flight requests have completed.\n - Connect to a different instance of the service partition for future requests.\nNote, the default value of InstanceCloseDelayDuration is 0, which indicates that there won't be any delay or removal of the endpoint prior to closing the instance." + } + } + }, + "ReplicatorQueueStatus": { + "description": "Provides various statistics of the queue used in the service fabric replicator.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc.\nDepending on the role of the replicator, the properties in this type imply different meanings.", + "properties": { + "QueueUtilizationPercentage": { + "type": "integer", + "format": "int32", + "description": "Represents the utilization of the queue. A value of 0 indicates that the queue is empty and a value of 100 indicates the queue is full." + }, + "QueueMemorySize": { + "type": "string", + "description": "Represents the virtual memory consumed by the queue in bytes." + }, + "FirstSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the sequence number of the operation for which all the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is the smallest sequence number of the operation that is present in the queue." + }, + "CompletedSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the highest sequence number of the operation for which all the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is semantically the highest sequence number that has been applied to the persistent state." + }, + "CommittedSequenceNumber": { + "type": "string", + "description": "On a primary replicator, this is semantically the highest sequence number of the operation for which a write quorum of the secondary replicas have sent an acknowledgement.\nOn a secondary replicator, this is semantically the highest sequence number of the in-order operation received from the primary." + }, + "LastSequenceNumber": { + "type": "string", + "description": "Represents the latest sequence number of the operation that is available in the queue." + } + } + }, + "ReplicatorStatus": { + "discriminator": "Kind", + "description": "Represents a base class for primary or secondary replicator status.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ReplicaRole", + "description": "The role of a replica of a stateful service." + } + } + }, + "PrimaryReplicatorStatus": { + "x-ms-discriminator-value": "Primary", + "description": "Provides statistics about the Service Fabric Replicator, when it is functioning in a Primary role.", + "allOf": [ + { + "$ref": "#/definitions/ReplicatorStatus" + } + ], + "properties": { + "ReplicationQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the replication queue on the primary replicator." + }, + "RemoteReplicators": { + "$ref": "#/definitions/RemoteReplicatorStatusList", + "description": "The status of all the active and idle secondary replicators that the primary is aware of." + } + } + }, + "SecondaryReplicatorStatus": { + "description": "Provides statistics about the Service Fabric Replicator, when it is functioning in a ActiveSecondary role.", + "allOf": [ + { + "$ref": "#/definitions/ReplicatorStatus" + } + ], + "properties": { + "ReplicationQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the replication queue on the secondary replicator." + }, + "LastReplicationOperationReceivedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which a replication operation was received from the primary.\nUTC 0 represents an invalid value, indicating that a replication operation message was never received." + }, + "IsInBuild": { + "type": "boolean", + "description": "Value that indicates whether the replica is currently being built." + }, + "CopyQueueStatus": { + "$ref": "#/definitions/ReplicatorQueueStatus", + "description": "Details about the copy queue on the secondary replicator." + }, + "LastCopyOperationReceivedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which a copy operation was received from the primary.\nUTC 0 represents an invalid value, indicating that a copy operation message was never received." + }, + "LastAcknowledgementSentTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last time-stamp (UTC) at which an acknowledgment was sent to the primary replicator.\nUTC 0 represents an invalid value, indicating that an acknowledgment message was never sent." + } + } + }, + "SecondaryActiveReplicatorStatus": { + "x-ms-discriminator-value": "ActiveSecondary", + "description": "Status of the secondary replicator when it is in active mode and is part of the replica set.", + "allOf": [ + { + "$ref": "#/definitions/SecondaryReplicatorStatus" + } + ] + }, + "SecondaryIdleReplicatorStatus": { + "x-ms-discriminator-value": "IdleSecondary", + "description": "Status of the secondary replicator when it is in idle mode and is being built by the primary.", + "allOf": [ + { + "$ref": "#/definitions/SecondaryReplicatorStatus" + } + ] + }, + "RemoteReplicatorStatus": { + "description": "Represents the state of the secondary replicator from the primary replicator’s point of view.", + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Represents the replica ID of the remote secondary replicator." + }, + "LastAcknowledgementProcessedTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The last timestamp (in UTC) when an acknowledgement from the secondary replicator was processed on the primary.\nUTC 0 represents an invalid value, indicating that no acknowledgement messages were ever processed." + }, + "LastReceivedReplicationSequenceNumber": { + "type": "string", + "description": "The highest replication operation sequence number that the secondary has received from the primary." + }, + "LastAppliedReplicationSequenceNumber": { + "type": "string", + "description": "The highest replication operation sequence number that the secondary has applied to its state." + }, + "IsInBuild": { + "type": "boolean", + "description": "A value that indicates whether the secondary replica is in the process of being built." + }, + "LastReceivedCopySequenceNumber": { + "type": "string", + "description": "The highest copy operation sequence number that the secondary has received from the primary.\nA value of -1 implies that the secondary has received all copy operations." + }, + "LastAppliedCopySequenceNumber": { + "type": "string", + "description": "The highest copy operation sequence number that the secondary has applied to its state.\nA value of -1 implies that the secondary has applied all copy operations and the copy process is complete." + }, + "RemoteReplicatorAcknowledgementStatus": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementStatus", + "description": "Represents the acknowledgment status for the remote secondary replicator." + } + } + }, + "RemoteReplicatorStatusList": { + "type": "array", + "items": { + "$ref": "#/definitions/RemoteReplicatorStatus" + }, + "description": "List of remote replicator status" + }, + "RemoteReplicatorAcknowledgementStatus": { + "description": "Provides details about the remote replicators from the primary replicator's point of view.", + "properties": { + "ReplicationStreamAcknowledgementDetail": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementDetail", + "description": "Details about the acknowledgements for operations that are part of the replication stream data." + }, + "CopyStreamAcknowledgementDetail": { + "$ref": "#/definitions/RemoteReplicatorAcknowledgementDetail", + "description": "Details about the acknowledgements for operations that are part of the copy stream data." + } + } + }, + "RemoteReplicatorAcknowledgementDetail": { + "description": "Provides various statistics of the acknowledgements that are being received from the remote replicator.", + "properties": { + "AverageReceiveDuration": { + "type": "string", + "description": "Represents the average duration it takes for the remote replicator to receive an operation." + }, + "AverageApplyDuration": { + "type": "string", + "description": "Represents the average duration it takes for the remote replicator to apply an operation. This usually entails writing the operation to disk." + }, + "NotReceivedCount": { + "type": "string", + "description": "Represents the number of operations not yet received by a remote replicator." + }, + "ReceivedAndNotAppliedCount": { + "type": "string", + "description": "Represents the number of operations received and not yet applied by a remote replicator." + } + } + }, + "DeployedServiceReplicaDetailInfo": { + "discriminator": "ServiceKind", + "description": "Information about a Service Fabric service replica deployed on a node.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "Full hierarchical name of the service in URI format starting with `fabric:`." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + }, + "CurrentServiceOperation": { + "$ref": "#/definitions/ServiceOperationName", + "description": "Specifies the current active life-cycle operation on a stateful service replica or stateless service instance." + }, + "CurrentServiceOperationStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The start time of the current service operation in UTC format." + }, + "ReportedLoad": { + "$ref": "#/definitions/LoadMetricReportInfoList", + "description": "List of load reported by replica." + } + } + }, + "DeployedStatefulServiceReplicaDetailInfo": { + "description": "Information about a stateful replica running in a code package. Note DeployedServiceReplicaQueryResult will contain duplicate data like ServiceKind, ServiceName, PartitionId and replicaId.", + "x-ms-discriminator-value": "Stateful", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + ], + "properties": { + "ReplicaId": { + "$ref": "#/definitions/ReplicaId", + "description": "Id of a stateful service replica. ReplicaId is used by Service Fabric to uniquely identify a replica of a partition. It is unique within a partition and does not change for the lifetime of the replica. If a replica gets dropped and another replica gets created on the same node for the same partition, it will get a different value for the id. Sometimes the id of a stateless service instance is also referred as a replica id." + }, + "CurrentReplicatorOperation": { + "$ref": "#/definitions/ReplicatorOperationName", + "description": "Specifies the operation currently being executed by the Replicator." + }, + "ReadStatus": { + "$ref": "#/definitions/PartitionAccessStatus", + "description": "Specifies the access status of the partition." + }, + "WriteStatus": { + "$ref": "#/definitions/PartitionAccessStatus", + "description": "Specifies the access status of the partition." + }, + "ReplicatorStatus": { + "$ref": "#/definitions/ReplicatorStatus", + "description": "Represents a base class for primary or secondary replicator status.\nContains information about the service fabric replicator like the replication/copy queue utilization, last acknowledgement received timestamp, etc." + }, + "ReplicaStatus": { + "$ref": "#/definitions/KeyValueStoreReplicaStatus", + "description": "Key value store related information for the replica." + }, + "DeployedServiceReplicaQueryResult": { + "$ref": "#/definitions/DeployedStatefulServiceReplicaInfo", + "description": "Information about a stateful service replica deployed on a node." + } + } + }, + "DeployedStatelessServiceInstanceDetailInfo": { + "description": "Information about a stateless instance running in a code package. Note that DeployedServiceReplicaQueryResult will contain duplicate data like ServiceKind, ServiceName, PartitionId and InstanceId.", + "x-ms-discriminator-value": "Stateless", + "allOf": [ + { + "$ref": "#/definitions/DeployedServiceReplicaDetailInfo" + } + ], + "properties": { + "InstanceId": { + "$ref": "#/definitions/InstanceId", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + }, + "DeployedServiceReplicaQueryResult": { + "$ref": "#/definitions/DeployedStatelessServiceInstanceInfo", + "description": "Information about a stateless service instance deployed on a node." + } + } + }, + "FabricReplicaStatus": { + "type": "string", + "description": "Specifies the status of the replica.", + "enum": [ + "Invalid", + "Down", + "Up" + ], + "x-ms-enum": { + "name": "FabricReplicaStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the read or write operation access status is not valid. This value is not returned to the caller." + }, + { + "value": "Down", + "description": "Indicates that the replica is down." + }, + { + "value": "Up", + "description": "Indicates that the replica is up." + } + ] + } + }, + "LoadMetricReportInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadMetricReportInfo" + }, + "description": "List of load reported by replica." + }, + "LoadMetricReportInfo": { + "description": "Information about load reported by replica.", + "properties": { + "Name": { + "type": "string", + "description": "The name of the metric." + }, + "Value": { + "type": "integer", + "format": "int32", + "description": "The value of the load for the metric. In future releases of Service Fabric this parameter will be deprecated in favor of CurrentValue." + }, + "CurrentValue": { + "type": "string", + "format": "double", + "description": "The double value of the load for the metric." + }, + "LastReportedUtc": { + "type": "string", + "format": "date-time", + "description": "The UTC time when the load is reported." + } + } + }, + "PartitionAccessStatus": { + "type": "string", + "description": "Specifies the access status of the partition.", + "enum": [ + "Invalid", + "Granted", + "ReconfigurationPending", + "NotPrimary", + "NoWriteQuorum" + ], + "x-ms-enum": { + "name": "PartitionAccessStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the read or write operation access status is not valid. This value is not returned to the caller." + }, + { + "value": "Granted", + "description": "Indicates that the read or write operation access is granted and the operation is allowed." + }, + { + "value": "ReconfigurationPending", + "description": "Indicates that the client should try again later, because a reconfiguration is in progress." + }, + { + "value": "NotPrimary", + "description": "Indicates that this client request was received by a replica that is not a Primary replica." + }, + { + "value": "NoWriteQuorum", + "description": "Indicates that no write quorum is available and, therefore, no write operation can be accepted." + } + ] + } + }, + "ReplicatorOperationName": { + "type": "string", + "description": "Specifies the operation currently being executed by the Replicator.", + "enum": [ + "Invalid", + "None", + "Open", + "ChangeRole", + "UpdateEpoch", + "Close", + "Abort", + "OnDataLoss", + "WaitForCatchup", + "Build" + ], + "x-ms-enum": { + "name": "ReplicatorOperationName", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Default value if the replicator is not yet ready." + }, + { + "value": "None", + "description": "Replicator is not running any operation from Service Fabric perspective." + }, + { + "value": "Open", + "description": "Replicator is opening." + }, + { + "value": "ChangeRole", + "description": "Replicator is in the process of changing its role." + }, + { + "value": "UpdateEpoch", + "description": "Due to a change in the replica set, replicator is being updated with its Epoch." + }, + { + "value": "Close", + "description": "Replicator is closing." + }, + { + "value": "Abort", + "description": "Replicator is being aborted." + }, + { + "value": "OnDataLoss", + "description": "Replicator is handling the data loss condition, where the user service may potentially be recovering state from an external source." + }, + { + "value": "WaitForCatchup", + "description": "Replicator is waiting for a quorum of replicas to be caught up to the latest state." + }, + { + "value": "Build", + "description": "Replicator is in the process of building one or more replicas." + } + ] + } + }, + "ServiceOperationName": { + "type": "string", + "description": "Specifies the current active life-cycle operation on a stateful service replica or stateless service instance.", + "enum": [ + "Unknown", + "None", + "Open", + "ChangeRole", + "Close", + "Abort" + ], + "x-ms-enum": { + "name": "ServiceOperationName", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Reserved for future use." + }, + { + "value": "None", + "description": "The service replica or instance is not going through any life-cycle changes." + }, + { + "value": "Open", + "description": "The service replica or instance is being opened." + }, + { + "value": "ChangeRole", + "description": "The service replica is changing roles." + }, + { + "value": "Close", + "description": "The service replica or instance is being closed." + }, + { + "value": "Abort", + "description": "The service replica or instance is being aborted." + } + ] + } + }, + "ReplicaKind": { + "type": "string", + "description": "The role of a replica of a stateful service.", + "enum": [ + "Invalid", + "KeyValueStore" + ], + "x-ms-enum": { + "name": "ReplicaKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Represents an invalid replica kind. The value is zero." + }, + { + "value": "KeyValueStore", + "description": "Represents a key value store replica. The value is 1" + } + ] + } + }, + "ReplicaStatusBase": { + "discriminator": "Kind", + "description": "Information about the replica.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ReplicaKind", + "description": "The role of a replica of a stateful service." + } + } + }, + "KeyValueStoreReplicaStatus": { + "description": "Key value store related information for the replica.", + "x-ms-discriminator-value": "KeyValueStore", + "allOf": [ + { + "$ref": "#/definitions/ReplicaStatusBase" + } + ], + "properties": { + "DatabaseRowCountEstimate": { + "type": "string", + "description": "Value indicating the estimated number of rows in the underlying database." + }, + "DatabaseLogicalSizeEstimate": { + "type": "string", + "description": "Value indicating the estimated size of the underlying database." + }, + "CopyNotificationCurrentKeyFilter": { + "type": "string", + "description": "Value indicating the latest key-prefix filter applied to enumeration during the callback. Null if there is no pending callback." + }, + "CopyNotificationCurrentProgress": { + "type": "string", + "description": "Value indicating the latest number of keys enumerated during the callback. 0 if there is no pending callback." + }, + "StatusDetails": { + "type": "string", + "description": "Value indicating the current status details of the replica." + } + } + }, + "ServiceUpdateDescription": { + "discriminator": "ServiceKind", + "description": "A ServiceUpdateDescription contains all of the information necessary to update a service.", + "required": [ + "ServiceKind" + ], + "properties": { + "ServiceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The service kind." + }, + "Flags": { + "type": "string", + "description": "Flags indicating whether other properties are set. Each of the associated properties corresponds to a flag, specified below, which, if set, indicate that the property is specified.\nThis property can be a combination of those flags obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then the flags for ReplicaRestartWaitDuration (2) and QuorumLossWaitDuration (4) are set.\n\n- None - Does not indicate any other properties are set. The value is zero.\n- TargetReplicaSetSize/InstanceCount - Indicates whether the TargetReplicaSetSize property (for Stateful services) or the InstanceCount property (for Stateless services) is set. The value is 1.\n- ReplicaRestartWaitDuration - Indicates the ReplicaRestartWaitDuration property is set. The value is 2.\n- QuorumLossWaitDuration - Indicates the QuorumLossWaitDuration property is set. The value is 4.\n- StandByReplicaKeepDuration - Indicates the StandByReplicaKeepDuration property is set. The value is 8.\n- MinReplicaSetSize - Indicates the MinReplicaSetSize property is set. The value is 16.\n- PlacementConstraints - Indicates the PlacementConstraints property is set. The value is 32.\n- PlacementPolicyList - Indicates the ServicePlacementPolicies property is set. The value is 64.\n- Correlation - Indicates the CorrelationScheme property is set. The value is 128.\n- Metrics - Indicates the ServiceLoadMetrics property is set. The value is 256.\n- DefaultMoveCost - Indicates the DefaultMoveCost property is set. The value is 512.\n- ScalingPolicy - Indicates the ScalingPolicies property is set. The value is 1024.\n- ServicePlacementTimeLimit - Indicates the ServicePlacementTimeLimit property is set. The value is 2048.\n- MinInstanceCount - Indicates the MinInstanceCount property is set. The value is 4096.\n- MinInstancePercentage - Indicates the MinInstancePercentage property is set. The value is 8192.\n- InstanceCloseDelayDuration - Indicates the InstanceCloseDelayDuration property is set. The value is 16384." + }, + "PlacementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "CorrelationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "The correlation scheme." + }, + "LoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics." + }, + "ServicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "The service placement policies." + }, + "DefaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "The move cost for the service." + }, + "ScalingPolicies": { + "$ref": "#/definitions/ScalingPolicyDescriptionList", + "description": "Scaling policies for this service." + } + } + }, + "StatefulServiceUpdateDescription": { + "description": "Describes an update for a stateful service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceUpdateDescription" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "TargetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "MinReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "ReplicaRestartWaitDurationSeconds": { + "type": "string", + "description": "The duration, in seconds, between when a replica goes down and when a new replica is created." + }, + "QuorumLossWaitDurationSeconds": { + "type": "string", + "description": "The maximum duration, in seconds, for which a partition is allowed to be in a state of quorum loss." + }, + "StandByReplicaKeepDurationSeconds": { + "type": "string", + "description": "The definition on how long StandBy replicas should be maintained before being removed." + }, + "ServicePlacementTimeLimitSeconds": { + "type": "string", + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck." + } + } + }, + "StatelessServiceUpdateDescription": { + "description": "Describes an update for a stateless service.", + "allOf": [ + { + "$ref": "#/definitions/ServiceUpdateDescription" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "InstanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "MinInstanceCount": { + "$ref": "#/definitions/MinInstanceCount", + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "MinInstancePercentage": { + "$ref": "#/definitions/MinInstancePercentage", + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node.\nThe actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).\nNote, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "InstanceCloseDelayDurationSeconds": { + "type": "string", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade and disabling node.\nThe endpoint exposed on this instance is removed prior to starting the delay, which prevents new connections to this instance.\nIn addition, clients that have subscribed to service endpoint change events(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), can do\nthe following upon receiving the endpoint removal notification:\n - Stop sending new requests to this instance.\n - Close existing connections after in-flight requests have completed.\n - Connect to a different instance of the service partition for future requests." + } + } + }, + "ImageStoreRelativePath": { + "type": "string", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FileVersion": { + "description": "Information about the version of image store file.", + "properties": { + "VersionNumber": { + "type": "string", + "description": "The current image store version number for the file is used in image store for checking whether it need to be updated." + }, + "EpochDataLossNumber": { + "type": "string", + "description": "The epoch data loss number of image store replica when this file entry was updated or created." + }, + "EpochConfigurationNumber": { + "type": "string", + "description": "The epoch configuration version number of the image store replica when this file entry was created or updated." + } + } + }, + "DiskInfo": { + "description": "Information about the disk", + "properties": { + "Capacity": { + "type": "string", + "description": "the disk size in bytes" + }, + "AvailableSpace": { + "type": "string", + "description": "the available disk space in bytes" + } + } + }, + "FileInfo": { + "description": "Information about a image store file.", + "properties": { + "FileSize": { + "type": "string", + "description": "The size of file in bytes." + }, + "FileVersion": { + "$ref": "#/definitions/FileVersion", + "description": "Information about the version of image store file." + }, + "ModifiedDate": { + "type": "string", + "format": "date-time", + "description": "The date and time when the image store file was last modified." + }, + "StoreRelativePath": { + "type": "string", + "description": "The file path relative to the image store root path." + } + } + }, + "FolderInfo": { + "description": "Information about a image store folder. It includes how many files this folder contains and its image store relative path.", + "properties": { + "StoreRelativePath": { + "$ref": "#/definitions/ImageStoreRelativePath", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FileCount": { + "type": "string", + "description": "The number of files from within the image store folder." + } + } + }, + "FolderSizeInfo": { + "description": "Information of a image store folder size", + "properties": { + "StoreRelativePath": { + "$ref": "#/definitions/ImageStoreRelativePath", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "FolderSize": { + "type": "string", + "description": "The size of folder in bytes." + } + } + }, + "UsageInfo": { + "description": "Information about how much space and how many files in the file system the ImageStore is using in this category", + "properties": { + "UsedSpace": { + "type": "string", + "description": "the size of all files in this category" + }, + "FileCount": { + "type": "string", + "description": "the number of all files in this category" + } + } + }, + "ImageStoreContent": { + "description": "Information about the image store content.", + "properties": { + "StoreFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/FileInfo" + }, + "description": "The list of image store file info objects represents files found under the given image store relative path." + }, + "StoreFolders": { + "type": "array", + "items": { + "$ref": "#/definitions/FolderInfo" + }, + "description": "The list of image store folder info objects represents subfolders found under the given image store relative path." + } + } + }, + "ImageStoreCopyDescription": { + "description": "Information about how to copy image store content from one image store relative path to another image store relative path.", + "required": [ + "RemoteSource", + "RemoteDestination" + ], + "properties": { + "RemoteSource": { + "type": "string", + "description": "The relative path of source image store content to be copied from." + }, + "RemoteDestination": { + "type": "string", + "description": "The relative path of destination image store content to be copied to." + }, + "SkipFiles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of the file names to be skipped for copying." + }, + "CheckMarkFile": { + "type": "boolean", + "description": "Indicates whether to check mark file during copying. The property is true if checking mark file is required, false otherwise. The mark file is used to check whether the folder is well constructed. If the property is true and mark file does not exist, the copy is skipped." + } + } + }, + "ImageStoreInfo": { + "description": "Information about the ImageStore's resource usage", + "properties": { + "DiskInfo": { + "$ref": "#/definitions/DiskInfo", + "description": "disk capacity and available disk space on the node where the ImageStore primary is placed." + }, + "UsedByMetadata": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for metadata." + }, + "UsedByStaging": { + "$ref": "#/definitions/UsageInfo", + "description": "The ImageStore's file system usage for staging files that are being uploaded." + }, + "UsedByCopy": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for copied application and cluster packages. [Removing application and cluster packages](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-deleteimagestorecontent) will free up this space." + }, + "UsedByRegister": { + "$ref": "#/definitions/UsageInfo", + "description": "the ImageStore's file system usage for registered and cluster packages. [Unregistering application](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-unprovisionapplicationtype) and [cluster packages](https://docs.microsoft.com/rest/api/servicefabric/sfclient-api-unprovisionapplicationtype) will free up this space." + } + } + }, + "InstanceId": { + "type": "string", + "description": "Id of a stateless service instance. InstanceId is used by Service Fabric to uniquely identify an instance of a partition of a stateless service. It is unique within a partition and does not change for the lifetime of the instance. If the instance has failed over on the same or different node, it will get a different value for the InstanceId." + }, + "CodePackageInstanceId": { + "type": "string", + "description": "The instance ID for current running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started. Each time entry point executable is run, its instance id will change." + }, + "HostIsolationMode": { + "type": "string", + "description": "Specifies the isolation mode of main entry point of a code package when it's host type is ContainerHost. This is specified as part of container host policies in application manifest while importing service manifest.", + "enum": [ + "None", + "Process", + "HyperV" + ], + "x-ms-enum": { + "name": "HostIsolationMode", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Indicates the isolation mode is not applicable for given HostType. The value is 0." + }, + { + "value": "Process", + "description": "This is the default isolation mode for a ContainerHost. The value is 1." + }, + { + "value": "HyperV", + "description": "Indicates the ContainerHost is a Hyper-V container. This applies to only Windows containers. The value is 2." + } + ] + } + }, + "HostType": { + "type": "string", + "description": "Specifies the type of host for main entry point of a code package as specified in service manifest.", + "enum": [ + "Invalid", + "ExeHost", + "ContainerHost" + ], + "x-ms-enum": { + "name": "HostType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of host is not known or invalid. The value is 0." + }, + { + "value": "ExeHost", + "description": "Indicates the host is an executable. The value is 1." + }, + { + "value": "ContainerHost", + "description": "Indicates the host is a container. The value is 2." + } + ] + } + }, + "RestartDeployedCodePackageDescription": { + "description": "Defines description for restarting a deployed code package on Service Fabric node.", + "required": [ + "ServiceManifestName", + "CodePackageName", + "CodePackageInstanceId" + ], + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest that specified this code package." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package defined in the service manifest." + }, + "CodePackageInstanceId": { + "$ref": "#/definitions/CodePackageInstanceId", + "description": "The instance ID for currently running entry point. For a code package setup entry point (if specified) runs first and after it finishes main entry point is started.\nEach time entry point executable is run, its instance ID will change. If 0 is passed in as the code package instance ID, the API will restart the code package with whatever instance ID it is currently running.\nIf an instance ID other than 0 is passed in, the API will restart the code package only if the current Instance ID matches the passed in instance ID.\nNote, passing in the exact instance ID (not 0) in the API is safer, because if ensures at most one restart of the code package." + } + } + }, + "DeployedServiceTypeInfo": { + "description": "Information about service type deployed on a node, information such as the status of the service type registration on a node.", + "properties": { + "ServiceTypeName": { + "$ref": "#/definitions/ServiceTypeName", + "description": "Name of the service type as specified in the service manifest." + }, + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of the service manifest in which this service type is defined." + }, + "CodePackageName": { + "$ref": "#/definitions/CodePackageName", + "description": "The name of the code package that registered the service type." + }, + "Status": { + "$ref": "#/definitions/ServiceTypeRegistrationStatus", + "description": "The status of the service type registration on the node." + }, + "ServicePackageActivationId": { + "$ref": "#/definitions/ServicePackageActivationId", + "description": "The ActivationId of a deployed service package. If ServicePackageActivationMode specified at the time of creating the service\nis 'SharedProcess' (or if it is not specified, in which case it defaults to 'SharedProcess'), then value of ServicePackageActivationId\nis always an empty string." + } + } + }, + "DeployedServiceTypeInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployedServiceTypeInfo" + }, + "description": "List of information about service type deployed on a node." + }, + "ServiceTypeRegistrationStatus": { + "type": "string", + "description": "The status of the service type registration on the node.", + "enum": [ + "Invalid", + "Disabled", + "Enabled", + "Registered" + ], + "x-ms-enum": { + "name": "ServiceTypeRegistrationStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the registration status is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Disabled", + "description": "Indicates that the service type is disabled on this node. A type gets disabled when there are too many failures of the code package hosting the service type. If the service type is disabled, new replicas of that service type will not be placed on the node until it is enabled again. The service type is enabled again after the process hosting it comes up and re-registers the type or a preconfigured time interval has passed. The value is 1." + }, + { + "value": "Enabled", + "description": "Indicates that the service type is enabled on this node. Replicas of this service type can be placed on this node when the code package registers the service type. The value is 2." + }, + { + "value": "Registered", + "description": "Indicates that the service type is enabled and registered on the node by a code package. Replicas of this service type can now be placed on this node. The value is 3." + } + ] + } + }, + "ServiceEndpointRole": { + "type": "string", + "description": "The role of the replica where the endpoint is reported.", + "enum": [ + "Invalid", + "Stateless", + "StatefulPrimary", + "StatefulSecondary" + ], + "x-ms-enum": { + "name": "ServiceEndpointRole", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service endpoint role is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Indicates that the service endpoint is of a stateless service. The value is 1." + }, + { + "value": "StatefulPrimary", + "description": "Indicates that the service endpoint is of a primary replica of a stateful service. The value is 2." + }, + { + "value": "StatefulSecondary", + "description": "Indicates that the service endpoint is of a secondary replica of a stateful service. The value is 3." + } + ] + } + }, + "ResolvedServiceEndpoint": { + "description": "Endpoint of a resolved service partition.", + "properties": { + "Kind": { + "$ref": "#/definitions/ServiceEndpointRole", + "description": "The role of the replica where the endpoint is reported." + }, + "Address": { + "type": "string", + "description": "The address of the endpoint. If the endpoint has multiple listeners the address is a JSON object with one property per listener with the value as the address of that listener." + } + } + }, + "ResolvedServicePartition": { + "description": "Information about a service partition and its associated endpoints.", + "required": [ + "Name", + "PartitionInformation", + "Endpoints", + "Version" + ], + "properties": { + "Name": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "A representation of the resolved partition." + }, + "Endpoints": { + "$ref": "#/definitions/ResolvedServiceEndpointList", + "description": "List of resolved service endpoints of a service partition." + }, + "Version": { + "type": "string", + "description": "The version of this resolved service partition result. This version should be passed in the next time the ResolveService call is made via the PreviousRspVersion query parameter." + } + } + }, + "ResolvedServiceEndpointList": { + "type": "array", + "items": { + "$ref": "#/definitions/ResolvedServiceEndpoint" + }, + "description": "List of resolved service endpoints of a service partition." + }, + "InvokeDataLossResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "InvokeQuorumLossResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "NodeResult": { + "description": "Contains information about a node that was targeted by a user-induced operation.", + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "NodeInstanceId": { + "type": "string", + "description": "The node instance id." + } + } + }, + "NodeTransitionProgress": { + "description": "Information about an NodeTransition operation. This class contains an OperationState and a NodeTransitionResult. The NodeTransitionResult is not valid until OperationState\nis Completed or Faulted.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "NodeTransitionResult": { + "$ref": "#/definitions/NodeTransitionResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "NodeTransitionResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "NodeResult": { + "$ref": "#/definitions/NodeResult", + "description": "Contains information about a node that was targeted by a user-induced operation." + } + } + }, + "OperationId": { + "type": "string", + "format": "uuid", + "description": "A GUID that identifies a call to this API. This is also passed into the corresponding GetProgress API." + }, + "OperationState": { + "type": "string", + "description": "The state of the operation.", + "enum": [ + "Invalid", + "Running", + "RollingBack", + "Completed", + "Faulted", + "Cancelled", + "ForceCancelled" + ], + "x-ms-enum": { + "name": "OperationState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The operation state is invalid." + }, + { + "value": "Running", + "description": "The operation is in progress." + }, + { + "value": "RollingBack", + "description": "The operation is rolling back internal system state because it encountered a fatal error or was cancelled by the user. \"RollingBack\" does not refer to user state. For example, if CancelOperation is called on a command of type PartitionDataLoss, state of \"RollingBack\" does not mean service data is being restored (assuming the command has progressed far enough to cause data loss). It means the system is rolling back/cleaning up internal system state associated with the command." + }, + { + "value": "Completed", + "description": "The operation has completed successfully and is no longer running." + }, + { + "value": "Faulted", + "description": "The operation has failed and is no longer running." + }, + { + "value": "Cancelled", + "description": "The operation was cancelled by the user using CancelOperation, and is no longer running." + }, + { + "value": "ForceCancelled", + "description": "The operation was cancelled by the user using CancelOperation, with the force parameter set to true. It is no longer running. Refer to CancelOperation for more details." + } + ] + } + }, + "OperationStatus": { + "description": "Contains the OperationId, OperationState, and OperationType for user-induced operations.", + "properties": { + "OperationId": { + "$ref": "#/definitions/OperationId", + "description": "A GUID that identifies a call to this API. This is also passed into the corresponding GetProgress API." + }, + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "Type": { + "$ref": "#/definitions/OperationType", + "description": "The type of the operation." + } + } + }, + "OperationStatusList": { + "type": "array", + "description": "A list of OperationStatus objects.", + "items": { + "$ref": "#/definitions/OperationStatus" + } + }, + "OperationType": { + "type": "string", + "description": "The type of the operation.", + "enum": [ + "Invalid", + "PartitionDataLoss", + "PartitionQuorumLoss", + "PartitionRestart", + "NodeTransition" + ], + "x-ms-enum": { + "name": "OperationType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The operation state is invalid." + }, + { + "value": "PartitionDataLoss", + "description": "An operation started using the StartDataLoss API." + }, + { + "value": "PartitionQuorumLoss", + "description": "An operation started using the StartQuorumLoss API." + }, + { + "value": "PartitionRestart", + "description": "An operation started using the StartPartitionRestart API." + }, + { + "value": "NodeTransition", + "description": "An operation started using the StartNodeTransition API." + } + ] + } + }, + "PartitionDataLossProgress": { + "description": "Information about a partition data loss user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "InvokeDataLossResult": { + "$ref": "#/definitions/InvokeDataLossResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "PartitionQuorumLossProgress": { + "description": "Information about a partition quorum loss user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "InvokeQuorumLossResult": { + "$ref": "#/definitions/InvokeQuorumLossResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "PartitionRestartProgress": { + "description": "Information about a partition restart user-induced operation.", + "properties": { + "State": { + "$ref": "#/definitions/OperationState", + "description": "The state of the operation." + }, + "RestartPartitionResult": { + "$ref": "#/definitions/RestartPartitionResult", + "description": "Represents information about an operation in a terminal state (Completed or Faulted)." + } + } + }, + "RestartPartitionResult": { + "description": "Represents information about an operation in a terminal state (Completed or Faulted).", + "properties": { + "ErrorCode": { + "type": "integer", + "format": "int32", + "description": "If OperationState is Completed, this is 0. If OperationState is Faulted, this is an error code indicating the reason." + }, + "SelectedPartition": { + "$ref": "#/definitions/SelectedPartition", + "description": "This class returns information about the partition that the user-induced operation acted upon." + } + } + }, + "SelectedPartition": { + "description": "This class returns information about the partition that the user-induced operation acted upon.", + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service the partition belongs to." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + } + }, + "DeployServicePackageToNodeDescription": { + "description": "Defines description for downloading packages associated with a service manifest to image cache on a Service Fabric node.", + "properties": { + "ServiceManifestName": { + "$ref": "#/definitions/ServiceManifestName", + "description": "The name of service manifest whose packages need to be downloaded." + }, + "ApplicationTypeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "PackageSharingPolicy": { + "$ref": "#/definitions/PackageSharingPolicyInfoList", + "description": "List of package sharing policy information." + } + }, + "required": [ + "ServiceManifestName", + "ApplicationTypeName", + "ApplicationTypeVersion", + "NodeName" + ] + }, + "PackageSharingPolicyInfo": { + "description": "Represents a policy for the package sharing.", + "properties": { + "SharedPackageName": { + "type": "string", + "description": "The name of code, configuration or data package that should be shared." + }, + "PackageSharingScope": { + "$ref": "#/definitions/PackageSharingPolicyScope", + "description": "Represents the scope for PackageSharingPolicy. This is specified during DeployServicePackageToNode operation." + } + } + }, + "PackageSharingPolicyInfoList": { + "type": "array", + "items": { + "$ref": "#/definitions/PackageSharingPolicyInfo" + }, + "description": "List of package sharing policy information." + }, + "PackageSharingPolicyScope": { + "type": "string", + "description": "Represents the scope for PackageSharingPolicy. This is specified during DeployServicePackageToNode operation.", + "enum": [ + "None", + "All", + "Code", + "Config", + "Data" + ], + "x-ms-enum": { + "name": "PackageSharingPolicyScope", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "No package sharing policy scope. The value is 0." + }, + { + "value": "All", + "description": "Share all code, config and data packages from corresponding service manifest. The value is 1." + }, + { + "value": "Code", + "description": "Share all code packages from corresponding service manifest. The value is 2." + }, + { + "value": "Config", + "description": "Share all config packages from corresponding service manifest. The value is 3." + }, + { + "value": "Data", + "description": "Share all data packages from corresponding service manifest. The value is 4." + } + ] + } + }, + "ResumeApplicationUpgradeDescription": { + "description": "Describes the parameters for resuming an unmonitored manual Service Fabric application upgrade", + "properties": { + "UpgradeDomainName": { + "type": "string", + "description": "The name of the upgrade domain in which to resume the upgrade." + } + }, + "required": [ + "UpgradeDomainName" + ] + }, + "ApplicationUpgradeUpdateDescription": { + "description": "Describes the parameters for updating an ongoing application upgrade.", + "properties": { + "Name": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + }, + "UpgradeKind": { + "$ref": "#/definitions/UpgradeKind", + "description": "The kind of upgrade out of the following possible values." + }, + "ApplicationHealthPolicy": { + "$ref": "#/definitions/ApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities." + }, + "UpdateDescription": { + "$ref": "#/definitions/RollingUpgradeUpdateDescription", + "description": "Describes the parameters for updating a rolling upgrade of application or cluster." + } + }, + "required": [ + "Name", + "UpgradeKind" + ] + }, + "RollingUpgradeUpdateDescription": { + "description": "Describes the parameters for updating a rolling upgrade of application or cluster.", + "properties": { + "RollingUpgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "ForceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "ReplicaSetCheckTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeReplicaSetCheckTimeout", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "FailureAction": { + "$ref": "#/definitions/FailureAction", + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations.\nInvalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically.\nManual indicates that the upgrade will switch to UnmonitoredManual upgrade mode." + }, + "HealthCheckWaitDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckStableDurationInMilliseconds": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "HealthCheckRetryTimeoutInMilliseconds": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "UpgradeDomainTimeoutInMilliseconds": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "InstanceCloseDelayDurationInSeconds": { + "$ref": "#/definitions/InstanceCloseDelayDurationInSeconds", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description." + } + }, + "required": [ + "RollingUpgradeMode" + ] + }, + "NameDescription": { + "description": "Describes a Service Fabric name.", + "properties": { + "Name": { + "$ref": "#/definitions/FabricName", + "description": "The Service Fabric name, including the 'fabric:' URI scheme." + } + }, + "required": [ + "Name" + ] + }, + "FabricName": { + "type": "string", + "description": "The Service Fabric name, including the 'fabric:' URI scheme." + }, + "PagedSubNameInfoList": { + "description": "A paged list of Service Fabric names. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "IsConsistent": { + "type": "boolean", + "description": "Indicates whether any name under the given name has been modified during the enumeration. If there was a modification, this property value is false." + }, + "SubNames": { + "type": "array", + "description": "List of the child names.", + "items": { + "$ref": "#/definitions/FabricName" + } + } + } + }, + "PropertyValueKind": { + "type": "string", + "description": "The kind of property, determined by the type of data. Following are the possible values.", + "enum": [ + "Invalid", + "Binary", + "Int64", + "Double", + "String", + "Guid" + ], + "x-ms-enum": { + "name": "PropertyValueKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Binary", + "description": "The data inside the property is a binary blob. The value is 1." + }, + { + "value": "Int64", + "description": "The data inside the property is an int64. The value is 2." + }, + { + "value": "Double", + "description": "The data inside the property is a double. The value is 3." + }, + { + "value": "String", + "description": "The data inside the property is a string. The value is 4." + }, + { + "value": "Guid", + "description": "The data inside the property is a guid. The value is 5." + } + ] + } + }, + "PropertyValue": { + "discriminator": "Kind", + "description": "Describes a Service Fabric property value.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyValueKind", + "description": "The kind of property, determined by the type of data. Following are the possible values." + } + }, + "required": [ + "Kind" + ] + }, + "BinaryPropertyValue": { + "description": "Describes a Service Fabric property value of type Binary.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Binary", + "required": [ + "Data" + ], + "properties": { + "Data": { + "$ref": "#/definitions/ByteArray", + "description": "Array of bytes to be sent as an integer array. Each element of array is a number between 0 and 255." + } + } + }, + "Int64PropertyValue": { + "description": "Describes a Service Fabric property value of type Int64.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Int64", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "description": "The data of the property value." + } + } + }, + "DoublePropertyValue": { + "description": "Describes a Service Fabric property value of type Double.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Double", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "number", + "format": "double", + "description": "The data of the property value." + } + } + }, + "StringPropertyValue": { + "description": "Describes a Service Fabric property value of type String.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "String", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "description": "The data of the property value." + } + } + }, + "GuidPropertyValue": { + "description": "Describes a Service Fabric property value of type Guid.", + "allOf": [ + { + "$ref": "#/definitions/PropertyValue" + } + ], + "x-ms-discriminator-value": "Guid", + "required": [ + "Data" + ], + "properties": { + "Data": { + "type": "string", + "format": "uuid", + "description": "The data of the property value." + } + } + }, + "PropertyInfo": { + "description": "Information about a Service Fabric property.", + "properties": { + "Name": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + }, + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + }, + "Metadata": { + "$ref": "#/definitions/PropertyMetadata", + "description": "The metadata associated with a property, including the property's name." + } + }, + "required": [ + "Name", + "Metadata" + ] + }, + "PagedPropertyInfoList": { + "description": "The paged list of Service Fabric properties under a given name. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "IsConsistent": { + "type": "boolean", + "description": "Indicates whether any property under the given name has been modified during the enumeration. If there was a modification, this property value is false." + }, + "Properties": { + "type": "array", + "description": "List of property information.", + "items": { + "$ref": "#/definitions/PropertyInfo" + } + } + } + }, + "PropertyDescription": { + "description": "Description of a Service Fabric property.", + "properties": { + "PropertyName": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + }, + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + } + }, + "required": [ + "PropertyName", + "Value" + ] + }, + "PropertyName": { + "type": "string", + "description": "The name of the Service Fabric property." + }, + "PropertyMetadata": { + "description": "The metadata associated with a property, including the property's name.", + "properties": { + "TypeId": { + "$ref": "#/definitions/PropertyValueKind", + "description": "The kind of property, determined by the type of data. Following are the possible values." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID." + }, + "Parent": { + "$ref": "#/definitions/FabricName", + "description": "The name of the parent Service Fabric Name for the property. It could be thought of as the name-space/table under which the property exists." + }, + "SizeInBytes": { + "type": "integer", + "description": "The length of the serialized property value." + }, + "LastModifiedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Represents when the Property was last modified. Only write operations will cause this field to be updated." + }, + "SequenceNumber": { + "type": "string", + "description": "The version of the property. Every time a property is modified, its sequence number is increased." + } + } + }, + "PropertyCustomTypeId": { + "type": "string", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + }, + "PropertyBatchDescriptionList": { + "description": "Describes a list of property batch operations to be executed. Either all or none of the operations will be committed.", + "properties": { + "Operations": { + "type": "array", + "items": { + "$ref": "#/definitions/PropertyBatchOperation" + }, + "description": "A list of the property batch operations to be executed." + } + } + }, + "PropertyBatchOperationKind": { + "type": "string", + "description": "The kind of property batch operation, determined by the operation to be performed. The following are the possible values.", + "enum": [ + "Invalid", + "Put", + "Get", + "CheckExists", + "CheckSequence", + "Delete", + "CheckValue" + ], + "x-ms-enum": { + "name": "PropertyBatchOperationKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property operation is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Put", + "description": "The operation will create or edit a property. The value is 1." + }, + { + "value": "Get", + "description": "The operation will get a property. The value is 2." + }, + { + "value": "CheckExists", + "description": "The operation will check that a property exists or doesn't exists, depending on the provided value. The value is 3." + }, + { + "value": "CheckSequence", + "description": "The operation will ensure that the sequence number is equal to the provided value. The value is 4." + }, + { + "value": "Delete", + "description": "The operation will delete a property. The value is 5." + }, + { + "value": "CheckValue", + "description": "The operation will ensure that the value of a property is equal to the provided value. The value is 7." + } + ] + } + }, + "PropertyBatchOperation": { + "discriminator": "Kind", + "description": "Represents the base type for property operations that can be put into a batch and submitted.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyBatchOperationKind", + "description": "The kind of property batch operation, determined by the operation to be performed. The following are the possible values." + }, + "PropertyName": { + "$ref": "#/definitions/PropertyName", + "description": "The name of the Service Fabric property." + } + }, + "required": [ + "Kind", + "PropertyName" + ] + }, + "CheckExistsPropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that compares the Boolean existence of a property with the Exists argument.\nThe PropertyBatchOperation operation fails if the property's existence is not equal to the Exists argument.\nThe CheckExistsPropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckExists", + "properties": { + "Exists": { + "type": "boolean", + "description": "Whether or not the property should exist for the operation to pass." + } + }, + "required": [ + "Exists" + ] + }, + "CheckSequencePropertyBatchOperation": { + "description": "Compares the Sequence Number of a property with the SequenceNumber argument.\nA property's sequence number can be thought of as that property's version.\nEvery time the property is modified, its sequence number is increased.\nThe sequence number can be found in a property's metadata.\nThe comparison fails if the sequence numbers are not equal.\nCheckSequencePropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckSequence", + "properties": { + "SequenceNumber": { + "type": "string", + "description": "The expected sequence number." + } + }, + "required": [ + "SequenceNumber" + ] + }, + "CheckValuePropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that compares the value of the property with the expected value.\nThe CheckValuePropertyBatchOperation is generally used as a precondition for the write operations in the batch.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "CheckValue", + "properties": { + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "The expected property value." + } + }, + "required": [ + "Value" + ] + }, + "DeletePropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that deletes a specified property if it exists.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Delete" + }, + "GetPropertyBatchOperation": { + "description": "Represents a PropertyBatchOperation that gets the specified property if it exists.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Get", + "properties": { + "IncludeValue": { + "type": "boolean", + "default": false, + "description": "Whether or not to return the property value with the metadata.\nTrue if values should be returned with the metadata; False to return only property metadata." + } + } + }, + "PutPropertyBatchOperation": { + "description": "Puts the specified property under the specified name.\nNote that if one PropertyBatchOperation in a PropertyBatch fails,\nthe entire batch fails and cannot be committed in a transactional manner.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchOperation" + } + ], + "x-ms-discriminator-value": "Put", + "properties": { + "Value": { + "$ref": "#/definitions/PropertyValue", + "description": "Describes a Service Fabric property value." + }, + "CustomTypeId": { + "$ref": "#/definitions/PropertyCustomTypeId", + "description": "The property's custom type ID. Using this property, the user is able to tag the type of the value of the property." + } + }, + "required": [ + "Value" + ] + }, + "PropertyBatchInfoKind": { + "type": "string", + "description": "The kind of property batch info, determined by the results of a property batch. The following are the possible values.", + "enum": [ + "Invalid", + "Successful", + "Failed" + ], + "x-ms-enum": { + "name": "PropertyBatchInfoKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the property batch info is invalid. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Successful", + "description": "The property batch succeeded." + }, + { + "value": "Failed", + "description": "The property batch failed." + } + ] + } + }, + "PropertyBatchInfo": { + "discriminator": "Kind", + "description": "Information about the results of a property batch.", + "properties": { + "Kind": { + "$ref": "#/definitions/PropertyBatchInfoKind", + "description": "The kind of property batch info, determined by the results of a property batch. The following are the possible values." + } + }, + "required": [ + "Kind" + ] + }, + "SuccessfulPropertyBatchInfo": { + "description": "Derived from PropertyBatchInfo. Represents the property batch succeeding. Contains the results of any \"Get\" operations in the batch.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchInfo" + } + ], + "x-ms-discriminator-value": "Successful", + "properties": { + "Properties": { + "additionalProperties": { + "$ref": "#/definitions/PropertyInfo" + }, + "description": "A map containing the properties that were requested through any \"Get\" property batch operations. The key represents the index of the \"Get\" operation in the original request, in string form. The value is the property. If a property is not found, it will not be in the map." + } + } + }, + "FailedPropertyBatchInfo": { + "description": "Derived from PropertyBatchInfo. Represents the property batch failing. Contains information about the specific batch failure.", + "allOf": [ + { + "$ref": "#/definitions/PropertyBatchInfo" + } + ], + "x-ms-discriminator-value": "Failed", + "properties": { + "ErrorMessage": { + "type": "string", + "description": "The error message of the failed operation. Describes the exception thrown due to the first unsuccessful operation in the property batch." + }, + "OperationIndex": { + "type": "integer", + "description": "The index of the unsuccessful operation in the property batch." + } + } + }, + "EntityKind": { + "type": "string", + "description": "The entity type of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc.", + "enum": [ + "Invalid", + "Node", + "Partition", + "Service", + "Application", + "Replica", + "DeployedApplication", + "DeployedServicePackage", + "Cluster" + ], + "x-ms-enum": { + "name": "EntityKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid entity kind. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Node", + "description": "Indicates the entity is a Service Fabric node. The value is 1." + }, + { + "value": "Partition", + "description": "Indicates the entity is a Service Fabric partition. The value is 2." + }, + { + "value": "Service", + "description": "Indicates the entity is a Service Fabric service. The value is 3." + }, + { + "value": "Application", + "description": "Indicates the entity is a Service Fabric application. The value is 4." + }, + { + "value": "Replica", + "description": "Indicates the entity is a Service Fabric replica. The value is 5." + }, + { + "value": "DeployedApplication", + "description": "Indicates the entity is a Service Fabric deployed application. The value is 6." + }, + { + "value": "DeployedServicePackage", + "description": "Indicates the entity is a Service Fabric deployed service package. The value is 7." + }, + { + "value": "Cluster", + "description": "Indicates the entity is a Service Fabric cluster. The value is 8." + } + ] + } + }, + "HealthStateCount": { + "description": "Represents information about how many health entities are in Ok, Warning and Error health state.", + "properties": { + "OkCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Ok.", + "minimum": 0 + }, + "WarningCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Warning.", + "minimum": 0 + }, + "ErrorCount": { + "type": "integer", + "format": "int64", + "description": "The number of health entities with aggregated health state Error.", + "minimum": 0 + } + } + }, + "EntityKindHealthStateCount": { + "description": "Represents health state count for entities of the specified entity kind.", + "properties": { + "EntityKind": { + "$ref": "#/definitions/EntityKind", + "description": "The entity kind for which health states are evaluated." + }, + "HealthStateCount": { + "$ref": "#/definitions/HealthStateCount", + "description": "The health state count for the entities of the specified kind." + } + } + }, + "HealthStatistics": { + "description": "The health statistics of an entity, returned as part of the health query result when the query description is configured to include statistics.\nThe statistics include health state counts for all children types of the current entity.\nFor example, for cluster, the health statistics include health state counts for nodes, applications, services, partitions, replicas, deployed applications and deployed service packages.\nFor partition, the health statistics include health counts for replicas.", + "properties": { + "HealthStateCountList": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityKindHealthStateCount" + }, + "description": "List of health state counts per entity kind, which keeps track of how many children of the queried entity are in Ok, Warning and Error state." + } + } + }, + "BackupPolicyDescription": { + "description": "Describes a backup policy for configuring periodic backup.", + "required": [ + "Name", + "AutoRestoreOnDataLoss", + "Schedule", + "MaxIncrementalBackups", + "Storage" + ], + "properties": { + "Name": { + "type": "string", + "description": "The unique name identifying this backup policy." + }, + "AutoRestoreOnDataLoss": { + "type": "boolean", + "description": "Specifies whether to trigger restore automatically using the latest available backup in case the partition experiences a data loss event." + }, + "MaxIncrementalBackups": { + "type": "integer", + "minimum": 0, + "maximum": 255, + "description": "Defines the maximum number of incremental backups to be taken between two full backups. This is just the upper limit. A full backup may be taken before specified number of incremental backups are completed in one of the following conditions\n- The replica has never taken a full backup since it has become primary,\n- Some of the log records since the last backup has been truncated, or\n- Replica passed the MaxAccumulatedBackupLogSizeInMB limit." + }, + "Schedule": { + "$ref": "#/definitions/BackupScheduleDescription", + "description": "Describes the backup schedule parameters." + }, + "Storage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Describes the details of backup storage where to store the periodic backups." + }, + "RetentionPolicy": { + "$ref": "#/definitions/RetentionPolicyDescription", + "description": "Describes the policy to retain backups in storage." + } + } + }, + "PagedBackupPolicyDescriptionList": { + "description": "The list of backup policies configured in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "The list of backup policies information.", + "items": { + "$ref": "#/definitions/BackupPolicyDescription" + } + } + } + }, + "BasicRetentionPolicyDescription": { + "description": "Describes basic retention policy.", + "allOf": [ + { + "$ref": "#/definitions/RetentionPolicyDescription" + } + ], + "x-ms-discriminator-value": "Basic", + "required": [ + "RetentionDuration" + ], + "properties": { + "RetentionDuration": { + "type": "string", + "format": "duration", + "description": "It is the minimum duration for which a backup created, will remain stored in the storage and might get deleted after that span of time. It should be specified in ISO8601 format." + }, + "MinimumNumberOfBackups": { + "type": "integer", + "minimum": 0, + "description": "It is the minimum number of backups to be retained at any point of time. If specified with a non zero value, backups will not be deleted even if the backups have gone past retention duration and have number of backups less than or equal to it." + } + } + }, + "RetentionPolicyType": { + "type": "string", + "description": "The type of retention policy. Currently only \"Basic\" retention policy is supported.", + "enum": [ + "Basic", + "Invalid" + ], + "x-ms-enum": { + "name": "RetentionPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Indicates a basic retention policy type." + }, + { + "value": "Invalid", + "description": "Indicates an invalid retention policy type." + } + ] + } + }, + "DisableBackupDescription": { + "description": "It describes the body parameters while disabling backup of a backup entity(Application/Service/Partition).", + "required": [ + "CleanBackup" + ], + "properties": { + "CleanBackup": { + "type": "boolean", + "description": "Boolean flag to delete backups. It can be set to true for deleting all the backups which were created for the backup entity that is getting disabled for backup." + } + } + }, + "RetentionPolicyDescription": { + "description": "Describes the retention policy configured.", + "required": [ + "RetentionPolicyType" + ], + "discriminator": "RetentionPolicyType", + "properties": { + "RetentionPolicyType": { + "$ref": "#/definitions/RetentionPolicyType", + "description": "The type of retention policy. Currently only \"Basic\" retention policy is supported." + } + } + }, + "BackupStorageDescription": { + "required": [ + "StorageKind" + ], + "discriminator": "StorageKind", + "properties": { + "StorageKind": { + "$ref": "#/definitions/BackupStorageKind", + "description": "The kind of backup storage, where backups are saved." + }, + "FriendlyName": { + "type": "string", + "description": "Friendly name for this backup storage." + } + }, + "description": "Describes the parameters for the backup storage." + }, + "BackupStorageKind": { + "type": "string", + "description": "The kind of backup storage, where backups are saved.", + "enum": [ + "Invalid", + "FileShare", + "AzureBlobStore" + ], + "x-ms-enum": { + "name": "BackupStorageKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup storage kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "FileShare", + "description": "Indicates file/ SMB share to be used as backup storage." + }, + { + "value": "AzureBlobStore", + "description": "Indicates Azure blob store to be used as backup storage." + } + ] + } + }, + "BackupScheduleDescription": { + "description": "Describes the backup schedule parameters.", + "required": [ + "ScheduleKind" + ], + "discriminator": "ScheduleKind", + "properties": { + "ScheduleKind": { + "$ref": "#/definitions/BackupScheduleKind", + "description": "The kind of backup schedule, time based or frequency based." + } + } + }, + "BackupScheduleKind": { + "type": "string", + "description": "The kind of backup schedule, time based or frequency based.", + "enum": [ + "Invalid", + "TimeBased", + "FrequencyBased" + ], + "x-ms-enum": { + "name": "BackupScheduleKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup schedule kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "TimeBased", + "description": "Indicates a time-based backup schedule." + }, + { + "value": "FrequencyBased", + "description": "Indicates a frequency-based backup schedule." + } + ] + } + }, + "ApplicationBackupConfigurationInfo": { + "description": "Backup configuration information for a specific Service Fabric application specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Application" + }, + "ServiceBackupConfigurationInfo": { + "description": "Backup configuration information for a specific Service Fabric service specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Service" + }, + "PagedBackupConfigurationInfoList": { + "description": "The list of backup configuration information. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup configuration information.", + "items": { + "$ref": "#/definitions/BackupConfigurationInfo" + } + } + } + }, + "BackupPolicyScope": { + "type": "string", + "description": "Specifies the scope at which the backup policy is applied.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupPolicyScope", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup policy scope type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the backup policy is applied at partition level. Hence overriding any policy which may have applied at partition's service or application level." + }, + { + "value": "Service", + "description": "Indicates the backup policy is applied at service level. All partitions of the service inherit this policy unless explicitly overridden at partition level." + }, + { + "value": "Application", + "description": "Indicates the backup policy is applied at application level. All services and partitions of the application inherit this policy unless explicitly overridden at service or partition level." + } + ] + } + }, + "BackupSuspensionScope": { + "type": "string", + "description": "Specifies the scope at which the backup suspension was applied.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupSuspensionScope", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup suspension scope type also indicating entity is not suspended. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the backup suspension is applied at partition level." + }, + { + "value": "Service", + "description": "Indicates the backup suspension is applied at service level. All partitions of the service are hence suspended for backup." + }, + { + "value": "Application", + "description": "Indicates the backup suspension is applied at application level. All services and partitions of the application are hence suspended for backup." + } + ] + } + }, + "RestorePartitionDescription": { + "description": "Specifies the parameters needed to trigger a restore of a specific partition.", + "required": [ + "BackupId", + "BackupLocation" + ], + "properties": { + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique backup ID." + }, + "BackupLocation": { + "type": "string", + "description": "Location of the backup relative to the backup storage specified/ configured." + }, + "BackupStorage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Location of the backup from where the partition will be restored." + } + } + }, + "RestoreProgressInfo": { + "description": "Describes the progress of a restore operation on a partition.", + "properties": { + "RestoreState": { + "$ref": "#/definitions/RestoreState", + "description": "Represents the current state of the partition restore operation." + }, + "TimeStampUtc": { + "type": "string", + "format": "date-time", + "description": "Timestamp when operation succeeded or failed." + }, + "RestoredEpoch": { + "$ref": "#/definitions/Epoch", + "description": "Describes the epoch at which the partition is restored." + }, + "RestoredLsn": { + "type": "string", + "description": "Restored LSN." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in performing restore operation." + } + } + }, + "RestoreState": { + "type": "string", + "description": "Represents the current state of the partition restore operation.", + "enum": [ + "Invalid", + "Accepted", + "RestoreInProgress", + "Success", + "Failure", + "Timeout" + ], + "x-ms-enum": { + "name": "RestoreState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid restore state. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Accepted", + "description": "Operation has been validated and accepted. Restore is yet to be triggered." + }, + { + "value": "RestoreInProgress", + "description": "Restore operation has been triggered and is under process." + }, + { + "value": "Success", + "description": "Operation completed with success." + }, + { + "value": "Failure", + "description": "Operation completed with failure." + }, + { + "value": "Timeout", + "description": "Operation timed out." + } + ] + } + }, + "BackupPartitionDescription": { + "description": "Describes the parameters for triggering partition's backup.", + "properties": { + "BackupStorage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Specifies the details of the backup storage where to save the backup." + } + } + }, + "BackupInfo": { + "description": "Represents a backup point which can be used to trigger a restore.", + "properties": { + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique backup ID ." + }, + "BackupChainId": { + "type": "string", + "format": "uuid", + "description": "Unique backup chain ID. All backups part of the same chain has the same backup chain id. A backup chain is comprised of 1 full backup and multiple incremental backups." + }, + "ApplicationName": { + "type": "string", + "description": "Name of the Service Fabric application this partition backup belongs to." + }, + "ServiceName": { + "type": "string", + "description": "Name of the Service Fabric service this partition backup belongs to." + }, + "PartitionInformation": { + "$ref": "#/definitions/PartitionInformation", + "description": "Information about the partition to which this backup belongs to" + }, + "BackupLocation": { + "type": "string", + "description": "Location of the backup, relative to the backup store." + }, + "BackupType": { + "$ref": "#/definitions/BackupType", + "description": "Describes the type of backup, whether its full or incremental." + }, + "EpochOfLastBackupRecord": { + "$ref": "#/definitions/Epoch", + "description": "Epoch of the last record in this backup." + }, + "LsnOfLastBackupRecord": { + "type": "string", + "description": "LSN of the last record in this backup." + }, + "CreationTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The date time when this backup was taken." + }, + "ServiceManifestVersion": { + "type": "string", + "description": "Manifest Version of the service this partition backup belongs to." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in getting backup point information." + } + } + }, + "PagedBackupInfoList": { + "description": "The list of backups. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup information.", + "items": { + "$ref": "#/definitions/BackupInfo" + } + } + } + }, + "BackupType": { + "type": "string", + "description": "Describes the type of backup, whether its full or incremental.", + "enum": [ + "Invalid", + "Full", + "Incremental" + ], + "x-ms-enum": { + "name": "BackupType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Full", + "description": "Indicates a full backup." + }, + { + "value": "Incremental", + "description": "Indicates an incremental backup. A backup chain is comprised of a full backup followed by 0 or more incremental backups." + } + ] + } + }, + "AzureBlobBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "AzureBlobStore", + "required": [ + "ConnectionString", + "ContainerName" + ], + "properties": { + "ConnectionString": { + "type": "string", + "description": "The connection string to connect to the Azure blob store." + }, + "ContainerName": { + "type": "string", + "description": "The name of the container in the blob store to store and enumerate backups from." + } + }, + "description": "Describes the parameters for Azure blob store used for storing and enumerating backups." + }, + "FileShareBackupStorageDescription": { + "allOf": [ + { + "$ref": "#/definitions/BackupStorageDescription" + } + ], + "x-ms-discriminator-value": "FileShare", + "required": [ + "Path" + ], + "description": "Describes the parameters for file share storage used for storing or enumerating backups.", + "properties": { + "Path": { + "type": "string", + "description": "UNC path of the file share where to store or enumerate backups from." + }, + "PrimaryUserName": { + "type": "string", + "description": "Primary user name to access the file share." + }, + "PrimaryPassword": { + "type": "string", + "description": "Primary password to access the share location." + }, + "SecondaryUserName": { + "type": "string", + "description": "Secondary user name to access the file share." + }, + "SecondaryPassword": { + "type": "string", + "description": "Secondary password to access the share location" + } + } + }, + "FrequencyBasedBackupScheduleDescription": { + "description": "Describes the frequency based backup schedule.", + "allOf": [ + { + "$ref": "#/definitions/BackupScheduleDescription" + } + ], + "x-ms-discriminator-value": "FrequencyBased", + "required": [ + "Interval" + ], + "properties": { + "Interval": { + "type": "string", + "format": "duration", + "description": "Defines the interval with which backups are periodically taken. It should be specified in ISO8601 format. Timespan in seconds is not supported and will be ignored while creating the policy." + } + } + }, + "TimeBasedBackupScheduleDescription": { + "description": "Describes the time based backup schedule.", + "allOf": [ + { + "$ref": "#/definitions/BackupScheduleDescription" + } + ], + "x-ms-discriminator-value": "TimeBased", + "required": [ + "ScheduleFrequencyType", + "RunTimes" + ], + "properties": { + "ScheduleFrequencyType": { + "$ref": "#/definitions/BackupScheduleFrequencyType", + "description": "Describes the frequency with which to run the time based backup schedule." + }, + "RunDays": { + "$ref": "#/definitions/DayOfWeekList", + "description": "List of days of a week when to trigger the periodic backup. This is valid only when the backup schedule frequency type is weekly." + }, + "RunTimes": { + "$ref": "#/definitions/TimeList", + "description": "Represents the list of exact time during the day in ISO8601 format. Like '19:00:00' will represent '7PM' during the day. Date specified along with time will be ignored." + } + } + }, + "BackupScheduleFrequencyType": { + "type": "string", + "description": "Describes the frequency with which to run the time based backup schedule.", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ], + "x-ms-enum": { + "name": "BackupScheduleFrequencyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup schedule frequency type. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Daily", + "description": "Indicates that the time based backup schedule is repeated at a daily frequency." + }, + { + "value": "Weekly", + "description": "Indicates that the time based backup schedule is repeated at a weekly frequency." + } + ] + } + }, + "TimeList": { + "type": "array", + "items": { + "type": "string", + "format": "date-time" + }, + "description": "Represents the list of exact time during the day in ISO8601 format. Like '19:00:00' will represent '7PM' during the day. Date specified along with time will be ignored." + }, + "DayOfWeekList": { + "type": "array", + "items": { + "$ref": "#/definitions/DayOfWeek" + }, + "description": "List of days of a week when to trigger the periodic backup. This is valid only when the backup schedule frequency type is weekly." + }, + "DayOfWeek": { + "type": "string", + "description": "Describes the days in a week.", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true, + "values": [ + { + "value": "Sunday", + "description": "Indicates the Day referred is Sunday." + }, + { + "value": "Monday", + "description": "Indicates the Day referred is Monday." + }, + { + "value": "Tuesday", + "description": "Indicates the Day referred is Tuesday." + }, + { + "value": "Wednesday", + "description": "Indicates the Day referred is Wednesday." + }, + { + "value": "Thursday", + "description": "Indicates the Day referred is Thursday." + }, + { + "value": "Friday", + "description": "Indicates the Day referred is Friday." + }, + { + "value": "Saturday", + "description": "Indicates the Day referred is Saturday." + } + ] + } + }, + "BackupProgressInfo": { + "description": "Describes the progress of a partition's backup.", + "properties": { + "BackupState": { + "$ref": "#/definitions/BackupState", + "description": "Represents the current state of the partition backup operation." + }, + "TimeStampUtc": { + "type": "string", + "format": "date-time", + "description": "TimeStamp in UTC when operation succeeded or failed." + }, + "BackupId": { + "type": "string", + "format": "uuid", + "description": "Unique ID of the newly created backup." + }, + "BackupLocation": { + "type": "string", + "description": "Location, relative to the backup store, of the newly created backup." + }, + "EpochOfLastBackupRecord": { + "$ref": "#/definitions/Epoch", + "description": "Specifies the epoch of the last record included in backup." + }, + "LsnOfLastBackupRecord": { + "type": "string", + "description": "The LSN of last record included in backup." + }, + "FailureError": { + "$ref": "#/definitions/FabricErrorError", + "description": "Denotes the failure encountered in performing backup operation." + } + } + }, + "BackupConfigurationInfo": { + "discriminator": "Kind", + "description": "Describes the backup configuration information.", + "properties": { + "Kind": { + "$ref": "#/definitions/BackupEntityKind", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled." + }, + "PolicyName": { + "description": "The name of the backup policy which is applicable to this Service Fabric application or service or partition.", + "type": "string" + }, + "PolicyInheritedFrom": { + "$ref": "#/definitions/BackupPolicyScope", + "description": "Specifies the scope at which the backup policy is applied." + }, + "SuspensionInfo": { + "$ref": "#/definitions/BackupSuspensionInfo", + "description": "Describes the backup suspension details." + } + }, + "required": [ + "Kind" + ] + }, + "PartitionBackupConfigurationInfo": { + "description": "Backup configuration information, for a specific partition, specifying what backup policy is being applied and suspend description, if any.", + "allOf": [ + { + "$ref": "#/definitions/BackupConfigurationInfo" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The partition ID identifying the partition." + } + }, + "x-ms-discriminator-value": "Partition" + }, + "BackupState": { + "type": "string", + "description": "Represents the current state of the partition backup operation.", + "enum": [ + "Invalid", + "Accepted", + "BackupInProgress", + "Success", + "Failure", + "Timeout" + ], + "x-ms-enum": { + "name": "BackupState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid backup state. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Accepted", + "description": "Operation has been validated and accepted. Backup is yet to be triggered." + }, + { + "value": "BackupInProgress", + "description": "Backup operation has been triggered and is under process." + }, + { + "value": "Success", + "description": "Operation completed with success." + }, + { + "value": "Failure", + "description": "Operation completed with failure." + }, + { + "value": "Timeout", + "description": "Operation timed out." + } + ] + } + }, + "BackupEntity": { + "discriminator": "EntityKind", + "description": "Describes the Service Fabric entity that is configured for backup.", + "properties": { + "EntityKind": { + "$ref": "#/definitions/BackupEntityKind", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled." + } + }, + "required": [ + "EntityKind" + ] + }, + "ApplicationBackupEntity": { + "description": "Identifies the Service Fabric application which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ApplicationName": { + "$ref": "#/definitions/ApplicationName", + "description": "The name of the application, including the 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Application" + }, + "ServiceBackupEntity": { + "description": "Identifies the Service Fabric stateful service which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + } + }, + "x-ms-discriminator-value": "Service" + }, + "PartitionBackupEntity": { + "description": "Identifies the Service Fabric stateful partition which is being backed up.", + "allOf": [ + { + "$ref": "#/definitions/BackupEntity" + } + ], + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The partition ID identifying the partition." + } + }, + "x-ms-discriminator-value": "Partition" + }, + "EnableBackupDescription": { + "description": "Specifies the parameters needed to enable periodic backup.", + "required": [ + "BackupPolicyName" + ], + "properties": { + "BackupPolicyName": { + "type": "string", + "description": "Name of the backup policy to be used for enabling periodic backups." + } + } + }, + "PagedBackupEntityList": { + "description": "The list of backup entities that are being periodically backed. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of backup entity information.", + "items": { + "$ref": "#/definitions/BackupEntity" + } + } + } + }, + "BackupSuspensionInfo": { + "description": "Describes the backup suspension details.", + "properties": { + "IsSuspended": { + "type": "boolean", + "description": "Indicates whether periodic backup is suspended at this level or not." + }, + "SuspensionInheritedFrom": { + "$ref": "#/definitions/BackupSuspensionScope", + "description": "Specifies the scope at which the backup suspension was applied." + } + } + }, + "BackupEntityKind": { + "type": "string", + "description": "The entity type of a Service Fabric entity such as Application, Service or a Partition where periodic backups can be enabled.", + "enum": [ + "Invalid", + "Partition", + "Service", + "Application" + ], + "x-ms-enum": { + "name": "BackupEntityKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid entity kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "Partition", + "description": "Indicates the entity is a Service Fabric partition." + }, + { + "value": "Service", + "description": "Indicates the entity is a Service Fabric service." + }, + { + "value": "Application", + "description": "Indicates the entity is a Service Fabric application." + } + ] + } + }, + "GetBackupByStorageQueryDescription": { + "description": "Describes additional filters to be applied, while listing backups, and backup storage details from where to fetch the backups.", + "required": [ + "Storage", + "BackupEntity" + ], + "properties": { + "StartDateTimeFilter": { + "type": "string", + "format": "date-time", + "description": "Specifies the start date time in ISO8601 from which to enumerate backups. If not specified, backups are enumerated from the beginning." + }, + "EndDateTimeFilter": { + "type": "string", + "format": "date-time", + "description": "Specifies the end date time in ISO8601 till which to enumerate backups. If not specified, backups are enumerated till the end." + }, + "Latest": { + "type": "boolean", + "default": false, + "description": "If specified as true, gets the most recent backup (within the specified time range) for every partition under the specified backup entity." + }, + "Storage": { + "$ref": "#/definitions/BackupStorageDescription", + "description": "Describes the parameters for the backup storage from where to enumerate backups. This is optional and by default backups are enumerated from the backup storage where this backup entity is currently being backed up (as specified in backup policy). This parameter is useful to be able to enumerate backups from another cluster where you may intend to restore." + }, + "BackupEntity": { + "$ref": "#/definitions/BackupEntity", + "description": "Indicates the entity for which to enumerate backups." + } + } + }, + "NodeImpact": { + "description": "Describes the expected impact of a repair to a particular node.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "NodeName": { + "type": "string", + "description": "The name of the impacted node." + }, + "ImpactLevel": { + "type": "string", + "enum": [ + "Invalid", + "None", + "Restart", + "RemoveData", + "RemoveNode" + ], + "description": "The level of impact expected.", + "x-ms-enum": { + "name": "ImpactLevel", + "modelAsString": true, + "values": [ + { + "value": "Invalid" + }, + { + "value": "None" + }, + { + "value": "Restart" + }, + { + "value": "RemoveData" + }, + { + "value": "RemoveNode" + } + ] + } + } + }, + "required": [ + "NodeName" + ] + }, + "NodeRepairImpactDescription": { + "description": "Describes the expected impact of a repair on a set of nodes.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "x-ms-discriminator-value": "Node", + "allOf": [ + { + "$ref": "#/definitions/RepairImpactDescriptionBase" + } + ], + "properties": { + "NodeImpactList": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeImpact" + }, + "description": "The list of nodes impacted by a repair action and their respective expected impact." + } + } + }, + "NodeRepairTargetDescription": { + "description": "Describes the list of nodes targeted by a repair action.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "x-ms-discriminator-value": "Node", + "allOf": [ + { + "$ref": "#/definitions/RepairTargetDescriptionBase" + } + ], + "properties": { + "NodeNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of nodes targeted by a repair action." + } + } + }, + "RepairImpactDescriptionBase": { + "discriminator": "Kind", + "description": "Describes the expected impact of executing a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Kind": { + "$ref": "#/definitions/RepairImpactKind", + "description": "The kind of repair impact represented by the current object." + } + }, + "required": [ + "Kind" + ] + }, + "RepairImpactKind": { + "description": "Specifies the kind of the impact. This type supports the Service Fabric platform; it is not meant to be used directly from your code.'", + "type": "string", + "enum": [ + "Invalid", + "Node" + ], + "x-ms-enum": { + "name": "RepairImpactKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The repair impact is not valid or is of an unknown type." + }, + { + "value": "Node", + "description": "The repair impact affects a set of Service Fabric nodes." + } + ] + } + }, + "RepairTargetDescriptionBase": { + "discriminator": "Kind", + "description": "Describes the entities targeted by a repair action.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Kind": { + "$ref": "#/definitions/RepairTargetKind", + "description": "The kind of repair target described by the current object." + } + }, + "required": [ + "Kind" + ] + }, + "RepairTargetKind": { + "description": "Specifies the kind of the repair target. This type supports the Service Fabric platform; it is not meant to be used directly from your code.'", + "type": "string", + "enum": [ + "Invalid", + "Node" + ], + "x-ms-enum": { + "name": "RepairTargetKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "The repair target is not valid or is of an unknown type." + }, + { + "value": "Node", + "description": "The repair target is a set of Service Fabric nodes." + } + ] + } + }, + "RepairTask": { + "description": "Represents a repair task, which includes information about what kind of repair was requested, what its progress is, and what its final result was.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The version of the repair task.\nWhen creating a new repair task, the version must be set to zero. When updating a repair task,\nthe version is used for optimistic concurrency checks. If the version is\nset to zero, the update will not check for write conflicts. If the version is set to a non-zero value, then the\nupdate will only succeed if the actual current version of the repair task matches this value." + }, + "Description": { + "type": "string", + "description": "A description of the purpose of the repair task, or other informational details.\nMay be set when the repair task is created, and is immutable once set." + }, + "State": { + "type": "string", + "enum": [ + "Invalid", + "Created", + "Claimed", + "Preparing", + "Approved", + "Executing", + "Restoring", + "Completed" + ], + "description": "The workflow state of the repair task. Valid initial states are Created, Claimed, and Preparing.", + "x-ms-enum": { + "name": "State", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the repair task state is invalid. All Service Fabric enumerations have the invalid value." + }, + { + "value": "Created", + "description": "Indicates that the repair task has been created." + }, + { + "value": "Claimed", + "description": "Indicates that the repair task has been claimed by a repair executor." + }, + { + "value": "Preparing", + "description": "Indicates that the Repair Manager is preparing the system to handle the impact of the repair task, usually by taking resources offline gracefully." + }, + { + "value": "Approved", + "description": "Indicates that the repair task has been approved by the Repair Manager and is safe to execute." + }, + { + "value": "Executing", + "description": "Indicates that execution of the repair task is in progress." + }, + { + "value": "Restoring", + "description": "Indicates that the Repair Manager is restoring the system to its pre-repair state, usually by bringing resources back online." + }, + { + "value": "Completed", + "description": "Indicates that the repair task has completed, and no further state changes will occur." + } + ] + } + }, + "Flags": { + "type": "integer", + "description": "A bitwise-OR of the following values, which gives additional details about the status of the repair task.\n- 1 - Cancellation of the repair has been requested\n- 2 - Abort of the repair has been requested\n- 4 - Approval of the repair was forced via client request" + }, + "Action": { + "type": "string", + "description": "The requested repair action. Must be specified when the repair task is created, and is immutable once set." + }, + "Target": { + "$ref": "#/definitions/RepairTargetDescriptionBase", + "description": "The target object determines what actions the system will take to prepare for the impact of the repair, prior to approving execution of the repair.\nMay be set when the repair task is created, and is immutable once set." + }, + "Executor": { + "type": "string", + "description": "The name of the repair executor. Must be specified in Claimed and later states, and is immutable once set." + }, + "ExecutorData": { + "type": "string", + "description": "A data string that the repair executor can use to store its internal state." + }, + "Impact": { + "$ref": "#/definitions/RepairImpactDescriptionBase", + "description": "The impact object determines what actions the system will take to prepare for the impact of the repair, prior to approving execution of the repair.\nImpact must be specified by the repair executor when transitioning to the Preparing state, and is immutable once set." + }, + "ResultStatus": { + "type": "string", + "enum": [ + "Invalid", + "Succeeded", + "Cancelled", + "Interrupted", + "Failed", + "Pending" + ], + "description": "A value describing the overall result of the repair task execution. Must be specified in the Restoring and later states, and is immutable once set.", + "x-ms-enum": { + "name": "ResultStatus", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates that the repair task result is invalid. All Service Fabric enumerations have the invalid value." + }, + { + "value": "Succeeded", + "description": "Indicates that the repair task completed execution successfully." + }, + { + "value": "Cancelled", + "description": "Indicates that the repair task was cancelled prior to execution." + }, + { + "value": "Interrupted", + "description": "Indicates that execution of the repair task was interrupted by a cancellation request after some work had already been performed." + }, + { + "value": "Failed", + "description": "Indicates that there was a failure during execution of the repair task. Some work may have been performed." + }, + { + "value": "Pending", + "description": "Indicates that the repair task result is not yet available, because the repair task has not finished executing." + } + ] + } + }, + "ResultCode": { + "type": "integer", + "description": "A numeric value providing additional details about the result of the repair task execution.\nMay be specified in the Restoring and later states, and is immutable once set." + }, + "ResultDetails": { + "type": "string", + "description": "A string providing additional details about the result of the repair task execution.\nMay be specified in the Restoring and later states, and is immutable once set." + }, + "History": { + "$ref": "#/definitions/RepairTaskHistory", + "description": "An object that contains timestamps of the repair task's state transitions.\nThese timestamps are updated by the system, and cannot be directly modified." + }, + "PreparingHealthCheckState": { + "$ref": "#/definitions/RepairTaskHealthCheckState", + "description": "The workflow state of the health check when the repair task is in the Preparing state." + }, + "RestoringHealthCheckState": { + "$ref": "#/definitions/RepairTaskHealthCheckState", + "description": "The workflow state of the health check when the repair task is in the Restoring state." + }, + "PerformPreparingHealthCheck": { + "type": "boolean", + "description": "A value to determine if health checks will be performed when the repair task enters the Preparing state." + }, + "PerformRestoringHealthCheck": { + "type": "boolean", + "description": "A value to determine if health checks will be performed when the repair task enters the Restoring state." + } + }, + "required": [ + "TaskId", + "Action", + "State" + ] + }, + "RepairTaskApproveDescription": { + "description": "Describes a request for forced approval of a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskCancelDescription": { + "description": "Describes a request to cancel a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + }, + "RequestAbort": { + "type": "boolean", + "description": "_True_ if the repair should be stopped as soon as possible even if it has already started executing. _False_ if the repair should be cancelled only if execution has not yet started." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskDeleteDescription": { + "description": "Describes a request to delete a completed repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the completed repair task to be deleted." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current version of the repair task. If zero, then no version check is performed." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskHealthCheckState": { + "description": "Specifies the workflow state of a repair task's health check. This type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Succeeded", + "Skipped", + "TimedOut" + ], + "x-ms-enum": { + "name": "RepairTaskHealthCheckState", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "Indicates that the health check has not started." + }, + { + "value": "InProgress", + "description": "Indicates that the health check is in progress." + }, + { + "value": "Succeeded", + "description": "Indicates that the health check succeeded." + }, + { + "value": "Skipped", + "description": "Indicates that the health check was skipped." + }, + { + "value": "TimedOut", + "description": "Indicates that the health check timed out." + } + ] + } + }, + "RepairTaskHistory": { + "description": "A record of the times when the repair task entered each state.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "CreatedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Created state." + }, + "ClaimedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Claimed state." + }, + "PreparingUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Preparing state." + }, + "ApprovedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Approved state" + }, + "ExecutingUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Executing state" + }, + "RestoringUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Restoring state" + }, + "CompletedUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task entered the Completed state" + }, + "PreparingHealthCheckStartUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task started the health check in the Preparing state." + }, + "PreparingHealthCheckEndUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task completed the health check in the Preparing state." + }, + "RestoringHealthCheckStartUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task started the health check in the Restoring state." + }, + "RestoringHealthCheckEndUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time when the repair task completed the health check in the Restoring state." + } + } + }, + "RepairTaskList": { + "type": "array", + "description": "A list of repair tasks.", + "items": { + "$ref": "#/definitions/RepairTask" + } + }, + "RepairTaskUpdateHealthPolicyDescription": { + "description": "Describes a request to update the health policy of a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "TaskId": { + "type": "string", + "description": "The ID of the repair task to be updated." + }, + "Version": { + "type": "string", + "description": "The current version number of the repair task. If non-zero, then the request will only succeed if this value matches the actual current value of the repair task. If zero, then no version check is performed." + }, + "PerformPreparingHealthCheck": { + "type": "boolean", + "description": "A boolean indicating if health check is to be performed in the Preparing stage of the repair task. If not specified the existing value should not be altered. Otherwise, specify the desired new value." + }, + "PerformRestoringHealthCheck": { + "type": "boolean", + "description": "A boolean indicating if health check is to be performed in the Restoring stage of the repair task. If not specified the existing value should not be altered. Otherwise, specify the desired new value." + } + }, + "required": [ + "TaskId" + ] + }, + "RepairTaskUpdateInfo": { + "description": "Describes the result of an operation that created or updated a repair task.\n\nThis type supports the Service Fabric platform; it is not meant to be used directly from your code.", + "properties": { + "Version": { + "type": "string", + "description": "The new version of the repair task." + } + }, + "required": [ + "Version" + ] + }, + "ReconfigurationInformation": { + "description": "Information about current reconfiguration like phase, type, previous configuration role of replica and reconfiguration start date time.", + "properties": { + "PreviousConfigurationRole": { + "$ref": "#/definitions/ReplicaRole", + "description": "Replica role before reconfiguration started." + }, + "ReconfigurationPhase": { + "$ref": "#/definitions/ReconfigurationPhase", + "description": "Current phase of ongoing reconfiguration. If no reconfiguration is taking place then this value will be \"None\"." + }, + "ReconfigurationType": { + "$ref": "#/definitions/ReconfigurationType", + "description": "Type of current ongoing reconfiguration. If no reconfiguration is taking place then this value will be \"None\"." + }, + "ReconfigurationStartTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Start time (in UTC) of the ongoing reconfiguration. If no reconfiguration is taking place then this value will be zero date-time." + } + } + }, + "ReconfigurationPhase": { + "type": "string", + "description": "The reconfiguration phase of a replica of a stateful service.", + "enum": [ + "Unknown", + "None", + "Phase0", + "Phase1", + "Phase2", + "Phase3", + "Phase4", + "AbortPhaseZero" + ], + "x-ms-enum": { + "name": "ReconfigurationPhase", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the invalid reconfiguration phase." + }, + { + "value": "None", + "description": "Specifies that there is no reconfiguration in progress." + }, + { + "value": "Phase0", + "description": "Refers to the phase where the reconfiguration is transferring data from the previous primary to the new primary." + }, + { + "value": "Phase1", + "description": "Refers to the phase where the reconfiguration is querying the replica set for the progress." + }, + { + "value": "Phase2", + "description": "Refers to the phase where the reconfiguration is ensuring that data from the current primary is present in a majority of the replica set." + }, + { + "value": "Phase3", + "description": "This phase is for internal use only." + }, + { + "value": "Phase4", + "description": "This phase is for internal use only." + }, + { + "value": "AbortPhaseZero", + "description": "This phase is for internal use only." + } + ] + } + }, + "ReconfigurationType": { + "type": "string", + "description": "The type of reconfiguration for replica of a stateful service.", + "enum": [ + "Unknown", + "SwapPrimary", + "Failover", + "Other" + ], + "x-ms-enum": { + "name": "ReconfigurationType", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the invalid reconfiguration type." + }, + { + "value": "SwapPrimary", + "description": "Specifies that the primary replica is being swapped with a different replica." + }, + { + "value": "Failover", + "description": "Reconfiguration triggered in response to a primary going down. This could be due to many reasons such as primary replica crashing etc." + }, + { + "value": "Other", + "description": "Reconfigurations where the primary replica is not changing." + } + ] + } + }, + "InfrastructureServiceResponse": { + "type": "string", + "format": "binary", + "description": "This is a weakly-typed response stream to the client. It contains the JSON response from the infrastructure service without deserialization.\nThe content of the response depends on which command was issued to the infrastructure service." + }, + "UploadChunkRange": { + "description": "Information about which portion of the file to upload.", + "properties": { + "StartPosition": { + "type": "string", + "description": "The start position of the portion of the file. It's represented by the number of bytes." + }, + "EndPosition": { + "type": "string", + "description": "The end position of the portion of the file. It's represented by the number of bytes." + } + } + }, + "UploadSessionInfo": { + "description": "Information about an image store upload session. A session is associated with a relative path in the image store.", + "properties": { + "StoreRelativePath": { + "type": "string", + "description": "The remote location within image store. This path is relative to the image store root." + }, + "SessionId": { + "type": "string", + "format": "uuid", + "description": "A unique ID of the upload session. A session ID can be reused only if the session was committed or removed." + }, + "ModifiedDate": { + "type": "string", + "format": "date-time", + "description": "The date and time when the upload session was last modified." + }, + "FileSize": { + "type": "string", + "description": "The size in bytes of the uploading file." + }, + "ExpectedRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/UploadChunkRange" + }, + "description": "List of chunk ranges that image store has not received yet." + } + } + }, + "UploadSession": { + "description": "Information about a image store upload session", + "properties": { + "UploadSessions": { + "type": "array", + "items": { + "$ref": "#/definitions/UploadSessionInfo" + }, + "description": "When querying upload session by upload session ID, the result contains only one upload session. When querying upload session by image store relative path, the result might contain multiple upload sessions." + } + } + }, + "ScalingPolicyDescription": { + "description": "Describes how the scaling should be performed", + "required": [ + "ScalingTrigger", + "ScalingMechanism" + ], + "properties": { + "ScalingTrigger": { + "$ref": "#/definitions/ScalingTriggerDescription", + "description": "Specifies the trigger associated with this scaling policy" + }, + "ScalingMechanism": { + "$ref": "#/definitions/ScalingMechanismDescription", + "description": "Specifies the mechanism associated with this scaling policy" + } + } + }, + "ScalingPolicyDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingPolicyDescription" + }, + "description": "A list that describes the scaling policies." + }, + "ScalingTriggerDescription": { + "discriminator": "Kind", + "description": "Describes the trigger for performing a scaling operation.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ScalingTriggerKind", + "description": "Specifies the kind of scaling trigger" + } + } + }, + "ScalingMechanismDescription": { + "discriminator": "Kind", + "description": "Describes the mechanism for performing a scaling operation.", + "required": [ + "Kind" + ], + "properties": { + "Kind": { + "$ref": "#/definitions/ScalingMechanismKind", + "description": "Specifies the kind of scaling mechanism" + } + } + }, + "ScalingTriggerKind": { + "type": "string", + "description": "Enumerates the ways that a service can be scaled.", + "enum": [ + "Invalid", + "AveragePartitionLoad", + "AverageServiceLoad" + ], + "x-ms-enum": { + "name": "ScalingTriggerKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the scaling trigger is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "AveragePartitionLoad", + "description": "Indicates a trigger where scaling decisions are made based on average load of a partition. The value is 1." + }, + { + "value": "AverageServiceLoad", + "description": "Indicates a trigger where scaling decisions are made based on average load of a service. The value is 2." + } + ] + } + }, + "ScalingMechanismKind": { + "type": "string", + "description": "Enumerates the ways that a service can be scaled.", + "enum": [ + "Invalid", + "PartitionInstanceCount", + "AddRemoveIncrementalNamedPartition" + ], + "x-ms-enum": { + "name": "ScalingMechanismKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the scaling mechanism is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "PartitionInstanceCount", + "description": "Indicates a mechanism for scaling where new instances are added or removed from a partition. The value is 1." + }, + { + "value": "AddRemoveIncrementalNamedPartition", + "description": "Indicates a mechanism for scaling where new named partitions are added or removed from a service. The value is 2." + } + ] + } + }, + "AveragePartitionLoadScalingTrigger": { + "description": "Represents a scaling trigger related to an average load of a metric/resource of a partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTriggerDescription" + } + ], + "x-ms-discriminator-value": "AveragePartitionLoad", + "required": [ + "MetricName", + "LowerLoadThreshold", + "UpperLoadThreshold", + "ScaleIntervalInSeconds" + ], + "properties": { + "MetricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "LowerLoadThreshold": { + "type": "string", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "UpperLoadThreshold": { + "type": "string", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "ScaleIntervalInSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The period in seconds on which a decision is made whether to scale or not." + } + } + }, + "AverageServiceLoadScalingTrigger": { + "description": "Represents a scaling policy related to an average load of a metric/resource of a service.", + "allOf": [ + { + "$ref": "#/definitions/ScalingTriggerDescription" + } + ], + "x-ms-discriminator-value": "AverageServiceLoad", + "required": [ + "MetricName", + "LowerLoadThreshold", + "UpperLoadThreshold", + "ScaleIntervalInSeconds" + ], + "properties": { + "MetricName": { + "type": "string", + "description": "The name of the metric for which usage should be tracked." + }, + "LowerLoadThreshold": { + "type": "string", + "format": "double", + "description": "The lower limit of the load below which a scale in operation should be performed." + }, + "UpperLoadThreshold": { + "type": "string", + "format": "double", + "description": "The upper limit of the load beyond which a scale out operation should be performed." + }, + "ScaleIntervalInSeconds": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The period in seconds on which a decision is made whether to scale or not." + } + } + }, + "PartitionInstanceCountScaleMechanism": { + "description": "Represents a scaling mechanism for adding or removing instances of stateless service partition.", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanismDescription" + } + ], + "x-ms-discriminator-value": "PartitionInstanceCount", + "required": [ + "MinInstanceCount", + "MaxInstanceCount", + "ScaleIncrement" + ], + "properties": { + "MinInstanceCount": { + "type": "integer", + "description": "Minimum number of instances of the partition." + }, + "MaxInstanceCount": { + "type": "integer", + "description": "Maximum number of instances of the partition." + }, + "ScaleIncrement": { + "type": "integer", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "AddRemoveIncrementalNamedPartitionScalingMechanism": { + "description": "Represents a scaling mechanism for adding or removing named partitions of a stateless service. Partition names are in the format '0','1''N-1'", + "allOf": [ + { + "$ref": "#/definitions/ScalingMechanismDescription" + } + ], + "x-ms-discriminator-value": "AddRemoveIncrementalNamedPartition", + "required": [ + "MinPartitionCount", + "MaxPartitionCount", + "ScaleIncrement" + ], + "properties": { + "MinPartitionCount": { + "type": "integer", + "description": "Minimum number of named partitions of the service." + }, + "MaxPartitionCount": { + "type": "integer", + "description": "Maximum number of named partitions of the service." + }, + "ScaleIncrement": { + "type": "integer", + "description": "The number of instances to add or remove during a scaling operation." + } + } + }, + "UnplacedReplicaInformation": { + "description": "Contains information for an unplaced replica.", + "properties": { + "ServiceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "The ID of the partition." + }, + "UnplacedReplicaDetails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of reasons due to which a replica cannot be placed." + } + } + }, + "ApplicationCreatedEvent": { + "description": "Application Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "ApplicationDefinitionKind": { + "type": "string", + "description": "Application definition kind." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "ApplicationDefinitionKind" + ], + "x-ms-discriminator-value": "ApplicationCreated" + }, + "ApplicationDeletedEvent": { + "description": "Application Deleted event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion" + ], + "x-ms-discriminator-value": "ApplicationDeleted" + }, + "ApplicationNewHealthReportEvent": { + "description": "Application Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ApplicationNewHealthReport" + }, + "ApplicationHealthReportExpiredEvent": { + "description": "Application Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ApplicationHealthReportExpired" + }, + "ApplicationUpgradeCompletedEvent": { + "description": "Application Upgrade Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeCompleted" + }, + "ApplicationUpgradeDomainCompletedEvent": { + "description": "Application Upgrade Domain Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "UpgradeState": { + "type": "string", + "description": "State of upgrade." + }, + "UpgradeDomains": { + "type": "string", + "description": "Upgrade domains." + }, + "UpgradeDomainElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Upgrade time of domain in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "UpgradeState", + "UpgradeDomains", + "UpgradeDomainElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeDomainCompleted" + }, + "ApplicationUpgradeRollbackCompletedEvent": { + "description": "Application Upgrade Rollback Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Application type version." + }, + "FailureReason": { + "type": "string", + "description": "Describes reason of failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "ApplicationTypeVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeRollbackCompleted" + }, + "ApplicationUpgradeRollbackStartedEvent": { + "description": "Application Upgrade Rollback Started event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "FailureReason": { + "type": "string", + "description": "Describes reason of failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall upgrade time in milli-seconds." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ApplicationUpgradeRollbackStarted" + }, + "ApplicationUpgradeStartedEvent": { + "description": "Application Upgrade Started event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "CurrentApplicationTypeVersion": { + "type": "string", + "description": "Current Application type version." + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "Target Application type version." + }, + "UpgradeType": { + "type": "string", + "description": "Type of upgrade." + }, + "RollingUpgradeMode": { + "type": "string", + "description": "Mode of upgrade." + }, + "FailureAction": { + "type": "string", + "description": "Action if failed." + } + }, + "required": [ + "ApplicationTypeName", + "CurrentApplicationTypeVersion", + "ApplicationTypeVersion", + "UpgradeType", + "RollingUpgradeMode", + "FailureAction" + ], + "x-ms-discriminator-value": "ApplicationUpgradeStarted" + }, + "DeployedApplicationNewHealthReportEvent": { + "description": "Deployed Application Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedApplicationNewHealthReport" + }, + "DeployedApplicationHealthReportExpiredEvent": { + "description": "Deployed Application Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ApplicationInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Application instance." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ApplicationInstanceId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedApplicationHealthReportExpired" + }, + "ApplicationProcessExitedEvent": { + "description": "Process Exited event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of Service." + }, + "ServicePackageName": { + "type": "string", + "description": "Name of Service package." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Activation Id of Service package." + }, + "IsExclusive": { + "type": "boolean", + "description": "Indicates IsExclusive flag." + }, + "CodePackageName": { + "type": "string", + "description": "Name of Code package." + }, + "EntryPointType": { + "type": "string", + "description": "Type of EntryPoint." + }, + "ExeName": { + "type": "string", + "description": "Name of executable." + }, + "ProcessId": { + "type": "integer", + "format": "int64", + "description": "Process Id." + }, + "HostId": { + "type": "string", + "description": "Host Id." + }, + "ExitCode": { + "type": "integer", + "format": "int64", + "description": "Exit code of process." + }, + "UnexpectedTermination": { + "type": "boolean", + "description": "Indicates if termination is unexpected." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time of process." + } + }, + "required": [ + "ServiceName", + "ServicePackageName", + "ServicePackageActivationId", + "IsExclusive", + "CodePackageName", + "EntryPointType", + "ExeName", + "ProcessId", + "HostId", + "ExitCode", + "UnexpectedTermination", + "StartTime" + ], + "x-ms-discriminator-value": "ApplicationProcessExited" + }, + "ApplicationContainerInstanceExitedEvent": { + "description": "Container Exited event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of Service." + }, + "ServicePackageName": { + "type": "string", + "description": "Name of Service package." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Activation Id of Service package." + }, + "IsExclusive": { + "type": "boolean", + "description": "Indicates IsExclusive flag." + }, + "CodePackageName": { + "type": "string", + "description": "Name of Code package." + }, + "EntryPointType": { + "type": "string", + "description": "Type of EntryPoint." + }, + "ImageName": { + "type": "string", + "description": "Name of Container image." + }, + "ContainerName": { + "type": "string", + "description": "Name of Container." + }, + "HostId": { + "type": "string", + "description": "Host Id." + }, + "ExitCode": { + "type": "integer", + "format": "int64", + "description": "Exit code of process." + }, + "UnexpectedTermination": { + "type": "boolean", + "description": "Indicates if termination is unexpected." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time of process." + } + }, + "required": [ + "ServiceName", + "ServicePackageName", + "ServicePackageActivationId", + "IsExclusive", + "CodePackageName", + "EntryPointType", + "ImageName", + "ContainerName", + "HostId", + "ExitCode", + "UnexpectedTermination", + "StartTime" + ], + "x-ms-discriminator-value": "ApplicationContainerInstanceExited" + }, + "NodeAbortedEvent": { + "description": "Node Aborted event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion" + ], + "x-ms-discriminator-value": "NodeAborted" + }, + "NodeAddedToClusterEvent": { + "description": "Node Added event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeType": { + "type": "string", + "description": "Type of Node." + }, + "FabricVersion": { + "type": "string", + "description": "Fabric version." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "NodeCapacities": { + "type": "string", + "description": "Capacities." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "NodeType", + "FabricVersion", + "IpAddressOrFQDN", + "NodeCapacities" + ], + "x-ms-discriminator-value": "NodeAddedToCluster" + }, + "NodeClosedEvent": { + "description": "Node Closed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "Error": { + "type": "string", + "description": "Describes error." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "Error" + ], + "x-ms-discriminator-value": "NodeClosed" + }, + "NodeDeactivateCompletedEvent": { + "description": "Node Deactivate Completed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "EffectiveDeactivateIntent": { + "type": "string", + "description": "Describes deactivate intent." + }, + "BatchIdsWithDeactivateIntent": { + "type": "string", + "description": "Batch Ids." + }, + "StartTime": { + "type": "string", + "format": "date-time", + "description": "Start time." + } + }, + "required": [ + "NodeInstance", + "EffectiveDeactivateIntent", + "BatchIdsWithDeactivateIntent", + "StartTime" + ], + "x-ms-discriminator-value": "NodeDeactivateCompleted" + }, + "NodeDeactivateStartedEvent": { + "description": "Node Deactivate Started event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "BatchId": { + "type": "string", + "description": "Batch Id." + }, + "DeactivateIntent": { + "type": "string", + "description": "Describes deactivate intent." + } + }, + "required": [ + "NodeInstance", + "BatchId", + "DeactivateIntent" + ], + "x-ms-discriminator-value": "NodeDeactivateStarted" + }, + "NodeDownEvent": { + "description": "Node Down event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "LastNodeUpAt": { + "type": "string", + "format": "date-time", + "description": "Time when Node was last up." + } + }, + "required": [ + "NodeInstance", + "LastNodeUpAt" + ], + "x-ms-discriminator-value": "NodeDown" + }, + "NodeNewHealthReportEvent": { + "description": "Node Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "NodeInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "NodeNewHealthReport" + }, + "NodeHealthReportExpiredEvent": { + "description": "Node Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "NodeInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "NodeHealthReportExpired" + }, + "NodeOpenSucceededEvent": { + "description": "Node Opened Succeeded event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion" + ], + "x-ms-discriminator-value": "NodeOpenSucceeded" + }, + "NodeOpenFailedEvent": { + "description": "Node Open Failed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "UpgradeDomain": { + "type": "string", + "description": "Upgrade domain of Node." + }, + "FaultDomain": { + "type": "string", + "description": "Fault domain of Node." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "Hostname": { + "type": "string", + "description": "Name of Host." + }, + "IsSeedNode": { + "type": "boolean", + "description": "Indicates if it is seed node." + }, + "NodeVersion": { + "type": "string", + "description": "Version of Node." + }, + "Error": { + "type": "string", + "description": "Describes the error." + } + }, + "required": [ + "NodeInstance", + "NodeId", + "UpgradeDomain", + "FaultDomain", + "IpAddressOrFQDN", + "Hostname", + "IsSeedNode", + "NodeVersion", + "Error" + ], + "x-ms-discriminator-value": "NodeOpenFailed" + }, + "NodeRemovedFromClusterEvent": { + "description": "Node Removed event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeId": { + "type": "string", + "description": "Id of Node." + }, + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "NodeType": { + "type": "string", + "description": "Type of Node." + }, + "FabricVersion": { + "type": "string", + "description": "Fabric version." + }, + "IpAddressOrFQDN": { + "type": "string", + "description": "IP address or FQDN." + }, + "NodeCapacities": { + "type": "string", + "description": "Capacities." + } + }, + "required": [ + "NodeId", + "NodeInstance", + "NodeType", + "FabricVersion", + "IpAddressOrFQDN", + "NodeCapacities" + ], + "x-ms-discriminator-value": "NodeRemovedFromCluster" + }, + "NodeUpEvent": { + "description": "Node Up event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "LastNodeDownAt": { + "type": "string", + "format": "date-time", + "description": "Time when Node was last down." + } + }, + "required": [ + "NodeInstance", + "LastNodeDownAt" + ], + "x-ms-discriminator-value": "NodeUp" + }, + "PartitionNewHealthReportEvent": { + "description": "Partition Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "PartitionNewHealthReport" + }, + "PartitionHealthReportExpiredEvent": { + "description": "Partition Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "PartitionHealthReportExpired" + }, + "PartitionReconfiguredEvent": { + "description": "Partition Reconfiguration event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "NodeInstanceId": { + "type": "string", + "description": "Id of Node instance." + }, + "ServiceType": { + "type": "string", + "description": "Type of Service." + }, + "CcEpochDataLossVersion": { + "type": "integer", + "format": "int64", + "description": "CcEpochDataLoss version." + }, + "CcEpochConfigVersion": { + "type": "integer", + "format": "int64", + "description": "CcEpochConfig version." + }, + "ReconfigType": { + "type": "string", + "description": "Type of reconfiguration." + }, + "Result": { + "type": "string", + "description": "Describes reconfiguration result." + }, + "Phase0DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase0 in milli-seconds." + }, + "Phase1DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase1 in milli-seconds." + }, + "Phase2DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase2 in milli-seconds." + }, + "Phase3DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase3 in milli-seconds." + }, + "Phase4DurationMs": { + "type": "number", + "format": "double", + "description": "Duration of Phase4 in milli-seconds." + }, + "TotalDurationMs": { + "type": "number", + "format": "double", + "description": "Total duration in milli-seconds." + } + }, + "required": [ + "NodeName", + "NodeInstanceId", + "ServiceType", + "CcEpochDataLossVersion", + "CcEpochConfigVersion", + "ReconfigType", + "Result", + "Phase0DurationMs", + "Phase1DurationMs", + "Phase2DurationMs", + "Phase3DurationMs", + "Phase4DurationMs", + "TotalDurationMs" + ], + "x-ms-discriminator-value": "PartitionReconfigured" + }, + "PartitionPrimaryMoveAnalysisEvent": { + "description": "Partition Primary Move Analysis event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionAnalysisEvent" + } + ], + "properties": { + "WhenMoveCompleted": { + "type": "string", + "format": "date-time", + "description": "Time when the move was completed." + }, + "PreviousNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "CurrentNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "MoveReason": { + "type": "string", + "description": "Move reason." + }, + "RelevantTraces": { + "type": "string", + "description": "Relevant traces." + } + }, + "required": [ + "WhenMoveCompleted", + "PreviousNode", + "CurrentNode", + "MoveReason", + "RelevantTraces" + ], + "x-ms-discriminator-value": "PartitionPrimaryMoveAnalysis" + }, + "ServiceCreatedEvent": { + "description": "Service Created event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Service type name." + }, + "ApplicationName": { + "type": "string", + "description": "Application name." + }, + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ServiceInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates if Service is stateful." + }, + "PartitionCount": { + "type": "integer", + "format": "int32", + "description": "Number of partitions." + }, + "TargetReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Size of target replicas set." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Minimum size of replicas set." + }, + "ServicePackageVersion": { + "type": "string", + "description": "Version of Service package." + }, + "PartitionId": { + "$ref": "#/definitions/PartitionId", + "description": "An internal ID used by Service Fabric to uniquely identify a partition. This is a randomly generated GUID when the service was created. The partition ID is unique and does not change for the lifetime of the service. If the same service was deleted and recreated the IDs of its partitions would be different." + } + }, + "required": [ + "ServiceTypeName", + "ApplicationName", + "ApplicationTypeName", + "ServiceInstance", + "IsStateful", + "PartitionCount", + "TargetReplicaSetSize", + "MinReplicaSetSize", + "ServicePackageVersion", + "PartitionId" + ], + "x-ms-discriminator-value": "ServiceCreated" + }, + "ServiceDeletedEvent": { + "description": "Service Deleted event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "ServiceTypeName": { + "type": "string", + "description": "Service type name." + }, + "ApplicationName": { + "type": "string", + "description": "Application name." + }, + "ApplicationTypeName": { + "type": "string", + "description": "Application type name." + }, + "ServiceInstance": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "IsStateful": { + "type": "boolean", + "description": "Indicates if Service is stateful." + }, + "PartitionCount": { + "type": "integer", + "format": "int32", + "description": "Number of partitions." + }, + "TargetReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Size of target replicas set." + }, + "MinReplicaSetSize": { + "type": "integer", + "format": "int32", + "description": "Minimum size of replicas set." + }, + "ServicePackageVersion": { + "type": "string", + "description": "Version of Service package." + } + }, + "required": [ + "ServiceTypeName", + "ApplicationName", + "ApplicationTypeName", + "ServiceInstance", + "IsStateful", + "PartitionCount", + "TargetReplicaSetSize", + "MinReplicaSetSize", + "ServicePackageVersion" + ], + "x-ms-discriminator-value": "ServiceDeleted" + }, + "ServiceNewHealthReportEvent": { + "description": "Service Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "InstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "InstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ServiceNewHealthReport" + }, + "ServiceHealthReportExpiredEvent": { + "description": "Service Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ServiceEvent" + } + ], + "properties": { + "InstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "InstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ServiceHealthReportExpired" + }, + "DeployedServicePackageNewHealthReportEvent": { + "description": "Deployed Service Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceManifestName": { + "type": "string", + "description": "Service manifest name." + }, + "ServicePackageInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service package instance." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ServiceManifestName", + "ServicePackageInstanceId", + "ServicePackageActivationId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedServicePackageNewHealthReport" + }, + "DeployedServicePackageHealthReportExpiredEvent": { + "description": "Deployed Service Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "ServiceManifest": { + "type": "string", + "description": "Service manifest name." + }, + "ServicePackageInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Service package instance." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ServiceManifest", + "ServicePackageInstanceId", + "ServicePackageActivationId", + "NodeName", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "DeployedServicePackageHealthReportExpired" + }, + "StatefulReplicaNewHealthReportEvent": { + "description": "Stateful Replica Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "ReplicaInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Replica instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ReplicaInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatefulReplicaNewHealthReport" + }, + "StatefulReplicaHealthReportExpiredEvent": { + "description": "Stateful Replica Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "ReplicaInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Replica instance." + }, + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "ReplicaInstanceId", + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatefulReplicaHealthReportExpired" + }, + "StatelessReplicaNewHealthReportEvent": { + "description": "Stateless Replica Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatelessReplicaNewHealthReport" + }, + "StatelessReplicaHealthReportExpiredEvent": { + "description": "Stateless Replica Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "StatelessReplicaHealthReportExpired" + }, + "ClusterNewHealthReportEvent": { + "description": "Cluster Health Report Created event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ClusterNewHealthReport" + }, + "ClusterHealthReportExpiredEvent": { + "description": "Cluster Health Report Expired event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "SourceId": { + "type": "string", + "description": "Id of report source." + }, + "Property": { + "type": "string", + "description": "Describes the property." + }, + "HealthState": { + "type": "string", + "description": "Describes the property health state." + }, + "TimeToLiveMs": { + "type": "integer", + "format": "int64", + "description": "Time to live in milli-seconds." + }, + "SequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of report." + }, + "Description": { + "type": "string", + "description": "Description of report." + }, + "RemoveWhenExpired": { + "type": "boolean", + "description": "Indicates the removal when it expires." + }, + "SourceUtcTimestamp": { + "type": "string", + "format": "date-time", + "description": "Source time." + } + }, + "required": [ + "SourceId", + "Property", + "HealthState", + "TimeToLiveMs", + "SequenceNumber", + "Description", + "RemoveWhenExpired", + "SourceUtcTimestamp" + ], + "x-ms-discriminator-value": "ClusterHealthReportExpired" + }, + "ClusterUpgradeCompletedEvent": { + "description": "Cluster Upgrade Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeCompleted" + }, + "ClusterUpgradeDomainCompletedEvent": { + "description": "Cluster Upgrade Domain Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "UpgradeState": { + "type": "string", + "description": "State of upgrade." + }, + "UpgradeDomains": { + "type": "string", + "description": "Upgrade domains." + }, + "UpgradeDomainElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Duration of domain upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "UpgradeState", + "UpgradeDomains", + "UpgradeDomainElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeDomainCompleted" + }, + "ClusterUpgradeRollbackCompletedEvent": { + "description": "Cluster Upgrade Rollback Completed event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "FailureReason": { + "type": "string", + "description": "Describes failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeRollbackCompleted" + }, + "ClusterUpgradeRollbackStartedEvent": { + "description": "Cluster Upgrade Rollback Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "FailureReason": { + "type": "string", + "description": "Describes failure." + }, + "OverallUpgradeElapsedTimeInMs": { + "type": "number", + "format": "double", + "description": "Overall duration of upgrade in milli-seconds." + } + }, + "required": [ + "TargetClusterVersion", + "FailureReason", + "OverallUpgradeElapsedTimeInMs" + ], + "x-ms-discriminator-value": "ClusterUpgradeRollbackStarted" + }, + "ClusterUpgradeStartedEvent": { + "description": "Cluster Upgrade Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "CurrentClusterVersion": { + "type": "string", + "description": "Current Cluster version." + }, + "TargetClusterVersion": { + "type": "string", + "description": "Target Cluster version." + }, + "UpgradeType": { + "type": "string", + "description": "Type of upgrade." + }, + "RollingUpgradeMode": { + "type": "string", + "description": "Mode of upgrade." + }, + "FailureAction": { + "type": "string", + "description": "Action if failed." + } + }, + "required": [ + "CurrentClusterVersion", + "TargetClusterVersion", + "UpgradeType", + "RollingUpgradeMode", + "FailureAction" + ], + "x-ms-discriminator-value": "ClusterUpgradeStarted" + }, + "ChaosStoppedEvent": { + "description": "Chaos Stopped event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "Reason": { + "type": "string", + "description": "Describes reason." + } + }, + "required": [ + "Reason" + ], + "x-ms-discriminator-value": "ChaosStopped" + }, + "ChaosStartedEvent": { + "description": "Chaos Started event.", + "allOf": [ + { + "$ref": "#/definitions/ClusterEvent" + } + ], + "properties": { + "MaxConcurrentFaults": { + "type": "integer", + "format": "int64", + "description": "Maximum number of concurrent faults." + }, + "TimeToRunInSeconds": { + "type": "number", + "format": "double", + "description": "Time to run in seconds." + }, + "MaxClusterStabilizationTimeoutInSeconds": { + "type": "number", + "format": "double", + "description": "Maximum timeout for cluster stabilization in seconds." + }, + "WaitTimeBetweenIterationsInSeconds": { + "type": "number", + "format": "double", + "description": "Wait time between iterations in seconds." + }, + "WaitTimeBetweenFaultsInSeconds": { + "type": "number", + "format": "double", + "description": "Wait time between faults in seconds." + }, + "MoveReplicaFaultEnabled": { + "type": "boolean", + "description": "Indicates MoveReplica fault is enabled." + }, + "IncludedNodeTypeList": { + "type": "string", + "description": "List of included Node types." + }, + "IncludedApplicationList": { + "type": "string", + "description": "List of included Applications." + }, + "ClusterHealthPolicy": { + "type": "string", + "description": "Health policy." + }, + "ChaosContext": { + "type": "string", + "description": "Chaos Context." + } + }, + "required": [ + "MaxConcurrentFaults", + "TimeToRunInSeconds", + "MaxClusterStabilizationTimeoutInSeconds", + "WaitTimeBetweenIterationsInSeconds", + "WaitTimeBetweenFaultsInSeconds", + "MoveReplicaFaultEnabled", + "IncludedNodeTypeList", + "IncludedApplicationList", + "ClusterHealthPolicy", + "ChaosContext" + ], + "x-ms-discriminator-value": "ChaosStarted" + }, + "ChaosCodePackageRestartScheduledEvent": { + "description": "Chaos Restart Code Package Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "NodeName": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ServiceManifestName": { + "type": "string", + "description": "Service manifest name." + }, + "CodePackageName": { + "type": "string", + "description": "Code package name." + }, + "ServicePackageActivationId": { + "type": "string", + "description": "Id of Service package activation." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "NodeName", + "ServiceManifestName", + "CodePackageName", + "ServicePackageActivationId" + ], + "x-ms-discriminator-value": "ChaosCodePackageRestartScheduled" + }, + "ChaosReplicaRemovalScheduledEvent": { + "description": "Chaos Remove Replica Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceUri": { + "type": "string", + "description": "Service name." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceUri" + ], + "x-ms-discriminator-value": "ChaosReplicaRemovalScheduled" + }, + "ChaosPartitionSecondaryMoveScheduledEvent": { + "description": "Chaos Move Secondary Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceName": { + "type": "string", + "description": "Service name." + }, + "SourceNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "DestinationNode": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ForcedMove": { + "type": "boolean", + "description": "Indicates a forced move." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceName", + "SourceNode", + "DestinationNode", + "ForcedMove" + ], + "x-ms-discriminator-value": "ChaosPartitionSecondaryMoveScheduled" + }, + "ChaosPartitionPrimaryMoveScheduledEvent": { + "description": "Chaos Move Primary Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/PartitionEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceName": { + "type": "string", + "description": "Service name." + }, + "NodeTo": { + "$ref": "#/definitions/NodeName", + "description": "The name of a Service Fabric node." + }, + "ForcedMove": { + "type": "boolean", + "description": "Indicates a forced move." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceName", + "NodeTo", + "ForcedMove" + ], + "x-ms-discriminator-value": "ChaosPartitionPrimaryMoveScheduled" + }, + "ChaosReplicaRestartScheduledEvent": { + "description": "Chaos Restart Replica Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/ReplicaEvent" + } + ], + "properties": { + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + }, + "ServiceUri": { + "type": "string", + "description": "Service name." + } + }, + "required": [ + "FaultGroupId", + "FaultId", + "ServiceUri" + ], + "x-ms-discriminator-value": "ChaosReplicaRestartScheduled" + }, + "ChaosNodeRestartScheduledEvent": { + "description": "Chaos Restart Node Fault Scheduled event.", + "allOf": [ + { + "$ref": "#/definitions/NodeEvent" + } + ], + "properties": { + "NodeInstanceId": { + "type": "integer", + "format": "int64", + "description": "Id of Node instance." + }, + "FaultGroupId": { + "type": "string", + "format": "uuid", + "description": "Id of fault group." + }, + "FaultId": { + "type": "string", + "format": "uuid", + "description": "Id of fault." + } + }, + "required": [ + "NodeInstanceId", + "FaultGroupId", + "FaultId" + ], + "x-ms-discriminator-value": "ChaosNodeRestartScheduled" + }, + "ManagedApplicationIdentityDescription": { + "description": "Managed application identity description.", + "properties": { + "TokenServiceEndpoint": { + "type": "string", + "description": "Token service endpoint." + }, + "ManagedIdentities": { + "$ref": "#/definitions/ManagedApplicationIdentityList", + "description": "A list of managed application identity objects." + } + } + }, + "ManagedApplicationIdentityList": { + "description": "A list of managed application identity objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedApplicationIdentity" + } + }, + "ManagedApplicationIdentity": { + "description": "Describes a managed application identity.", + "required": [ + "Name" + ], + "properties": { + "Name": { + "type": "string", + "description": "The name of the identity." + }, + "PrincipalId": { + "type": "string", + "description": "The identity's PrincipalId." + } + } + }, + "InstanceCloseDelayDurationInSeconds": { + "type": "integer", + "format": "int64", + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster\nupgrade, only for those instances which have a non-zero delay duration configured in the service description. See InstanceCloseDelayDurationSeconds property in $ref: \"#/definitions/StatelessServiceDescription.yaml\" for details.\nNote, the default value of InstanceCloseDelayDurationInSeconds is 4294967295, which indicates that the behavior will entirely depend on the delay configured in the stateless service description.", + "default": 4294967295 + }, + "ResourceStatus": { + "description": "Status of the resource.", + "type": "string", + "enum": [ + "Unknown", + "Ready", + "Upgrading", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ResourceStatus", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "Indicates the resource status is unknown. The value is zero." + }, + { + "value": "Ready", + "description": "Indicates the resource is ready. The value is 1." + }, + { + "value": "Upgrading", + "description": "Indicates the resource is upgrading. The value is 2." + }, + { + "value": "Creating", + "description": "Indicates the resource is being created. The value is 3." + }, + { + "value": "Deleting", + "description": "Indicates the resource is being deleted. The value is 4." + }, + { + "value": "Failed", + "description": "Indicates the resource is not functional due to persistent failures. See statusDetails property for more details. The value is 5." + } + ] + } + }, + "SecretKind": { + "type": "string", + "description": "Describes the kind of secret.", + "enum": [ + "inlinedValue", + "keyVaultVersionedReference" + ], + "x-ms-enum": { + "name": "SecretKind", + "modelAsString": true, + "values": [ + { + "value": "inlinedValue", + "description": "A simple secret resource whose plaintext value is provided by the user." + }, + { + "value": "keyVaultVersionedReference", + "description": "A secret resource that references a specific version of a secret stored in Azure Key Vault; the expected value is a versioned KeyVault URI corresponding to the version of the secret being referenced." + } + ] + } + }, + "SecretResourceProperties": { + "description": "Describes the properties of a secret resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretResourcePropertiesBase" + } + ], + "properties": { + "description": { + "description": "User readable description of the secret.", + "type": "string" + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the resource." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the secret." + }, + "contentType": { + "type": "string", + "description": "The type of the content stored in the secret value. The value of this property is opaque to Service Fabric. Once set, the value of this property cannot be changed." + } + } + }, + "InlinedValueSecretResourceProperties": { + "description": "Describes the properties of a secret resource whose value is provided explicitly as plaintext. The secret resource may have multiple values, each being uniquely versioned. The secret value of each version is stored encrypted, and delivered as plaintext into the context of applications referencing it.", + "allOf": [ + { + "$ref": "#/definitions/SecretResourceProperties" + } + ], + "x-ms-discriminator-value": "inlinedValue" + }, + "SecretResourceName": { + "type": "string", + "description": "Name of the Secret resource." + }, + "SecretResourceDescription": { + "description": "This type describes a secret resource.", + "properties": { + "properties": { + "$ref": "#/definitions/SecretResourceProperties", + "description": "Describes the properties of a secret resource." + }, + "name": { + "$ref": "#/definitions/SecretResourceName", + "description": "Name of the Secret resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedSecretResourceDescriptionList": { + "type": "object", + "description": "The list of secret resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/SecretResourceDescription" + } + } + } + }, + "SecretResourcePropertiesBase": { + "discriminator": "kind", + "description": "This type describes the properties of a secret resource, including its kind.", + "type": "object", + "properties": { + "kind": { + "$ref": "#/definitions/SecretKind", + "description": "Describes the kind of secret." + } + }, + "required": [ + "kind" + ] + }, + "SecretValue": { + "type": "object", + "description": "This type represents the unencrypted value of the secret.", + "properties": { + "value": { + "type": "string", + "description": "The actual value of the secret." + } + } + }, + "SecretValueProperties": { + "type": "object", + "description": "This type describes properties of secret value resource.", + "properties": { + "value": { + "type": "string", + "description": "The actual value of the secret." + } + } + }, + "SecretValueResourceDescription": { + "description": "This type describes a value of a secret resource. The name of this resource is the version identifier corresponding to this secret value.", + "properties": { + "name": { + "type": "string", + "description": "Version identifier of the secret value." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecretValueResourceProperties", + "description": "This type describes properties of a secret value resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedSecretValueResourceDescriptionList": { + "type": "object", + "description": "The list of values of a secret resource, paged if the number of results exceeds the limits of a single message. The next set of results can be obtained by executing the same query with the continuation token provided in the previous page.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretValueResourceDescription" + }, + "description": "One page of the list." + } + } + }, + "SecretValueResourceProperties": { + "description": "This type describes properties of a secret value resource.", + "allOf": [ + { + "$ref": "#/definitions/SecretValueProperties" + } + ] + }, + "VolumeProperties": { + "description": "Describes properties of a volume resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the volume." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the volume." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the volume." + }, + "provider": { + "$ref": "#/definitions/VolumeProvider", + "description": "Provider of the volume." + }, + "azureFileParameters": { + "$ref": "#/definitions/VolumeProviderParametersAzureFile", + "description": "This type describes a volume provided by an Azure Files file share." + } + }, + "required": [ + "provider" + ] + }, + "VolumeProvider": { + "type": "string", + "description": "Describes the provider of the volume resource.", + "enum": [ + "SFAzureFile" + ], + "x-ms-enum": { + "name": "VolumeProvider", + "modelAsString": true, + "values": [ + { + "value": "SFAzureFile", + "description": "Provides volumes that are backed by Azure Files." + } + ] + } + }, + "VolumeProviderParametersAzureFile": { + "description": "This type describes a volume provided by an Azure Files file share.", + "properties": { + "accountName": { + "description": "Name of the Azure storage account for the File Share.", + "type": "string" + }, + "accountKey": { + "description": "Access key of the Azure storage account for the File Share.", + "type": "string" + }, + "shareName": { + "description": "Name of the Azure Files file share that provides storage for the volume.", + "type": "string" + } + }, + "required": [ + "accountName", + "shareName" + ] + }, + "VolumeReference": { + "description": "Describes a reference to a volume resource.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the volume being referenced." + }, + "readOnly": { + "type": "boolean", + "description": "The flag indicating whether the volume is read only. Default is 'false'." + }, + "destinationPath": { + "type": "string", + "description": "The path within the container at which the volume should be mounted. Only valid path characters are allowed." + } + }, + "required": [ + "name", + "destinationPath" + ] + }, + "ApplicationScopedVolume": { + "description": "Describes a volume whose lifetime is scoped to the application's lifetime.", + "allOf": [ + { + "$ref": "#/definitions/VolumeReference" + } + ], + "properties": { + "creationParameters": { + "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters", + "description": "Describes parameters for creating application-scoped volumes." + } + }, + "required": [ + "creationParameters" + ] + }, + "ApplicationScopedVolumeCreationParameters": { + "description": "Describes parameters for creating application-scoped volumes.", + "type": "object", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/ApplicationScopedVolumeKind", + "description": "Specifies the application-scoped volume kind." + }, + "description": { + "description": "User readable description of the volume.", + "type": "string" + } + }, + "required": [ + "kind" + ] + }, + "ApplicationScopedVolumeCreationParametersServiceFabricVolumeDisk": { + "description": "Describes parameters for creating application-scoped volumes provided by Service Fabric Volume Disks", + "allOf": [ + { + "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters" + } + ], + "properties": { + "sizeDisk": { + "description": "Volume size", + "type": "string", + "enum": [ + "Small", + "Medium", + "Large" + ], + "x-ms-enum": { + "name": "SizeTypes", + "modelAsString": true + } + } + }, + "required": [ + "sizeDisk" + ], + "x-ms-discriminator-value": "ServiceFabricVolumeDisk" + }, + "ApplicationScopedVolumeKind": { + "description": "Specifies the application-scoped volume kind.", + "type": "string", + "enum": [ + "ServiceFabricVolumeDisk" + ], + "x-ms-enum": { + "name": "ApplicationScopedVolumeKind", + "modelAsString": true, + "values": [ + { + "value": "ServiceFabricVolumeDisk", + "description": "Provides Service Fabric High Availability Volume Disk" + } + ] + } + }, + "VolumeResourceName": { + "type": "string", + "description": "Name of the Volume resource." + }, + "VolumeResourceDescription": { + "description": "This type describes a volume resource.", + "properties": { + "name": { + "$ref": "#/definitions/VolumeResourceName", + "description": "Name of the Volume resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VolumeProperties", + "description": "Describes properties of a volume resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedVolumeResourceDescriptionList": { + "type": "object", + "description": "The list of volume resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/VolumeResourceDescription" + } + } + } + }, + "NetworkAddressPrefix": { + "type": "string", + "description": "Address space for a container network. This is expressed in CIDR notation." + }, + "NetworkRef": { + "description": "Describes a network reference in a service.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network" + }, + "endpointRefs": { + "description": "A list of endpoints that are exposed on this network.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointRef" + } + } + } + }, + "EndpointRef": { + "description": "Describes a reference to a service endpoint.", + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint." + } + } + }, + "NetworkKind": { + "type": "string", + "description": "The type of a Service Fabric container network.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "NetworkKind", + "modelAsString": true, + "values": [ + { + "value": "Local", + "description": "Indicates a container network local to a single Service Fabric cluster. The value is 1." + } + ] + } + }, + "NetworkResourceProperties": { + "description": "Describes properties of a network resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkResourcePropertiesBase" + } + ], + "properties": { + "description": { + "type": "string", + "description": "User readable description of the network." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the network." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the network." + } + } + }, + "LocalNetworkResourceProperties": { + "description": "Information about a Service Fabric container network local to a single Service Fabric cluster.", + "allOf": [ + { + "$ref": "#/definitions/NetworkResourceProperties" + } + ], + "x-ms-discriminator-value": "Local", + "properties": { + "networkAddressPrefix": { + "$ref": "#/definitions/NetworkAddressPrefix", + "description": "Address space for the local container network." + } + } + }, + "NetworkResourceName": { + "type": "string", + "description": "Name of the Network resource." + }, + "NetworkResourceDescription": { + "description": "This type describes a network resource.", + "properties": { + "name": { + "$ref": "#/definitions/NetworkResourceName", + "description": "Name of the Network resource." + }, + "properties": { + "$ref": "#/definitions/NetworkResourceProperties", + "description": "Describes properties of a network resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "NetworkResourcePropertiesBase": { + "discriminator": "kind", + "description": "This type describes the properties of a network resource, including its kind.", + "type": "object", + "properties": { + "kind": { + "$ref": "#/definitions/NetworkKind", + "description": "The type of a Service Fabric container network." + } + }, + "required": [ + "kind" + ] + }, + "PagedNetworkResourceDescriptionList": { + "type": "object", + "description": "The list of network resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/NetworkResourceDescription" + } + } + } + }, + "GatewayDestination": { + "description": "Describes destination endpoint for routing traffic.", + "type": "object", + "properties": { + "applicationName": { + "type": "string", + "description": "Name of the service fabric Mesh application." + }, + "serviceName": { + "type": "string", + "description": "service that contains the endpoint." + }, + "endpointName": { + "type": "string", + "description": "name of the endpoint in the service." + } + }, + "required": [ + "applicationName", + "endpointName", + "serviceName" + ] + }, + "GatewayProperties": { + "description": "Describes properties of a gateway resource.", + "properties": { + "description": { + "description": "User readable description of the gateway.", + "type": "string" + }, + "sourceNetwork": { + "$ref": "#/definitions/NetworkRef", + "description": "Network the gateway should listen on for requests." + }, + "destinationNetwork": { + "$ref": "#/definitions/NetworkRef", + "description": "Network that the Application is using." + }, + "tcp": { + "description": "Configuration for tcp connectivity for this gateway.", + "type": "array", + "items": { + "$ref": "#/definitions/TcpConfig" + } + }, + "http": { + "description": "Configuration for http connectivity for this gateway.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpConfig" + } + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the resource." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the gateway." + }, + "ipAddress": { + "readOnly": true, + "type": "string", + "description": "IP address of the gateway. This is populated in the response and is ignored for incoming requests." + } + }, + "required": [ + "destinationNetwork", + "sourceNetwork" + ] + }, + "HttpConfig": { + "description": "Describes the http configuration for external connectivity for this network.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http gateway config name." + }, + "port": { + "type": "integer", + "description": "Specifies the port at which the service endpoint below needs to be exposed." + }, + "hosts": { + "type": "array", + "description": "description for routing.", + "items": { + "$ref": "#/definitions/HttpHostConfig" + } + } + }, + "required": [ + "hosts", + "name", + "port" + ] + }, + "HttpHostConfig": { + "description": "Describes the hostname properties for http routing.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http hostname config name." + }, + "routes": { + "type": "array", + "description": "Route information to use for routing. Routes are processed in the order they are specified. Specify routes that are more specific before routes that can handle general cases.", + "items": { + "$ref": "#/definitions/HttpRouteConfig" + } + } + }, + "required": [ + "name", + "routes" + ] + }, + "HttpRouteConfig": { + "description": "Describes the hostname properties for http routing.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "http route name." + }, + "match": { + "$ref": "#/definitions/HttpRouteMatchRule", + "description": "Describes a rule for http route matching." + }, + "destination": { + "$ref": "#/definitions/GatewayDestination", + "description": "Describes destination endpoint for routing traffic." + } + }, + "required": [ + "destination", + "match", + "name" + ] + }, + "HttpRouteMatchHeader": { + "description": "Describes header information for http route matching.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of header to match in request." + }, + "value": { + "type": "string", + "description": "Value of header to match in request." + }, + "type": { + "type": "string", + "description": "how to match header value", + "enum": [ + "exact" + ], + "x-ms-enum": { + "name": "HeaderMatchType", + "modelAsString": true + } + } + }, + "required": [ + "name" + ] + }, + "HttpRouteMatchPath": { + "description": "Path to match for routing.", + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Uri path to match for request." + }, + "rewrite": { + "type": "string", + "description": "replacement string for matched part of the Uri." + }, + "type": { + "type": "string", + "description": "how to match value in the Uri", + "enum": [ + "prefix" + ], + "x-ms-enum": { + "name": "PathMatchType", + "modelAsString": true + } + } + }, + "required": [ + "type", + "value" + ] + }, + "HttpRouteMatchRule": { + "description": "Describes a rule for http route matching.", + "type": "object", + "properties": { + "path": { + "$ref": "#/definitions/HttpRouteMatchPath", + "description": "Path to match for routing." + }, + "headers": { + "type": "array", + "description": "headers and their values to match in request.", + "items": { + "$ref": "#/definitions/HttpRouteMatchHeader" + } + } + }, + "required": [ + "path" + ] + }, + "TcpConfig": { + "description": "Describes the tcp configuration for external connectivity for this network.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "tcp gateway config name." + }, + "port": { + "type": "integer", + "description": "Specifies the port at which the service endpoint below needs to be exposed." + }, + "destination": { + "$ref": "#/definitions/GatewayDestination", + "description": "Describes destination endpoint for routing traffic." + } + }, + "required": [ + "destination", + "name", + "port" + ] + }, + "GatewayResourceName": { + "type": "string", + "description": "Name of the Gateway resource." + }, + "GatewayResourceDescription": { + "description": "This type describes a gateway resource.", + "properties": { + "name": { + "$ref": "#/definitions/GatewayResourceName", + "description": "Name of the Gateway resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayProperties", + "description": "Describes properties of a gateway resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedGatewayResourceDescriptionList": { + "type": "object", + "description": "The list of gateway resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/GatewayResourceDescription" + } + } + } + }, + "ApplicationProperties": { + "description": "Describes properties of a application resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the application." + }, + "services": { + "type": "array", + "description": "Describes the services in the application. This property is used to create or modify services of the application. On get only the name of the service is returned. The service description can be obtained by querying for the service resource.", + "items": { + "$ref": "#/definitions/ServiceResourceDescription" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsDescription", + "description": "Describes the diagnostics definition and usage for an application resource." + }, + "debugParams": { + "description": "Internal - used by Visual Studio to setup the debugging session on the local development environment.", + "type": "string" + }, + "serviceNames": { + "readOnly": true, + "description": "Names of the services in the application.", + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the application." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the application." + }, + "healthState": { + "readOnly": true, + "$ref": "#/definitions/HealthState", + "description": "Describes the health state of an application resource." + }, + "unhealthyEvaluation": { + "readOnly": true, + "type": "string", + "description": "When the application's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the application is marked unhealthy." + } + } + }, + "ApplicationResourceUpgradeProgressInfo": { + "description": "This type describes an application resource upgrade.", + "properties": { + "Name": { + "type": "string", + "description": "Name of the Application resource." + }, + "TargetApplicationTypeVersion": { + "type": "string", + "description": "The target application version for the application upgrade." + }, + "StartTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade started." + }, + "UpgradeState": { + "$ref": "#/definitions/ApplicationResourceUpgradeState", + "description": "The state of the application resource upgrade." + }, + "PercentCompleted": { + "type": "string", + "description": "The estimated percent of replicas are completed in the upgrade." + }, + "ServiceUpgradeProgress": { + "$ref": "#/definitions/ServiceUpgradeProgressList", + "description": "List of service upgrade progresses." + }, + "RollingUpgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + }, + "UpgradeDuration": { + "type": "string", + "description": "The estimated amount of time that the overall upgrade elapsed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "ApplicationUpgradeStatusDetails": { + "type": "string", + "description": "Additional detailed information about the status of the pending upgrade." + }, + "UpgradeReplicaSetCheckTimeoutInSeconds": { + "type": "integer", + "format": "int64", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer).", + "default": 42949672925 + }, + "FailureTimestampUtc": { + "type": "string", + "description": "The estimated UTC datetime when the upgrade failed and FailureAction was executed." + } + } + }, + "ApplicationResourceUpgradeState": { + "type": "string", + "description": "The state of the application resource upgrade.", + "enum": [ + "Invalid", + "ProvisioningTarget", + "RollingForward", + "UnprovisioningCurrent", + "CompletedRollforward", + "RollingBack", + "UnprovisioningTarget", + "CompletedRollback", + "Failed" + ], + "x-ms-enum": { + "name": "ApplicationResourceUpgradeState", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade state is invalid. All Service Fabric enumerations have the invalid type. The value is 0." + }, + { + "value": "ProvisioningTarget", + "description": "The upgrade is in the progress of provisioning target application type version. The value is 1." + }, + { + "value": "RollingForward", + "description": "The upgrade is rolling forward to the target version but is not complete yet. The value is 2." + }, + { + "value": "UnprovisioningCurrent", + "description": "The upgrade is in the progress of unprovisioning current application type version and rolling forward to the target version is completed. The value is 3." + }, + { + "value": "CompletedRollforward", + "description": "The upgrade has finished rolling forward. The value is 4." + }, + { + "value": "RollingBack", + "description": "The upgrade is rolling back to the previous version but is not complete yet. The value is 5." + }, + { + "value": "UnprovisioningTarget", + "description": "The upgrade is in the progress of unprovisioning target application type version and rolling back to the current version is completed. The value is 6." + }, + { + "value": "CompletedRollback", + "description": "The upgrade has finished rolling back. The value is 7." + }, + { + "value": "Failed", + "description": "The upgrade has failed and is unable to execute FailureAction. The value is 8." + } + ] + } + }, + "AzureInternalMonitoringPipelineSinkDescription": { + "allOf": [ + { + "$ref": "#/definitions/DiagnosticsSinkProperties" + } + ], + "x-ms-discriminator-value": "AzureInternalMonitoringPipeline", + "description": "Diagnostics settings for Geneva.", + "properties": { + "accountName": { + "description": "Azure Internal monitoring pipeline account.", + "type": "string" + }, + "namespace": { + "description": "Azure Internal monitoring pipeline account namespace.", + "type": "string" + }, + "maConfigUrl": { + "description": "Azure Internal monitoring agent configuration.", + "type": "string" + }, + "fluentdConfigUrl": { + "description": "Azure Internal monitoring agent fluentd configuration.", + "type": "string" + }, + "autoKeyConfigUrl": { + "description": "Azure Internal monitoring pipeline autokey associated with the certificate.", + "type": "string" + } + } + }, + "DiagnosticsDescription": { + "description": "Describes the diagnostics options available", + "properties": { + "sinks": { + "description": "List of supported sinks that can be referenced.", + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticsSinkProperties" + } + }, + "enabled": { + "description": "Status of whether or not sinks are enabled.", + "type": "boolean" + }, + "defaultSinkRefs": { + "description": "The sinks to be used if diagnostics is enabled. Sink choices can be overridden at the service and code package level.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DiagnosticsRef": { + "description": "Reference to sinks in DiagnosticsDescription.", + "properties": { + "enabled": { + "description": "Status of whether or not sinks are enabled.", + "type": "boolean" + }, + "sinkRefs": { + "description": "List of sinks to be used if enabled. References the list of sinks in DiagnosticsDescription.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DiagnosticsSinkKind": { + "type": "string", + "description": "The kind of DiagnosticsSink.", + "enum": [ + "Invalid", + "AzureInternalMonitoringPipeline" + ], + "x-ms-enum": { + "name": "DiagnosticsSinkKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates an invalid sink kind. All Service Fabric enumerations have the invalid type." + }, + { + "value": "AzureInternalMonitoringPipeline", + "description": "Diagnostics settings for Geneva." + } + ] + } + }, + "DiagnosticsSinkProperties": { + "description": "Properties of a DiagnosticsSink.", + "discriminator": "kind", + "properties": { + "kind": { + "$ref": "#/definitions/DiagnosticsSinkKind", + "description": "The kind of DiagnosticsSink." + }, + "name": { + "description": "Name of the sink. This value is referenced by DiagnosticsReferenceDescription", + "type": "string" + }, + "description": { + "description": "A description of the sink.", + "type": "string" + } + }, + "required": [ + "kind" + ] + }, + "IdentityDescription": { + "description": "Information describing the identities associated with this application.", + "properties": { + "tokenServiceEndpoint": { + "type": "string", + "description": "the endpoint for the token service managing this identity" + }, + "type": { + "type": "string", + "description": "the types of identities associated with this resource; currently restricted to 'SystemAssigned and UserAssigned'" + }, + "tenantId": { + "type": "string", + "description": "the identifier of the tenant containing the application's identity." + }, + "principalId": { + "type": "string", + "description": "the object identifier of the Service Principal of the identity associated with this resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "represents user assigned identities map." + } + }, + "required": [ + "type" + ] + }, + "IdentityItemDescription": { + "description": "Describes a single user-assigned identity associated with the application.", + "type": "object", + "properties": { + "principalId": { + "type": "string", + "description": "the object identifier of the Service Principal which this identity represents." + }, + "clientId": { + "type": "string", + "description": "the client identifier of the Service Principal which this identity represents." + } + } + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceUpgradeProgressList": { + "type": "array", + "description": "List of service upgrade progresses.", + "items": { + "$ref": "#/definitions/ServiceUpgradeProgress" + } + }, + "ServiceUpgradeProgress": { + "description": "Information about how many replicas are completed or pending for a specific service during upgrade.", + "properties": { + "ServiceName": { + "type": "string", + "description": "Name of the Service resource." + }, + "CompletedReplicaCount": { + "type": "string", + "description": "The number of replicas that completes the upgrade in the service." + }, + "PendingReplicaCount": { + "type": "string", + "description": "The number of replicas that are waiting to be upgraded in the service." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "Defines a map that contains user assigned identities.", + "additionalProperties": { + "$ref": "#/definitions/IdentityItemDescription" + } + }, + "AddRemoveReplicaScalingMechanism": { + "description": "Describes the horizontal auto scaling mechanism that adds or removes replicas (containers or container groups).", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingMechanism" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "AddRemoveReplica", + "properties": { + "minCount": { + "type": "integer", + "description": "Minimum number of containers (scale down won't be performed below this number)." + }, + "maxCount": { + "type": "integer", + "description": "Maximum number of containers (scale up won't be performed above this number)." + }, + "scaleIncrement": { + "type": "integer", + "description": "Each time auto scaling is performed, this number of containers will be added or removed." + } + }, + "required": [ + "minCount", + "maxCount", + "scaleIncrement" + ] + }, + "AutoScalingMechanism": { + "type": "object", + "discriminator": "kind", + "description": "Describes the mechanism for performing auto scaling operation. Derived classes will describe the actual mechanism.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingMechanismKind", + "description": "The type of auto scaling mechanism." + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingMechanismKind": { + "type": "string", + "description": "Enumerates the mechanisms for auto scaling.", + "enum": [ + "AddRemoveReplica" + ], + "x-ms-enum": { + "name": "AutoScalingMechanismKind", + "modelAsString": true, + "values": [ + { + "value": "AddRemoveReplica", + "description": "Indicates that scaling should be performed by adding or removing replicas." + } + ] + } + }, + "AutoScalingMetric": { + "type": "object", + "discriminator": "kind", + "description": "Describes the metric that is used for triggering auto scaling operation. Derived classes will describe resources or metrics.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingMetricKind", + "description": "The type of auto scaling metric" + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingMetricKind": { + "type": "string", + "description": "Enumerates the metrics that are used for triggering auto scaling.", + "enum": [ + "Resource" + ], + "x-ms-enum": { + "name": "AutoScalingMetricKind", + "modelAsString": true, + "values": [ + { + "value": "Resource", + "description": "Indicates that the metric is one of resources, like cpu or memory." + } + ] + } + }, + "AutoScalingPolicy": { + "description": "Describes the auto scaling policy", + "type": "object", + "properties": { + "name": { + "description": "The name of the auto scaling policy.", + "type": "string" + }, + "trigger": { + "$ref": "#/definitions/AutoScalingTrigger", + "description": "Determines when auto scaling operation will be invoked." + }, + "mechanism": { + "$ref": "#/definitions/AutoScalingMechanism", + "description": "The mechanism that is used to scale when auto scaling operation is invoked." + } + }, + "required": [ + "name", + "trigger", + "mechanism" + ] + }, + "AutoScalingResourceMetric": { + "description": "Describes the resource that is used for triggering auto scaling.", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingMetric" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "Resource", + "properties": { + "name": { + "$ref": "#/definitions/AutoScalingResourceMetricName", + "description": "Name of the resource." + } + }, + "required": [ + "name" + ] + }, + "AutoScalingResourceMetricName": { + "type": "string", + "description": "Enumerates the resources that are used for triggering auto scaling.", + "enum": [ + "cpu", + "memoryInGB" + ], + "x-ms-enum": { + "name": "AutoScalingResourceMetricName", + "modelAsString": true, + "values": [ + { + "value": "cpu", + "description": "Indicates that the resource is CPU cores." + }, + { + "value": "memoryInGB", + "description": "Indicates that the resource is memory in GB." + } + ] + } + }, + "AutoScalingTrigger": { + "type": "object", + "discriminator": "kind", + "description": "Describes the trigger for performing auto scaling operation.", + "properties": { + "kind": { + "$ref": "#/definitions/AutoScalingTriggerKind", + "description": "The type of auto scaling trigger" + } + }, + "required": [ + "kind" + ] + }, + "AutoScalingTriggerKind": { + "type": "string", + "description": "Enumerates the triggers for auto scaling.", + "enum": [ + "AverageLoad" + ], + "x-ms-enum": { + "name": "AutoScalingTriggerKind", + "modelAsString": true, + "values": [ + { + "value": "AverageLoad", + "description": "Indicates that scaling should be performed based on average load of all replicas in the service." + } + ] + } + }, + "ContainerCodePackageProperties": { + "description": "Describes a container and its runtime properties.", + "properties": { + "name": { + "description": "The name of the code package.", + "type": "string" + }, + "image": { + "description": "The Container image to use.", + "type": "string" + }, + "imageRegistryCredential": { + "$ref": "#/definitions/ImageRegistryCredential", + "description": "Image registry credential." + }, + "entryPoint": { + "description": "Override for the default entry point in the container.", + "type": "string" + }, + "commands": { + "description": "Command array to execute within the container in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "environmentVariables": { + "description": "The environment variables to set in this container", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + } + }, + "settings": { + "description": "The settings to set in this container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".", + "type": "array", + "items": { + "$ref": "#/definitions/Setting" + } + }, + "labels": { + "description": "The labels to set in this container.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerLabel" + } + }, + "endpoints": { + "description": "The endpoints exposed by this container.", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointProperties" + } + }, + "resources": { + "description": "The resources required by this container.", + "$ref": "#/definitions/ResourceRequirements" + }, + "volumeRefs": { + "description": "Volumes to be attached to the container. The lifetime of these volumes is independent of the application's lifetime.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeReference" + } + }, + "volumes": { + "description": "Volumes to be attached to the container. The lifetime of these volumes is scoped to the application's lifetime.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationScopedVolume" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsRef", + "description": "Reference to sinks in DiagnosticsDescription." + }, + "reliableCollectionsRefs": { + "description": "A list of ReliableCollection resources used by this particular code package. Please refer to ReliableCollectionsRef for more details.", + "type": "array", + "items": { + "$ref": "#/definitions/ReliableCollectionsRef" + } + }, + "instanceView": { + "readOnly": true, + "$ref": "#/definitions/ContainerInstanceView", + "description": "Runtime information of a container instance." + }, + "livenessProbe": { + "description": "An array of liveness probes for a code package. It determines when to restart a code package.", + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + } + }, + "readinessProbe": { + "description": "An array of readiness probes for a code package. It determines when to unpublish an endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + } + } + }, + "required": [ + "name", + "image", + "resources" + ] + }, + "ContainerEvent": { + "description": "A container event.", + "properties": { + "name": { + "type": "string", + "description": "The name of the container event." + }, + "count": { + "type": "integer", + "description": "The count of the event." + }, + "firstTimestamp": { + "type": "string", + "description": "Date/time of the first event." + }, + "lastTimestamp": { + "type": "string", + "description": "Date/time of the last event." + }, + "message": { + "type": "string", + "description": "The event message" + }, + "type": { + "type": "string", + "description": "The event type." + } + } + }, + "ContainerInstanceView": { + "description": "Runtime information of a container instance.", + "properties": { + "restartCount": { + "type": "integer", + "description": "The number of times the container has been restarted." + }, + "currentState": { + "$ref": "#/definitions/ContainerState", + "description": "Current container instance state." + }, + "previousState": { + "$ref": "#/definitions/ContainerState", + "description": "Previous container instance state." + }, + "events": { + "description": "The events of this container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerEvent" + } + } + } + }, + "ContainerLabel": { + "description": "Describes a container label.", + "properties": { + "name": { + "description": "The name of the container label.", + "type": "string" + }, + "value": { + "description": "The value of the container label.", + "type": "string" + } + }, + "required": [ + "name", + "value" + ] + }, + "ContainerState": { + "description": "The container state.", + "properties": { + "state": { + "type": "string", + "description": "The state of this container" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the container state started." + }, + "exitCode": { + "type": "string", + "description": "The container exit code." + }, + "finishTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the container state finished." + }, + "detailStatus": { + "description": "Human-readable status of this state.", + "type": "string" + } + } + }, + "DefaultExecutionPolicy": { + "description": "The default execution policy. Always restart the service if an exit occurs.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionPolicy" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "Default" + }, + "EndpointProperties": { + "description": "Describes a container endpoint.", + "properties": { + "name": { + "description": "The name of the endpoint.", + "type": "string" + }, + "port": { + "description": "Port used by the container.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EnvironmentVariable": { + "description": "Describes an environment variable for the container.", + "properties": { + "type": { + "$ref": "#/definitions/EnvironmentVariableType", + "description": "The type of the environment variable being given in value" + }, + "name": { + "description": "The name of the environment variable.", + "type": "string" + }, + "value": { + "description": "The value of the environment variable, will be processed based on the type provided.", + "type": "string" + } + } + }, + "EnvironmentVariableType": { + "type": "string", + "description": "The type of the environment variable being given in value", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "EnvironmentVariableType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The environment variable in clear text, will not be processed in any way and passed in as is" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting passed in" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting passed in" + } + ] + } + }, + "ExecutionPolicy": { + "type": "object", + "discriminator": "type", + "description": "The execution policy of the service", + "properties": { + "type": { + "$ref": "#/definitions/ExecutionPolicyType", + "description": "Enumerates the execution policy types for services." + } + }, + "required": [ + "type" + ] + }, + "ExecutionPolicyType": { + "type": "string", + "description": "Enumerates the execution policy types for services.", + "enum": [ + "Default", + "RunToCompletion" + ], + "x-ms-enum": { + "name": "ExecutionPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Default", + "description": "Indicates the default execution policy, always restart the service if an exit occurs." + }, + { + "value": "RunToCompletion", + "description": "Indicates that the service will perform its desired operation and complete successfully. If the service encounters failure, it will restarted based on restart policy specified. If the service completes its operation successfully, it will not be restarted again." + } + ] + } + }, + "ImageRegistryCredential": { + "description": "Image registry credential.", + "properties": { + "server": { + "type": "string", + "description": "Docker image registry server, without protocol such as `http` and `https`." + }, + "username": { + "type": "string", + "description": "The username for the private registry." + }, + "passwordType": { + "$ref": "#/definitions/ImageRegistryPasswordType", + "description": "The type of the image registry password being given in password" + }, + "password": { + "type": "string", + "description": "The password for the private registry. The password is required for create or update operations, however it is not returned in the get or list operations. Will be processed based on the type provided." + } + }, + "required": [ + "server", + "username" + ] + }, + "ImageRegistryPasswordType": { + "type": "string", + "description": "The type of the image registry password being given in password", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "ImageRegistryPasswordType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The image registry password in clear text, will not be processed in any way and used directly" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting used" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting used" + } + ] + } + }, + "OperatingSystemType": { + "type": "string", + "description": "The operation system required by the code in service.", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OperatingSystemType", + "modelAsString": true, + "values": [ + { + "value": "Linux", + "description": "The required operating system is Linux." + }, + { + "value": "Windows", + "description": "The required operating system is Windows." + } + ] + } + }, + "Probe": { + "description": "Probes have a number of fields that you can use to control their behavior.", + "properties": { + "initialDelaySeconds": { + "type": "integer", + "description": "The initial delay in seconds to start executing probe once codepackage has started.", + "default": 0 + }, + "periodSeconds": { + "type": "integer", + "description": "Periodic seconds to execute probe.", + "default": 10 + }, + "timeoutSeconds": { + "type": "integer", + "description": "Period after which probe is considered as failed if it hasn't completed successfully.", + "default": 1 + }, + "successThreshold": { + "type": "integer", + "description": "The count of successful probe executions after which probe is considered success.", + "default": 1 + }, + "failureThreshold": { + "type": "integer", + "description": "The count of failures after which probe is considered failed.", + "default": 3 + }, + "exec": { + "$ref": "#/definitions/ProbeExec", + "description": "Exec command to run inside the container." + }, + "httpGet": { + "$ref": "#/definitions/ProbeHttpGet", + "description": "Http probe for the container." + }, + "tcpSocket": { + "$ref": "#/definitions/ProbeTcpSocket", + "description": "Tcp port to probe inside the container." + } + } + }, + "ProbeExec": { + "description": "Exec command to run inside the container.", + "properties": { + "command": { + "description": "Comma separated command to run inside the container for example \"sh, -c, echo hello world\".", + "type": "string" + } + }, + "required": [ + "command" + ] + }, + "ProbeHttpGet": { + "description": "Http probe for the container.", + "properties": { + "port": { + "description": "Port to access for probe.", + "type": "integer" + }, + "path": { + "description": "Path to access on the HTTP request.", + "type": "string" + }, + "host": { + "description": "Host IP to connect to.", + "type": "string" + }, + "httpHeaders": { + "description": "Headers to set in the request.", + "type": "array", + "items": { + "$ref": "#/definitions/ProbeHttpGetHeaders" + } + }, + "scheme": { + "type": "string", + "description": "Scheme for the http probe. Can be Http or Https.", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "scheme", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "Indicates that the probe is http." + }, + { + "value": "https", + "description": "Indicates that the probe is https. No cert validation." + } + ] + } + } + }, + "required": [ + "port" + ] + }, + "ProbeHttpGetHeaders": { + "description": "Http headers.", + "properties": { + "name": { + "description": "The name of the header.", + "type": "string" + }, + "value": { + "description": "The value of the header.", + "type": "string" + } + }, + "required": [ + "name", + "value" + ] + }, + "ProbeTcpSocket": { + "description": "Tcp port to probe inside the container.", + "properties": { + "port": { + "description": "Port to access for probe.", + "type": "integer" + } + }, + "required": [ + "port" + ] + }, + "ReliableCollectionsRef": { + "description": "Specifying this parameter adds support for reliable collections", + "properties": { + "name": { + "description": "Name of ReliableCollection resource. Right now it's not used and you can use any string.", + "type": "string" + }, + "doNotPersistState": { + "description": "False (the default) if ReliableCollections state is persisted to disk as usual. True if you do not want to persist state, in which case replication is still enabled and you can use ReliableCollections as distributed cache.", + "type": "boolean" + } + }, + "required": [ + "name" + ] + }, + "ResourceLimits": { + "description": "This type describes the resource limits for a given container. It describes the most amount of resources a container is allowed to use before being restarted.", + "properties": { + "memoryInGB": { + "description": "The memory limit in GB.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "CPU limits in cores. At present, only full cores are supported.", + "type": "number", + "format": "double" + } + } + }, + "ResourceRequests": { + "description": "This type describes the requested resources for a given container. It describes the least amount of resources required for the container. A container can consume more than requested resources up to the specified limits before being restarted. Currently, the requested resources are treated as limits.", + "properties": { + "memoryInGB": { + "description": "The memory request in GB for this container.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "Requested number of CPU cores. At present, only full cores are supported.", + "type": "number", + "format": "double" + } + }, + "required": [ + "memoryInGB", + "cpu" + ] + }, + "ResourceRequirements": { + "description": "This type describes the resource requirements for a container or a service.", + "properties": { + "requests": { + "$ref": "#/definitions/ResourceRequests", + "description": "Describes the requested resources for a given container." + }, + "limits": { + "$ref": "#/definitions/ResourceLimits", + "description": "Describes the maximum limits on the resources for a given container." + } + }, + "required": [ + "requests" + ] + }, + "RestartPolicy": { + "type": "string", + "description": "Enumerates the restart policy for RunToCompletionExecutionPolicy", + "enum": [ + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "RestartPolicy", + "modelAsString": true, + "values": [ + { + "value": "OnFailure", + "description": "Service will be restarted when it encounters a failure." + }, + { + "value": "Never", + "description": "Service will never be restarted. If the service encounters a failure, it will move to Failed state." + } + ] + } + }, + "RunToCompletionExecutionPolicy": { + "description": "The run to completion execution policy, the service will perform its desired operation and complete successfully. If the service encounters failure, it will restarted based on restart policy specified. If the service completes its operation successfully, it will not be restarted again.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionPolicy" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "RunToCompletion", + "properties": { + "restart": { + "$ref": "#/definitions/RestartPolicy", + "description": "Enumerates the restart policy for RunToCompletionExecutionPolicy" + } + }, + "required": [ + "restart" + ] + }, + "ServiceProperties": { + "description": "Describes properties of a service resource.", + "properties": { + "description": { + "type": "string", + "description": "User readable description of the service." + }, + "replicaCount": { + "type": "integer", + "description": "The number of replicas of the service to create. Defaults to 1 if not specified." + }, + "executionPolicy": { + "$ref": "#/definitions/ExecutionPolicy", + "description": "The execution policy of the service" + }, + "autoScalingPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoScalingPolicy" + }, + "description": "Auto scaling policies" + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/ResourceStatus", + "description": "Status of the service." + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "Gives additional information about the current status of the service." + }, + "healthState": { + "readOnly": true, + "$ref": "#/definitions/HealthState", + "description": "Describes the health state of an application resource." + }, + "unhealthyEvaluation": { + "readOnly": true, + "type": "string", + "description": "When the service's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the service is marked unhealthy." + }, + "identityRefs": { + "description": "The service identity list.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceIdentity" + } + }, + "dnsName": { + "type": "string", + "description": "Dns name of the service." + } + } + }, + "ServiceReplicaProperties": { + "description": "Describes the properties of a service replica.", + "properties": { + "osType": { + "$ref": "#/definitions/OperatingSystemType", + "description": "The operation system required by the code in service." + }, + "codePackages": { + "description": "Describes the set of code packages that forms the service. A code package describes the container and the properties for running it. All the code packages are started together on the same host and share the same context (network, process etc.).", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerCodePackageProperties" + } + }, + "networkRefs": { + "type": "array", + "description": "The names of the private networks that this service needs to be part of.", + "items": { + "$ref": "#/definitions/NetworkRef" + } + }, + "diagnostics": { + "$ref": "#/definitions/DiagnosticsRef", + "description": "Reference to sinks in DiagnosticsDescription." + } + }, + "required": [ + "osType", + "codePackages" + ] + }, + "Setting": { + "description": "Describes a setting for the container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".", + "properties": { + "type": { + "$ref": "#/definitions/SettingType", + "description": "The type of the setting being given in value" + }, + "name": { + "description": "The name of the setting.", + "type": "string" + }, + "value": { + "description": "The value of the setting, will be processed based on the type provided.", + "type": "string" + } + } + }, + "SettingType": { + "type": "string", + "description": "The type of the setting being given in value", + "default": "ClearText", + "enum": [ + "ClearText", + "KeyVaultReference", + "SecretValueReference" + ], + "x-ms-enum": { + "name": "SettingType", + "modelAsString": true, + "values": [ + { + "value": "ClearText", + "description": "The setting in clear text, will not be processed in any way and passed in as is" + }, + { + "value": "KeyVaultReference", + "description": "The URI to a KeyVault secret version, will be resolved using the application's managed identity (this type is only valid if the app was assigned a managed identity) before getting passed in" + }, + { + "value": "SecretValueReference", + "description": "The reference to a SecretValue resource, will be resolved before getting passed in" + } + ] + } + }, + "ServiceReplicaDescription": { + "description": "Describes a replica of a service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceReplicaProperties" + } + ], + "properties": { + "replicaName": { + "type": "string", + "description": "Name of the replica." + } + }, + "required": [ + "replicaName" + ] + }, + "AverageLoadScalingTrigger": { + "description": "Describes the average load trigger used for auto scaling.", + "allOf": [ + { + "$ref": "#/definitions/AutoScalingTrigger" + }, + { + "type": "object" + } + ], + "x-ms-discriminator-value": "AverageLoad", + "properties": { + "metric": { + "$ref": "#/definitions/AutoScalingMetric", + "description": "Description of the metric that is used for scaling." + }, + "lowerLoadThreshold": { + "type": "number", + "format": "double", + "description": "Lower load threshold (if average load is below this threshold, service will scale down)." + }, + "upperLoadThreshold": { + "type": "number", + "format": "double", + "description": "Upper load threshold (if average load is above this threshold, service will scale up)." + }, + "scaleIntervalInSeconds": { + "type": "integer", + "description": "Scale interval that indicates how often will this trigger be checked.", + "minimum": 60 + } + }, + "required": [ + "metric", + "lowerLoadThreshold", + "upperLoadThreshold", + "scaleIntervalInSeconds" + ] + }, + "ServiceIdentity": { + "description": "Map service identity friendly name to an application identity.", + "properties": { + "name": { + "description": "The identity friendly name.", + "type": "string" + }, + "identityRef": { + "description": "The application identity name.", + "type": "string" + } + } + }, + "ServiceResourceName": { + "type": "string", + "description": "Name of the Service resource." + }, + "ServiceResourceDescription": { + "description": "This type describes a service resource.", + "properties": { + "name": { + "$ref": "#/definitions/ServiceResourceName", + "description": "Name of the Service resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "This type describes properties of a service resource." + } + }, + "required": [ + "name", + "properties" + ] + }, + "ServiceResourceProperties": { + "description": "This type describes properties of a service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceReplicaProperties" + }, + { + "$ref": "#/definitions/ServiceProperties" + } + ] + }, + "PagedServiceResourceDescriptionList": { + "type": "object", + "description": "The list of service resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/ServiceResourceDescription" + } + } + } + }, + "PagedServiceReplicaDescriptionList": { + "description": "The list of service resource replicas in the cluster. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "List of service resource replica description.", + "items": { + "$ref": "#/definitions/ServiceReplicaDescription" + } + } + } + }, + "ApplicationResourceName": { + "type": "string", + "description": "Name of the Application resource." + }, + "ApplicationResourceDescription": { + "description": "This type describes a application resource.", + "properties": { + "name": { + "$ref": "#/definitions/ApplicationResourceName", + "description": "Name of the Application resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "description": "Describes properties of a application resource." + }, + "identity": { + "$ref": "#/definitions/IdentityDescription", + "description": "Describes the identity of the application." + } + }, + "required": [ + "name", + "properties" + ] + }, + "PagedApplicationResourceDescriptionList": { + "type": "object", + "description": "The list of application resources. The list is paged when all of the results cannot fit in a single message. The next set of results can be obtained by executing the same query with the continuation token provided in this list.", + "properties": { + "ContinuationToken": { + "$ref": "#/definitions/ContinuationToken", + "description": "The continuation token parameter is used to obtain next set of results. The continuation token is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token is not included in the response." + }, + "Items": { + "type": "array", + "description": "One page of the list.", + "items": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + } + } + } + }, + "parameters": { + "CodePackageNameRequiredPathParam": { + "name": "codePackageName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of code package of the service." + }, + "ApiVersion_6-4-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.4-preview" + ], + "required": true, + "default": "6.4-preview", + "description": "The version of the API. This parameter is required and its value must be '6.4-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-4-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.4-preview", + "description": "The version number for the preview functionality of 6.4 runtime" + } + ] + } + }, + "TailOptionalQueryParam": { + "name": "Tail", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "Number of lines to show from the end of the logs. Default is 100. 'all' to show the complete logs." + }, + "ApiVersion_6-0-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.0-preview" + ], + "required": true, + "default": "6.0-preview", + "description": "The version of the API. This parameter is required and its value must be '\"6.0-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-0-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.0-preview", + "description": "The version number for the preview functionality of 6.0 runtime." + } + ] + } + }, + "ApiVersion_6-0_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.0" + ], + "required": true, + "default": "6.0", + "description": "The version of the API. This parameter is required and its value must be '6.0'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-0_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.0", + "description": "The 6.0 version of the API." + } + ] + } + }, + "ApiVersion_6-1_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.1" + ], + "required": true, + "default": "6.1", + "description": "The version of the API. This parameter is required and its value must be '6.1'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accept any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0, but if the runtime is 6.1, in order to make it easier to write the clients, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-1_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.1", + "description": "The 6.1 version of the API." + } + ] + } + }, + "ApiVersion_6-2_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.2" + ], + "required": true, + "default": "6.2", + "description": "The version of the API. This parameter is required and its value must be '6.2'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-2_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.2", + "description": "The 6.2 version of the API." + } + ] + } + }, + "ApiVersion_6-2-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.2-preview" + ], + "required": true, + "default": "6.2-preview", + "description": "The version of the API. This parameter is required and its value must be '6.2-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-2-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.2-preview", + "description": "The version number for the preview functionality of 6.2 runtime" + } + ] + } + }, + "ApiVersion_6-3_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.3" + ], + "required": true, + "default": "6.3", + "description": "The version of the API. This parameter is required and its value must be '6.3'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-3_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.3", + "description": "The 6.3 version of the API." + } + ] + } + }, + "ApiVersion_6-3-Preview_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.3-preview" + ], + "required": true, + "default": "6.3-preview", + "description": "The version of the API. This parameter is required and its value must be '6.3-preview'.", + "x-ms-enum": { + "name": "ApiVersion_6-3-Preview_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.3-preview", + "description": "The version number for the preview functionality of 6.3 runtime" + } + ] + } + }, + "ApiVersion_6-4_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.4" + ], + "required": true, + "default": "6.4", + "description": "The version of the API. This parameter is required and its value must be '6.4'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-4_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.4", + "description": "The 6.4 version of the API." + } + ] + } + }, + "ApiVersion_6-5_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "6.5" + ], + "required": true, + "default": "6.5", + "description": "The version of the API. This parameter is required and its value must be '6.5'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_6-5_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "6.5", + "description": "The 6.5 version of the API." + } + ] + } + }, + "ApiVersion_7-0_RequiredQueryParam": { + "name": "api-version", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "7.0" + ], + "required": true, + "default": "7.0", + "description": "The version of the API. This parameter is required and its value must be '7.0'.\n\nService Fabric REST API version is based on the runtime version in which the API was introduced or was changed. Service Fabric runtime supports more than one version of the API. This version is the latest supported version of the API. If a lower API version is passed, the returned response may be different from the one documented in this specification.\n\nAdditionally the runtime accepts any version that is higher than the latest supported version up to the current version of the runtime. So if the latest API version is 6.0 and the runtime is 6.1, the runtime will accept version 6.1 for that API. However the behavior of the API will be as per the documented 6.0 version.", + "x-ms-enum": { + "name": "ApiVersion_7-0_RequiredQueryParam", + "modelAsString": true, + "values": [ + { + "value": "7.0", + "description": "The 7.0 version of the API." + } + ] + } + }, + "ApplicationDefinitionKindFilterOptionalQueryParam": { + "name": "ApplicationDefinitionKindFilter", + "description": "Used to filter on ApplicationDefinitionKind, which is the mechanism used to define a Service Fabric application.\n- Default - Default value, which performs the same function as selecting \"All\". The value is 0.\n- All - Filter that matches input with any ApplicationDefinitionKind value. The value is 65535.\n- ServiceFabricApplicationDescription - Filter that matches input with ApplicationDefinitionKind value ServiceFabricApplicationDescription. The value is 1.\n- Compose - Filter that matches input with ApplicationDefinitionKind value Compose. The value is 2.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationHealthPolicyOptionalBodyParam": { + "name": "ApplicationHealthPolicy", + "in": "body", + "description": "Describes the health policies used to evaluate the health of an application or one of its children.\nIf not present, the health evaluation uses the health policy from application manifest or the default health policy.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "ApplicationIdRequiredPathParam": { + "name": "applicationId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the application. This is typically the full name of the application without the 'fabric:' URI scheme.\nStarting from version 6.0, hierarchical names are delimited with the \"~\" character.\nFor example, if the application name is \"fabric:/myapp/app1\", the application identity would be \"myapp~app1\" in 6.0+ and \"myapp/app1\" in previous versions." + }, + "ApplicationsHealthStateFilterOptionalQueryParam": { + "name": "ApplicationsHealthStateFilter", + "description": "Allows filtering of the application health state objects returned in the result of cluster health\nquery based on their health state.\nThe possible values for this parameter include integer value obtained from members or bitwise operations\non members of HealthStateFilter enumeration. Only applications that match the filter are returned.\nAll applications are used to evaluate the aggregated health state. If not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of applications with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationTypeDefinitionKindFilterOptionalQueryParam": { + "name": "ApplicationTypeDefinitionKindFilter", + "description": "Used to filter on ApplicationTypeDefinitionKind which is the mechanism used to define a Service Fabric application type.\n- Default - Default value, which performs the same function as selecting \"All\". The value is 0.\n- All - Filter that matches input with any ApplicationTypeDefinitionKind value. The value is 65535.\n- ServiceFabricApplicationPackage - Filter that matches input with ApplicationTypeDefinitionKind value ServiceFabricApplicationPackage. The value is 1.\n- Compose - Filter that matches input with ApplicationTypeDefinitionKind value Compose. The value is 2.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ApplicationTypeNameOptionalQueryParam": { + "name": "ApplicationTypeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The application type name used to filter the applications to query for. This value should not contain the application type version." + }, + "ApplicationTypeNameRequiredPathParam": { + "name": "applicationTypeName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the application type." + }, + "ApplicationTypeVersionOptionalQueryParam": { + "name": "ApplicationTypeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The version of the application type." + }, + "ApplicationTypeVersionRequiredQueryParam": { + "name": "ApplicationTypeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The version of the application type." + }, + "ProvisionApplicationTypeDescriptionBaseRequiredBodyParam": { + "name": "ProvisionApplicationTypeDescriptionBaseRequiredBodyParam", + "in": "body", + "description": "The base type of provision application type description which supports either image store-based provision or external store-based provision.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ProvisionApplicationTypeDescriptionBase" + } + }, + "ClusterConfigurationUpgradeDescriptionRequiredBodyParam": { + "name": "ClusterConfigurationUpgradeDescription", + "in": "body", + "description": "Parameters for a standalone cluster configuration upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterConfigurationUpgradeDescription" + } + }, + "ClusterHealthPoliciesOptionalBodyParam": { + "name": "ClusterHealthPolicies", + "in": "body", + "description": "Describes the health policies used to evaluate the cluster health.\nIf not present, the health evaluation uses the cluster health policy defined in the cluster manifest or the default cluster health policy.\nBy default, each application is evaluated using its specific application health policy, defined in the application manifest, or the default health policy, if no policy is defined in manifest.\nIf the application health policy map is specified, and it has an entry for an application, the specified application health policy\nis used to evaluate the application health.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthPolicies" + } + }, + "ClusterHealthPolicyOptionalBodyParam": { + "name": "ClusterHealthPolicy", + "in": "body", + "description": "Describes the health policies used to evaluate the health of a cluster or node. If not present, the health evaluation uses the health policy from cluster manifest or the default health policy.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthPolicy" + } + }, + "ClusterHealthChunkQueryDescriptionOptionalBodyParam": { + "name": "ClusterHealthChunkQueryDescription", + "in": "body", + "description": "Describes the cluster and application health policies used to evaluate the cluster health and the filters to select which cluster entities to be returned.\nIf the cluster health policy is present, it is used to evaluate the cluster events and the cluster nodes. If not present, the health evaluation uses the cluster health policy defined in the cluster manifest or the default cluster health policy.\nBy default, each application is evaluated using its specific application health policy, defined in the application manifest, or the default health policy, if no policy is defined in manifest.\nIf the application health policy map is specified, and it has an entry for an application, the specified application health policy\nis used to evaluate the application health.\nUsers can specify very flexible filters to select which cluster entities to include in response. The selection can be done based on the entities health state and based on the hierarchy.\nThe query can return multi-level children of the entities based on the specified filters. For example, it can return one application with a specified name, and for this application, return\nonly services that are in Error or Warning, and all partitions and replicas for one of these services.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ClusterHealthChunkQueryDescription" + } + }, + "CodePackageInstanceIdRequiredQueryParam": { + "name": "CodePackageInstanceId", + "description": "ID that uniquely identifies a code package instance deployed on a service fabric node.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "CodePackageNameRequiredQueryParam": { + "name": "CodePackageName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of code package specified in service manifest registered as part of an application type in a Service Fabric cluster." + }, + "CodeVersionOptionalQueryParam": { + "name": "CodeVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The product version of Service Fabric." + }, + "ConfigVersionOptionalQueryParam": { + "name": "ConfigVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The config version of Service Fabric." + }, + "ConfigurationApiVersionRequiredQueryParam": { + "name": "ConfigurationApiVersion", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The API version of the Standalone cluster json configuration." + }, + "ContainerApiRequiredBodyParam": { + "name": "ContainerApiRequestBody", + "in": "body", + "description": "Parameters for making container API call", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ContainerApiRequestBody" + } + }, + "ContinuationTokenOptionalQueryParam": { + "name": "ContinuationToken", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "The continuation token parameter is used to obtain next set of results. A continuation token with a non-empty value is included in the response of the API when the results from the system do not fit in a single response. When this value is passed to the next API call, the API returns next set of results. If there are no further results, then the continuation token does not contain a value. The value of this parameter should not be URL encoded." + }, + "DeployedApplicationsHealthStateFilterOptionalQueryParam": { + "name": "DeployedApplicationsHealthStateFilter", + "description": "Allows filtering of the deployed applications health state objects returned in the result of application health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states. Only deployed applications that match the filter will be returned.\nAll deployed applications are used to evaluate the aggregated health state. If not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values, obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of deployed applications with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeployedServicePackagesHealthStateFilterOptionalQueryParam": { + "name": "DeployedServicePackagesHealthStateFilter", + "description": "Allows filtering of the deployed service package health state objects returned in the result of deployed application health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly deployed service packages that match the filter are returned. All deployed service packages are used to evaluate the aggregated health state of the deployed application.\nIf not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value can be a combination of these values, obtained using the bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of service packages with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeploymentNameRequiredPathParam": { + "name": "deploymentName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the deployment." + }, + "EventsHealthStateFilterOptionalQueryParam": { + "name": "EventsHealthStateFilter", + "description": "Allows filtering the collection of HealthEvent objects returned based on health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly events that match the filter are returned. All events are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these values, obtained using the bitwise 'OR' operator. For example, If the provided value is 6 then all of the events with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ExcludeApplicationParametersOptionalQueryParam": { + "name": "ExcludeApplicationParameters", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "The flag that specifies whether application parameters will be excluded from the result." + }, + "HealthInformationRequiredBodyParam": { + "name": "HealthInformation", + "in": "body", + "description": "Describes the health information for the health report. This information needs to be present in all of the health reports sent to the health manager.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/HealthInformation" + } + }, + "NodeNameRequiredPathParam": { + "name": "nodeName", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the node." + }, + "NodesHealthStateFilterOptionalQueryParam": { + "name": "NodesHealthStateFilter", + "description": "Allows filtering of the node health state objects returned in the result of cluster health query\nbased on their health state. The possible values for this parameter include integer value of one of the\nfollowing health states. Only nodes that match the filter are returned. All nodes are used to evaluate the aggregated health state.\nIf not specified, all entries are returned.\nThe state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator.\nFor example, if the provided value is 6 then health state of nodes with HealthState value of OK (2) and Warning (4) are returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "NodeStatusFilterOptionalQueryParam": { + "name": "NodeStatusFilter", + "description": "Allows filtering the nodes based on the NodeStatus. Only the nodes that are matching the specified filter value will be returned. The filter value can be one of the following.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default", + "all", + "up", + "down", + "enabling", + "disabling", + "disabled", + "unknown", + "removed" + ], + "required": false, + "default": "default", + "x-ms-enum": { + "name": "NodeStatusFilter", + "modelAsString": true, + "values": [ + { + "value": "default", + "description": "This filter value will match all of the nodes excepts the ones with status as Unknown or Removed." + }, + { + "value": "all", + "description": "This filter value will match all of the nodes." + }, + { + "value": "up", + "description": "This filter value will match nodes that are Up." + }, + { + "value": "down", + "description": "This filter value will match nodes that are Down." + }, + { + "value": "enabling", + "description": "This filter value will match nodes that are in the process of being enabled with status as Enabling." + }, + { + "value": "disabling", + "description": "This filter value will match nodes that are in the process of being disabled with status as Disabling." + }, + { + "value": "disabled", + "description": "This filter value will match nodes that are Disabled." + }, + { + "value": "unknown", + "description": "This filter value will match nodes whose status is Unknown. A node would be in Unknown state if Service Fabric does not have authoritative information about that node. This can happen if the system learns about a node at runtime." + }, + { + "value": "removed", + "description": "This filter value will match nodes whose status is Removed. These are the nodes that are removed from the cluster using the RemoveNodeState API." + } + ] + } + }, + "PartitionIdOptionalQueryParam": { + "name": "PartitionId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": false, + "description": "The identity of the partition." + }, + "PartitionIdRequiredPathParam": { + "name": "partitionId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "format": "uuid", + "required": true, + "description": "The identity of the partition." + }, + "ProvisionFabricDescriptionRequiredBodyParam": { + "name": "ProvisionFabricDescription", + "in": "body", + "description": "Describes the parameters for provisioning a cluster.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ProvisionFabricDescription" + } + }, + "UnprovisionFabricDescriptionRequiredBodyParam": { + "name": "UnprovisionFabricDescription", + "in": "body", + "description": "Describes the parameters for unprovisioning a cluster.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UnprovisionFabricDescription" + } + }, + "ResumeClusterUpgradeDescriptionRequiredBodyParam": { + "name": "ResumeClusterUpgradeDescription", + "in": "body", + "description": "Describes the parameters for resuming a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ResumeClusterUpgradeDescription" + } + }, + "UpdateClusterUpgradeDescriptionRequiredBodyParam": { + "name": "UpdateClusterUpgradeDescription", + "in": "body", + "description": "Parameters for updating a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UpdateClusterUpgradeDescription" + } + }, + "StartClusterUpgradeDescriptionRequiredBodyParam": { + "name": "StartClusterUpgradeDescription", + "in": "body", + "description": "Describes the parameters for starting a cluster upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/StartClusterUpgradeDescription" + } + }, + "ReplicaHealthReportServiceKindRequiredQueryParam": { + "name": "ServiceKind", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "description": "The kind of service replica (Stateless or Stateful) for which the health is being reported. Following are the possible values.", + "type": "string", + "enum": [ + "Stateless", + "Stateful" + ], + "default": "Stateful", + "x-ms-enum": { + "name": "ReplicaHealthReportServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1" + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ReplicaIdRequiredPathParam": { + "name": "replicaId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identifier of the replica." + }, + "ReplicasHealthStateFilerOptionalQueryParam": { + "name": "ReplicasHealthStateFilter", + "description": "Allows filtering the collection of ReplicaHealthState objects on the partition. The value can be obtained from members or bitwise operations on members of HealthStateFilter. Only replicas that match the filter will be returned. All replicas will be used to evaluate the aggregated health state. If not specified, all entries will be returned.The state values are flag-based enumeration, so the value could be a combination of these values obtained using bitwise 'OR' operator. For example, If the provided value is 6 then all of the events with HealthState value of OK (2) and Warning (4) will be returned. The possible values for this parameter include integer value of one of the following health states.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "ServiceIdRequiredPathParam": { + "name": "serviceId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the service. This ID is typically the full name of the service without the 'fabric:' URI scheme.\nStarting from version 6.0, hierarchical names are delimited with the \"~\" character.\nFor example, if the service name is \"fabric:/myapp/app1/svc1\", the service identity would be \"myapp~app1~svc1\" in 6.0+ and \"myapp/app1/svc1\" in previous versions." + }, + "ServiceManifestNameOptionalQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of a service manifest registered as part of an application type in a Service Fabric cluster." + }, + "ServiceManifestNameRequiredQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of a service manifest registered as part of an application type in a Service Fabric cluster." + }, + "ServicePackageNameRequiredPathParam": { + "name": "servicePackageName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the service package." + }, + "ServicesHealthStateFilterOptionalQueryParam": { + "name": "ServicesHealthStateFilter", + "description": "Allows filtering of the services health state objects returned in the result of services health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly services that match the filter are returned. All services are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these values,\nobtained using bitwise 'OR' operator. For example, if the provided value is 6 then health state of services with HealthState value of OK (2) and Warning (4) will be returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "CreateServiceFromTemplateRequiredBodyParam": { + "name": "ServiceFromTemplateDescription", + "in": "body", + "description": "Describes the service that needs to be created from the template defined in the application manifest.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceFromTemplateDescription" + } + }, + "ServiceTypeNameOptionalQueryParam": { + "name": "ServiceTypeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The service type name used to filter the services to query for." + }, + "InfrastructureCommandRequiredQueryParam": { + "name": "Command", + "description": "The text of the command to be invoked. The content of the command is infrastructure-specific.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "InfrastructureServiceIdOptionalQueryParam": { + "name": "ServiceId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "description": "The identity of the infrastructure service. This is the full name of the infrastructure service without the 'fabric:' URI scheme. This parameter required only for the cluster that has more than one instance of infrastructure service running.", + "required": false + }, + "ForceRemoveOptionalQueryParam": { + "name": "ForceRemove", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Remove a Service Fabric application or service forcefully without going through the graceful shutdown sequence. This parameter can be used to forcefully delete an application or service for which delete is timing out due to issues in the service code that prevents graceful close of replicas." + }, + "ForceRemoveReplicaOptionalQueryParam": { + "name": "ForceRemove", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Remove a Service Fabric application or service forcefully without going through the graceful shutdown sequence. This parameter can be used to forcefully delete an application or service for which delete is timing out due to issues in the service code that prevents graceful close of replicas." + }, + "DeactivationIntentDescriptionRequiredBodyParam": { + "name": "DeactivationIntentDescription", + "in": "body", + "description": "Describes the intent or reason for deactivating the node.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DeactivationIntentDescription" + } + }, + "RestartNodeDescriptionRequiredBodyParam": { + "name": "RestartNodeDescription", + "in": "body", + "description": "The instance of the node to be restarted and a flag indicating the need to take dump of the fabric process.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestartNodeDescription" + } + }, + "ApplicationUpgradeDescriptionRequiredBodyParam": { + "name": "ApplicationUpgradeDescription", + "in": "body", + "description": "Parameters for an application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeDescription" + } + }, + "ComposeDeploymentUpgradeDescriptionRequiredBodyParam": { + "name": "ComposeDeploymentUpgradeDescription", + "in": "body", + "description": "Parameters for upgrading compose deployment.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ComposeDeploymentUpgradeDescription" + } + }, + "ApplicationTypeImageStorePathRequiredBodyParam": { + "name": "ApplicationTypeImageStorePath", + "in": "body", + "description": "The relative path for the application package in the image store specified during the prior copy operation.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationTypeImageStorePath" + } + }, + "UnprovisionApplicationTypeRequiredBodyParam": { + "name": "UnprovisionApplicationTypeDescriptionInfo", + "in": "body", + "description": "The relative path for the application package in the image store specified during the prior copy operation.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/UnprovisionApplicationTypeDescriptionInfo" + } + }, + "UpgradeOrchestrationServiceStateRequiredBodyParam": { + "name": "UpgradeOrchestrationServiceState", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "description": "Service state of Service Fabric Upgrade Orchestration Service.", + "schema": { + "$ref": "#/definitions/UpgradeOrchestrationServiceState" + } + }, + "ChaosParametersRequiredBodyParam": { + "name": "ChaosParameters", + "in": "body", + "description": "Describes all the parameters to configure a Chaos run.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ChaosParameters" + } + }, + "StartTimeUtcOptionalQueryParam": { + "name": "StartTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The Windows file time representing the start time of the time range for which a Chaos report is to be generated. Consult [DateTime.ToFileTimeUtc Method](https://msdn.microsoft.com/library/system.datetime.tofiletimeutc(v=vs.110).aspx) for details." + }, + "EndTimeUtcOptionalQueryParam": { + "name": "EndTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The Windows file time representing the end time of the time range for which a Chaos report is to be generated. Consult [DateTime.ToFileTimeUtc Method](https://msdn.microsoft.com/library/system.datetime.tofiletimeutc(v=vs.110).aspx) for details." + }, + "ApplicationNameRequiredQueryParam": { + "name": "ApplicationName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of application to create from compose file. This is typically the full name of the application including 'fabric:' URI scheme." + }, + "CreateComposeDeploymentRequiredBodyParam": { + "name": "CreateComposeDeploymentDescription", + "in": "body", + "description": "Describes the compose deployment that needs to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/CreateComposeDeploymentDescription" + } + }, + "PasswordEncryptedOptionalQueryParam": { + "name": "PasswordEncrypted", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Indicates that supplied container repository password is encrypted." + }, + "RepositoryPasswordOptionalQueryParam": { + "name": "RepositoryPassword", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The password for supplied username to connect to container repository." + }, + "RepositoryUserNameOptionalQueryParam": { + "name": "RepositoryUserName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The user name to connect to container repository." + }, + "MaxResultsOptionalQueryParam": { + "name": "MaxResults", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int64", + "minimum": 0, + "default": 0, + "required": false, + "description": "The maximum number of results to be returned as part of the paged queries. This parameter defines the upper bound on the number of results returned. The results returned can be less than the specified maximum results if they do not fit in the message as per the max message size restrictions defined in the configuration. If this parameter is zero or not specified, the paged query includes as many results as possible that fit in the return message." + }, + "ApplicationDescriptionRequiredBodyParam": { + "name": "ApplicationDescription", + "in": "body", + "description": "Description for creating an application.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationDescription" + } + }, + "ServiceDescriptionRequiredBodyParam": { + "name": "ServiceDescription", + "in": "body", + "description": "The information necessary to create a service.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceDescription" + } + }, + "ServiceUpdateDescriptionRequiredBodyParam": { + "name": "ServiceUpdateDescription", + "in": "body", + "description": "The information necessary to update a service.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ServiceUpdateDescription" + } + }, + "ImageStoreCopyDescriptionRequiredBodyParam": { + "name": "ImageStoreCopyDescription", + "in": "body", + "description": "Describes the copy description for the image store.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ImageStoreCopyDescription" + } + }, + "CodePackageNameOptionalQueryParam": { + "name": "CodePackageName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of code package specified in service manifest registered as part of an application type in a Service Fabric cluster." + }, + "RestartDeployedCodePackageRequiredBodyParam": { + "name": "RestartDeployedCodePackageDescription", + "in": "body", + "description": "Describes the deployed code package on Service Fabric node to restart.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestartDeployedCodePackageDescription" + } + }, + "PartitionsHealthStateFilterOptionalQueryParam": { + "name": "PartitionsHealthStateFilter", + "description": "Allows filtering of the partitions health state objects returned in the result of service health query based on their health state.\nThe possible values for this parameter include integer value of one of the following health states.\nOnly partitions that match the filter are returned. All partitions are used to evaluate the aggregated health state.\nIf not specified, all entries are returned. The state values are flag-based enumeration, so the value could be a combination of these value\nobtained using bitwise 'OR' operator. For example, if the provided value is 6 then health state of partitions with HealthState value of OK (2) and Warning (4) will be returned.\n\n- Default - Default value. Matches any HealthState. The value is zero.\n- None - Filter that doesn't match any HealthState value. Used in order to return no results on a given collection of states. The value is 1.\n- Ok - Filter that matches input with HealthState value Ok. The value is 2.\n- Warning - Filter that matches input with HealthState value Warning. The value is 4.\n- Error - Filter that matches input with HealthState value Error. The value is 8.\n- All - Filter that matches input with any HealthState value. The value is 65535.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 0 + }, + "DeployedServiceType_ServiceManifestNameOptionalQueryParam": { + "name": "ServiceManifestName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the service manifest to filter the list of deployed service type information. If specified, the response will only contain the information about service types that are defined in this service manifest." + }, + "ServiceTypeNameRequiredPathParam": { + "name": "serviceTypeName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "Specifies the name of a Service Fabric service type." + }, + "ImageStoreContentPathRequiredPathParam": { + "name": "contentPath", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "Relative path to file or folder in the image store from its root." + }, + "PartitionKeyTypeOptionalQueryParam": { + "name": "PartitionKeyType", + "description": "Key type for the partition. This parameter is required if the partition scheme for the service is Int64Range or Named. The possible values are following.\n- None (1) - Indicates that the PartitionKeyValue parameter is not specified. This is valid for the partitions with partitioning scheme as Singleton. This is the default value. The value is 1.\n- Int64Range (2) - Indicates that the PartitionKeyValue parameter is an int64 partition key. This is valid for the partitions with partitioning scheme as Int64Range. The value is 2.\n- Named (3) - Indicates that the PartitionKeyValue parameter is a name of the partition. This is valid for the partitions with partitioning scheme as Named. The value is 3.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false + }, + "PartitionKeyValueOptionalQueryParam": { + "name": "PartitionKeyValue", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "Partition key. This is required if the partition scheme for the service is Int64Range or Named. \nThis is not the partition ID, but rather, either the integer key value, or the name of the partition ID.\nFor example, if your service is using ranged partitions from 0 to 10, then they PartitionKeyValue would be an\ninteger in that range. Query service description to see the range or name." + }, + "PreviousRspVersionOptionalQueryParam": { + "name": "PreviousRspVersion", + "in": "query", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": false, + "description": "The value in the Version field of the response that was received previously. This is required if the user knows that the result that was gotten previously is stale." + }, + "DataLossModeRequiredQueryParam": { + "name": "DataLossMode", + "description": "This enum is passed to the StartDataLoss API to indicate what type of data loss to induce.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "PartialDataLoss", + "FullDataLoss" + ], + "required": true, + "x-ms-enum": { + "name": "DataLossMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "PartialDataLoss", + "description": "PartialDataLoss option will cause a quorum of replicas to go down, triggering an OnDataLoss event in the system for the given partition." + }, + { + "value": "FullDataLoss", + "description": "FullDataLoss option will drop all the replicas which means that all the data will be lost." + } + ] + } + }, + "FaultOperationIdRequiredQueryParam": { + "name": "OperationId", + "description": "A GUID that identifies a call of this API. This is passed into the corresponding GetProgress API", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": true + }, + "ForceRequiredQueryParam": { + "name": "Force", + "description": "Indicates whether to gracefully roll back and clean up internal system state modified by executing the user-induced operation.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": true, + "default": false + }, + "NodeInstanceIdRequiredQueryParam": { + "name": "NodeInstanceId", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The node instance ID of the target node. This can be determined through GetNodeInfo API." + }, + "NodeTransitionTypeRequiredQueryParam": { + "name": "NodeTransitionType", + "description": "Indicates the type of transition to perform. NodeTransitionType.Start will start a stopped node. NodeTransitionType.Stop will stop a node that is up.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "Start", + "Stop" + ], + "required": true, + "x-ms-enum": { + "name": "NodeTransitionType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "Start", + "description": "Transition a stopped node to up." + }, + { + "value": "Stop", + "description": "Transition an up node to stopped." + } + ] + } + }, + "QuorumLossDurationRequiredQueryParam": { + "name": "QuorumLossDuration", + "description": "The amount of time for which the partition will be kept in quorum loss. This must be specified in seconds.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true + }, + "QuorumLossModeRequiredQueryParam": { + "name": "QuorumLossMode", + "description": "This enum is passed to the StartQuorumLoss API to indicate what type of quorum loss to induce.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "QuorumReplicas", + "AllReplicas" + ], + "required": true, + "x-ms-enum": { + "name": "QuorumLossMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "QuorumReplicas", + "description": "Partial Quorum loss mode : Minimum number of replicas for a partition will be down that will cause a quorum loss." + }, + { + "value": "AllReplicas" + } + ] + } + }, + "RestartPartitionModeRequiredQueryParam": { + "name": "RestartPartitionMode", + "description": "Describe which partitions to restart.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "Invalid", + "AllReplicasOrInstances", + "OnlyActiveSecondaries" + ], + "required": true, + "x-ms-enum": { + "name": "RestartPartitionMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Reserved. Do not pass into API." + }, + { + "value": "AllReplicasOrInstances", + "description": "All replicas or instances in the partition are restarted at once." + }, + { + "value": "OnlyActiveSecondaries", + "description": "Only the secondary replicas are restarted." + } + ] + } + }, + "StateFilterRequiredQueryParam": { + "name": "StateFilter", + "description": "Used to filter on OperationState's for user-induced operations.\n\n- 65535 - select All\n- 1 - select Running\n- 2 - select RollingBack\n- 8 - select Completed\n- 16 - select Faulted\n- 32 - select Cancelled\n- 64 - select ForceCancelled", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true, + "default": 65535 + }, + "StopDurationInSecondsRequiredQueryParam": { + "name": "StopDurationInSeconds", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int32", + "minimum": 0, + "required": true, + "description": "The duration, in seconds, to keep the node stopped. The minimum value is 600, the maximum is 14400. After this time expires, the node will automatically come back up." + }, + "TypeFilterRequiredQueryParam": { + "name": "TypeFilter", + "description": "Used to filter on OperationType for user-induced operations.\n\n- 65535 - select all\n- 1 - select PartitionDataLoss.\n- 2 - select PartitionQuorumLoss.\n- 4 - select PartitionRestart.\n- 8 - select NodeTransition.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": true, + "default": 65535 + }, + "DeployServicePackageToNodeRequiredBodyParam": { + "name": "DeployServicePackageToNodeDescription", + "in": "body", + "description": "Describes information for deploying a service package to a Service Fabric node.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DeployServicePackageToNodeDescription" + } + }, + "ResumeApplicationUpgradeDescriptionRequiredBodyParam": { + "name": "ResumeApplicationUpgradeDescription", + "in": "body", + "description": "Describes the parameters for resuming an application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ResumeApplicationUpgradeDescription" + } + }, + "ApplicationUpgradeUpdateDescriptionRequiredBodyParam": { + "name": "ApplicationUpgradeUpdateDescription", + "in": "body", + "description": "Parameters for updating an existing application upgrade.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationUpgradeUpdateDescription" + } + }, + "TimeoutOptionalQueryParam": { + "name": "timeout", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "format": "int64", + "required": false, + "minimum": 1, + "maximum": 4294967295, + "default": 60, + "description": "The server timeout for performing the operation in seconds. This timeout specifies the time duration that the client is willing to wait for the requested operation to complete. The default value for this parameter is 60 seconds." + }, + "NameDescriptionRequiredBodyParam": { + "name": "NameDescription", + "in": "body", + "description": "Describes the Service Fabric name to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/NameDescription" + } + }, + "NameIdRequiredPathParam": { + "name": "nameId", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The Service Fabric name, without the 'fabric:' URI scheme." + }, + "RecursiveOptionalQueryParam": { + "name": "Recursive", + "description": "Allows specifying that the search performed should be recursive.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeValuesOptionalQueryParam": { + "name": "IncludeValues", + "description": "Allows specifying whether to include the values of the properties returned. True if values should be returned with the metadata; False to return only property metadata.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "PropertyDescriptionRequiredBodyParam": { + "name": "PropertyDescription", + "in": "body", + "description": "Describes the Service Fabric property to be created.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/PropertyDescription" + } + }, + "PropertyNameRequiredQueryParam": { + "name": "PropertyName", + "description": "Specifies the name of the property to get.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + }, + "PropertyBatchDescriptionListRequiredBodyParam": { + "name": "PropertyBatchDescriptionList", + "in": "body", + "description": "Describes the property batch operations to be submitted.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/PropertyBatchDescriptionList" + } + }, + "ImmediateOptionalQueryParam": { + "name": "Immediate", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "A flag that indicates whether the report should be sent immediately.\nA health report is sent to a Service Fabric gateway Application, which forwards to the health store.\nIf Immediate is set to true, the report is sent immediately from HTTP Gateway to the health store, regardless of the fabric client settings that the HTTP Gateway Application is using.\nThis is useful for critical reports that should be sent as soon as possible.\nDepending on timing and other conditions, sending the report may still fail, for example if the HTTP Gateway is closed or the message doesn't reach the Gateway.\nIf Immediate is set to false, the report is sent based on the health client settings from the HTTP Gateway. Therefore, it will be batched according to the HealthReportSendInterval configuration.\nThis is the recommended setting because it allows the health client to optimize health reporting messages to health store as well as health report processing.\nBy default, reports are not sent immediately." + }, + "ExcludeHealthStatisticsOptionalQueryParam": { + "name": "ExcludeHealthStatistics", + "description": "Indicates whether the health statistics should be returned as part of the query result. False by default.\nThe statistics show the number of children entities in health state Ok, Warning, and Error.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeSystemApplicationHealthStatisticsOptionalQueryParam": { + "name": "IncludeSystemApplicationHealthStatistics", + "description": "Indicates whether the health statistics should include the fabric:/System application health statistics. False by default.\nIf IncludeSystemApplicationHealthStatistics is set to true, the health statistics include the entities that belong to the fabric:/System application.\nOtherwise, the query result includes health statistics only for user applications.\nThe health statistics must be included in the query result for this parameter to be applied.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "IncludeHealthStateOptionalQueryParam": { + "name": "IncludeHealthState", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "Include the health state of an entity.\nIf this parameter is false or not specified, then the health state returned is \"Unknown\".\nWhen set to true, the query goes in parallel to the node and the health system service before the results are merged.\nAs a result, the query is more expensive and may take a longer time." + }, + "BackupPolicyDescriptionRequiredBodyParam": { + "name": "BackupPolicyDescription", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "Describes the backup policy.", + "schema": { + "$ref": "#/definitions/BackupPolicyDescription" + } + }, + "DisableBackupDescriptionOptionalBodyParam": { + "name": "DisableBackupDescription", + "in": "body", + "description": "Specifies the parameters to disable backup for any backup entity.", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/DisableBackupDescription" + } + }, + "BackupPolicyNameRequiredPathParam": { + "name": "backupPolicyName", + "in": "path", + "description": "The name of the backup policy.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "EnableBackupDescriptionRequiredBodyParam": { + "name": "EnableBackupDescription", + "in": "body", + "description": "Specifies the parameters for enabling backup.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/EnableBackupDescription" + } + }, + "RestorePartitionDescriptionRequiredBodyParam": { + "name": "RestorePartitionDescription", + "in": "body", + "description": "Describes the parameters to restore the partition.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RestorePartitionDescription" + } + }, + "RestoreTimeoutOptionalQueryParam": { + "name": "RestoreTimeout", + "description": "Specifies the maximum amount of time to wait, in minutes, for the restore operation to complete. Post that, the operation returns back with timeout error. However, in certain corner cases it could be that the restore operation goes through even though it completes with timeout. In case of timeout error, its recommended to invoke this operation again with a greater timeout value. the default value for the same is 10 minutes.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "default": 10 + }, + "BackupPartitionDescriptionOptionalBodyParam": { + "name": "BackupPartitionDescription", + "in": "body", + "required": false, + "x-ms-parameter-location": "method", + "description": "Describes the parameters to backup the partition now. If not present, backup operation uses default parameters from the backup policy current associated with this partition.", + "schema": { + "$ref": "#/definitions/BackupPartitionDescription" + } + }, + "BackupTimeoutOptionalQueryParam": { + "name": "BackupTimeout", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false, + "description": "Specifies the maximum amount of time, in minutes, to wait for the backup operation to complete. Post that, the operation completes with timeout error. However, in certain corner cases it could be that though the operation returns back timeout, the backup actually goes through. In case of timeout error, its recommended to invoke this operation again with a greater timeout value. The default value for the same is 10 minutes.", + "default": 10 + }, + "LatestOptionalQueryParam": { + "name": "Latest", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "description": "Specifies whether to get only the most recent backup available for a partition for the specified time range.", + "required": false, + "default": false + }, + "StartDateTimeFilterOptionalQueryParam": { + "name": "StartDateTimeFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "date-time", + "required": false, + "description": "Specify the start date time from which to enumerate backups, in datetime format. The date time must be specified in ISO8601 format. This is an optional parameter. If not specified, all backups from the beginning are enumerated." + }, + "EndDateTimeFilterOptionalQueryParam": { + "name": "EndDateTimeFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "date-time", + "required": false, + "description": "Specify the end date time till which to enumerate backups, in datetime format. The date time must be specified in ISO8601 format. This is an optional parameter. If not specified, enumeration is done till the most recent backup." + }, + "GetBackupByStorageQueryDescriptionRequiredBodyParam": { + "name": "GetBackupByStorageQueryDescription", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "Describes the filters and backup storage details to be used for enumerating backups.", + "schema": { + "$ref": "#/definitions/GetBackupByStorageQueryDescription" + } + }, + "RepairTaskApproveDescriptionRequiredBodyParam": { + "name": "RepairTaskApproveDescription", + "in": "body", + "description": "Describes the repair task to be approved.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskApproveDescription" + } + }, + "RepairTaskCancelDescriptionRequiredBodyParam": { + "name": "RepairTaskCancelDescription", + "in": "body", + "description": "Describes the repair task to be cancelled.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskCancelDescription" + } + }, + "RepairTaskDeleteDescriptionRequiredBodyParam": { + "name": "RepairTaskDeleteDescription", + "in": "body", + "description": "Describes the repair task to be deleted.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTaskDeleteDescription" + } + }, + "RepairTaskExecutorFilterOptionalQueryParam": { + "name": "ExecutorFilter", + "description": "The name of the repair executor whose claimed tasks should be included in the list.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false + }, + "RepairTaskIdFilterOptionalQueryParam": { + "name": "TaskIdFilter", + "description": "The repair task ID prefix to be matched.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false + }, + "RepairTaskRequiredBodyParam": { + "name": "RepairTask", + "in": "body", + "description": "Describes the repair task to be created or updated.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/RepairTask" + } + }, + "RepairTaskStateFilterOptionalQueryParam": { + "name": "StateFilter", + "description": "A bitwise-OR of the following values, specifying which task states should be included in the result list.\n\n- 1 - Created\n- 2 - Claimed\n- 4 - Preparing\n- 8 - Approved\n- 16 - Executing\n- 32 - Restoring\n- 64 - Completed", + "in": "query", + "x-ms-parameter-location": "method", + "type": "integer", + "required": false + }, + "RepairTaskUpdateHealthPolicyDescriptionRequiredBodyParam": { + "name": "RepairTaskUpdateHealthPolicyDescription", + "in": "body", + "description": "Describes the repair task healthy policy to be updated.", + "x-ms-parameter-location": "method", + "required": true, + "schema": { + "$ref": "#/definitions/RepairTaskUpdateHealthPolicyDescription" + } + }, + "UploadSessionIdRequiredQueryParam": { + "name": "session-id", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "format": "uuid", + "required": true, + "description": "A GUID generated by the user for a file uploading. It identifies an image store upload session which keeps track of all file chunks until it is committed." + }, + "UploadFileChunkContentRangeHeaderParam": { + "name": "Content-Range", + "in": "header", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "When uploading file chunks to the image store, the Content-Range header field need to be configured and sent with a request. The format should looks like \"bytes {First-Byte-Position}-{Last-Byte-Position}/{File-Length}\". For example, Content-Range:bytes 300-5000/20000 indicates that user is sending bytes 300 through 5,000 and the total file length is 20,000 bytes." + }, + "ChaosScheduleRequiredBodyParam": { + "name": "ChaosSchedule", + "in": "body", + "description": "Describes the schedule used by Chaos.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ChaosScheduleDescription" + } + }, + "StartTimeUtcRequiredQueryParam": { + "name": "StartTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The start time of a lookup query in ISO UTC yyyy-MM-ddTHH:mm:ssZ." + }, + "EndTimeUtcRequiredQueryParam": { + "name": "EndTimeUtc", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The end time of a lookup query in ISO UTC yyyy-MM-ddTHH:mm:ssZ." + }, + "EventsTypesFilterOptionalQueryParam": { + "name": "EventsTypesFilter", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "This is a comma separated string specifying the types of FabricEvents that should only be included in the response." + }, + "ExcludeAnalysisEventsOptionalQueryParam": { + "name": "ExcludeAnalysisEvents", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "This param disables the retrieval of AnalysisEvents if true is passed." + }, + "SkipCorrelationLookupOptionalQueryParam": { + "name": "SkipCorrelationLookup", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "This param disables the search of CorrelatedEvents information if true is passed. otherwise the CorrelationEvents get processed and HasCorrelatedEvents field in every FabricEvent gets populated." + }, + "EventInstanceIdRequiredPathParam": { + "name": "eventInstanceId", + "in": "path", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The EventInstanceId." + }, + "PreviousOptionalQueryParam": { + "name": "Previous", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "description": "Specifies whether to get container logs from exited/dead containers of the code package instance.", + "required": false, + "default": false + }, + "IgnoreConstraintsOptionalParam": { + "name": "IgnoreConstraints", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false, + "description": "Ignore constraints when moving a replica. If this parameter is not specified, all constraints are honored." + }, + "NodeNameOptionalParam": { + "name": "NodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the node." + }, + "VerboseServicePlacementHealthReportingParam": { + "name": "Enabled", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": true, + "description": "The verbosity of service placement health reporting." + }, + "NewNodeNameOptionalParam": { + "name": "NewNodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": false, + "description": "The name of the target node for secondary replica move. If not specified, replica is moved to a random node." + }, + "CurrentNodeNameRequiredParam": { + "name": "CurrentNodeName", + "in": "query", + "x-ms-parameter-location": "method", + "type": "string", + "required": true, + "description": "The name of the source node for secondary replica move." + }, + "OnlyQueryPrimariesOptionalQueryParam": { + "name": "OnlyQueryPrimaries", + "description": "Indicates that unplaced replica information will be queries only for primary replicas.", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "default": false + }, + "ForceConfigurationOverrideOptionalParam": { + "name": "Force", + "in": "query", + "x-ms-parameter-location": "method", + "type": "boolean", + "required": false, + "description": "Force adding configuration overrides on specified nodes." + }, + "ConfigurationOverrideListRequiredParam": { + "name": "ConfigParameterOverrideList", + "in": "body", + "description": "Description for adding list of configuration overrides.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ConfigParameterOverrideList" + } + }, + "SecretResourceDescriptionRequiredBodyParam": { + "name": "secretResourceDescription", + "in": "body", + "description": "Description for creating a secret resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/SecretResourceDescription" + } + }, + "SecretResourceNameRequiredPathParam": { + "name": "secretResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the secret resource." + }, + "SecretValueResourceDescriptionRequiredBodyParam": { + "name": "secretValueResourceDescription", + "in": "body", + "description": "Description for creating a value of a secret resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/SecretValueResourceDescription" + } + }, + "SecretValueResourceNameRequiredPathParam": { + "name": "secretValueResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The name of the secret resource value which is typically the version identifier for the value." + }, + "VolumeResourceDescriptionRequiredBodyParam": { + "name": "volumeResourceDescription", + "in": "body", + "description": "Description for creating a Volume resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/VolumeResourceDescription" + } + }, + "VolumeResourceNameRequiredPathParam": { + "name": "volumeResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the volume." + }, + "NetworkResourceDescriptionRequiredBodyParam": { + "name": "networkResourceDescription", + "in": "body", + "description": "Description for creating a Network resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/NetworkResourceDescription" + } + }, + "NetworkResourceNameRequiredPathParam": { + "name": "networkResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the network." + }, + "ApplicationResourceDescriptionRequiredBodyParam": { + "name": "applicationResourceDescription", + "in": "body", + "description": "Description for creating a Application resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/ApplicationResourceDescription" + } + }, + "ApplicationResourceNameRequiredPathParam": { + "name": "applicationResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the application." + }, + "ServiceResourceNameRequiredPathParam": { + "name": "serviceResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the service." + }, + "ReplicaNameRequiredPathParam": { + "name": "replicaName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "Service Fabric replica name." + }, + "GatewayResourceDescriptionRequiredBodyParam": { + "name": "gatewayResourceDescription", + "in": "body", + "description": "Description for creating a Gateway resource.", + "required": true, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/GatewayResourceDescription" + } + }, + "GatewayResourceNameRequiredPathParam": { + "name": "gatewayResourceName", + "in": "path", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true, + "type": "string", + "required": true, + "description": "The identity of the gateway." + } + } +} diff --git a/specification/servicefabric/data-plane/readme.md b/specification/servicefabric/data-plane/readme.md index 36eb6843dd17..719a8b671916 100644 --- a/specification/servicefabric/data-plane/readme.md +++ b/specification/servicefabric/data-plane/readme.md @@ -25,7 +25,7 @@ These are the global settings for the ServiceFabricClient API. ``` yaml openapi-type: data-plane -tag: '7.0' +tag: '7.1' ``` ### Suppression @@ -115,6 +115,16 @@ input-file: ``` +### Tag: 7.1 + +These settings apply only when `--tag=7.1` is specified on the command line. + +``` yaml $(tag) == '7.1' +input-file: +- Microsoft.ServiceFabric/stable/7.1/servicefabric.json + +``` + --- # Code Generation @@ -168,6 +178,7 @@ input-file: - $(this-folder)/Microsoft.ServiceFabric/stable/6.4/servicefabric.json - $(this-folder)/Microsoft.ServiceFabric/stable/6.5/servicefabric.json - $(this-folder)/Microsoft.ServiceFabric/stable/7.0/servicefabric.json + - $(this-folder)/Microsoft.ServiceFabric/stable/7.1/servicefabric.json ``` diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json index 572e6ed4a7bb..85538d5381ff 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json @@ -1112,7 +1112,7 @@ }, "protectedAccountKeyName2": { "type": "string", - "description": "The secondary protected diagnostics storage key name." + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." }, "blobEndpoint": { "type": "string", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json index 584bca876090..561568936819 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json @@ -5,10 +5,7 @@ "clusterName": "myCluster", "api-version": "2019-06-01-preview", "parameters": { - "type": "Microsoft.ServiceFabric/clusters", "location": "eastus", - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", - "name": "myCluster", "tags": {}, "properties": { "clusterCodeVersion": "6.5.639.9590", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json index 042817adc1ec..f4f5950f61f7 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json @@ -5,10 +5,7 @@ "clusterName": "myCluster", "api-version": "2019-06-01-preview", "parameters": { - "type": "Microsoft.ServiceFabric/clusters", "location": "eastus", - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", - "name": "myCluster", "tags": {}, "properties": { "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json new file mode 100644 index 000000000000..0c05124b3ff9 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json @@ -0,0 +1,2351 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2019-11-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Get", + "summary": "Gets a Service Fabric application type name resource.", + "description": "Get a Service Fabric application type name resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type": { + "$ref": "./examples/ApplicationTypeNameGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type name resource.", + "description": "Create or update a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type name resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type": { + "$ref": "./examples/ApplicationTypeNamePutOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Delete", + "summary": "Deletes a Service Fabric application type name resource.", + "description": "Delete a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type": { + "$ref": "./examples/ApplicationTypeNameDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_List", + "summary": "Gets the list of application type name resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application type name resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type name resources": { + "$ref": "./examples/ApplicationTypeNameListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Get", + "summary": "Gets a Service Fabric application type version resource.", + "description": "Get a Service Fabric application type version resource created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type version": { + "$ref": "./examples/ApplicationTypeVersionGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type version resource.", + "description": "Create or update a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type version": { + "$ref": "./examples/ApplicationTypeVersionPutOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Delete", + "summary": "Deletes a Service Fabric application type version resource.", + "description": "Delete a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type version": { + "$ref": "./examples/ApplicationTypeVersionDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_List", + "summary": "Gets the list of application type version resources created in the specified Service Fabric application type name resource.", + "description": "Gets all application type version resources created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type version resources": { + "$ref": "./examples/ApplicationTypeVersionListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "summary": "Gets a Service Fabric application resource.", + "description": "Get a Service Fabric application resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application": { + "$ref": "./examples/ApplicationGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application resource.", + "description": "Create or update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application with minimum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_min.json" + }, + "Put an application with maximum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "summary": "Updates a Service Fabric application resource.", + "description": "Update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch an application": { + "$ref": "./examples/ApplicationPatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "summary": "Deletes a Service Fabric application resource.", + "description": "Delete a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application": { + "$ref": "./examples/ApplicationDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "summary": "Gets the list of application resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application resources": { + "$ref": "./examples/ApplicationListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services/{serviceName}": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_Get", + "summary": "Gets a Service Fabric service resource.", + "description": "Get a Service Fabric service resource created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a service": { + "$ref": "./examples/ServiceGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Service" + ], + "operationId": "Services_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric service resource.", + "description": "Create or update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a service with minimum parameters": { + "$ref": "./examples/ServicePutOperation_example_min.json" + }, + "Put a service with maximum parameters": { + "$ref": "./examples/ServicePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Service" + ], + "operationId": "Services_Update", + "summary": "Updates a Service Fabric service resource.", + "description": "Update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a service": { + "$ref": "./examples/ServicePatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Service" + ], + "operationId": "Services_Delete", + "summary": "Deletes a Service Fabric service resource.", + "description": "Delete a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a service": { + "$ref": "./examples/ServiceDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_List", + "summary": "Gets the list of service resources created in the specified Service Fabric application resource.", + "description": "Gets all service resources created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of service resources": { + "$ref": "./examples/ServiceListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "ApplicationMetricDescription": { + "type": "object", + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "maximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" + }, + "reservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" + }, + "totalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationParameterList": { + "type": "object", + "description": "List of application parameters with overridden values from their default values specified in the application manifest.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationResource": { + "description": "The application resource.", + "properties": { + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "Describes the managed identities for an Azure resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceProperties", + "description": "The application resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceList": { + "description": "The list of application resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationResourceProperties": { + "description": "The application resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationResourceUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "typeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + } + } + }, + "ApplicationResourceUpdate": { + "description": "The application resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceUpdateProperties", + "description": "The application resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceUpdateProperties": { + "description": "The application resource properties for patch operations.", + "properties": { + "typeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "upgradePolicy": { + "$ref": "#/definitions/ApplicationUpgradePolicy", + "description": "Describes the policy for a monitored application upgrade." + }, + "minimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "maximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "removeApplicationCapacity": { + "type": "boolean", + "description": "Remove the current application capacity settings." + }, + "metrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + }, + "managedIdentities": { + "description": "List of user assigned identities for the application, each mapped to a friendly name.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationUserAssignedIdentity" + } + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "object", + "description": "List of application type parameters that can be overridden when creating or updating the application.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationTypeResource": { + "description": "The application type name resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeResourceProperties", + "description": "The application type name properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeResourceList": { + "description": "The list of application type names.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeResourceProperties": { + "description": "The application type name properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationTypeVersionResource": { + "description": "An application type version resource for the specified application type name resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeVersionResourceProperties", + "description": "The properties of the application type version resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeVersionResourceList": { + "description": "The list of application type version resources for the specified application type name resource.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type version list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeVersionResourceProperties": { + "description": "The properties of the application type version resource.", + "required": [ + "appPackageUrl" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "appPackageUrl": { + "type": "string", + "description": "The URL to the application package" + }, + "defaultParameterList": { + "readOnly": true, + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + } + } + }, + "ApplicationUpgradePolicy": { + "description": "Describes the policy for a monitored application upgrade.", + "properties": { + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "forceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "rollingUpgradeMonitoringPolicy": { + "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy", + "description": "The policy used for monitoring the application upgrade" + }, + "applicationHealthPolicy": { + "$ref": "#/definitions/ArmApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" + }, + "upgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + } + } + }, + "ApplicationUserAssignedIdentity": { + "required": [ + "name", + "principalId" + ], + "properties": { + "name": { + "type": "string", + "description": "The friendly name of user assigned identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of user assigned identity." + } + } + }, + "ArmApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "considerWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "maxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n", + "default": 0 + }, + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicyMap": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ArmRollingUpgradeMonitoringPolicy": { + "description": "The policy used for monitoring the application upgrade", + "properties": { + "failureAction": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "ArmUpgradeFailureAction", + "modelAsString": true, + "values": [ + { + "value": "Rollback", + "description": "Indicates that a rollback of the upgrade will be performed by Service Fabric if the upgrade fails." + }, + { + "value": "Manual", + "description": "Indicates that a manual repair will need to be performed by the administrator if the upgrade fails. Service Fabric will not proceed to the next upgrade domain automatically." + } + ] + } + }, + "healthCheckWaitDuration": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckStableDuration": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckRetryTimeout": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeTimeout": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeDomainTimeout": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "ArmServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ArmServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "ManagedIdentity": { + "description": "Describes the managed identities for an Azure resource.", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of the managed identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The tenant id of the managed identity. This property will only be provided for a system assigned identity." + }, + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "The type of managed identity for the resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + } + } + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity for the resource.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": false, + "values": [ + { + "value": "SystemAssigned", + "description": "Indicates that system assigned identity is associated with the resource." + }, + { + "value": "UserAssigned", + "description": "Indicates that user assigned identity is associated with the resource." + }, + { + "value": "SystemAssigned, UserAssigned", + "description": "Indicates that both system assigned and user assigned identity are associated with the resource." + }, + { + "value": "None", + "description": "Indicates that no identity is associated with the resource." + } + ] + } + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + } + ] + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "NamedPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "count", + "names" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘count’ parameter, for the names of the partitions." + } + } + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "PartitionSchemeDescription": { + "type": "object", + "discriminator": "partitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "partitionScheme" + ], + "properties": { + "partitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "It will be deprecated in New API, resource location depends on the parent resource.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "type": "object", + "description": "Creates a particular correlation between services.", + "required": [ + "scheme", + "serviceName" + ], + "properties": { + "scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "serviceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceLoadMetricDescription": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." + }, + "weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "primaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "secondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "defaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ServicePlacementPolicyDescription": { + "type": "object", + "discriminator": "type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequiredDomain", + "PreferredPrimaryDomain", + "RequiredDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequiredDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferredPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequiredDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + } + ] + } + }, + "ServiceResource": { + "description": "The service resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "The service resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceList": { + "description": "The list of service resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of service list results if there are any.", + "readOnly": true + } + } + }, + "ServiceResourceProperties": { + "description": "The service resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "serviceTypeName": { + "type": "string", + "description": "The name of the service type" + }, + "partitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "Describes how the service is partitioned." + }, + "servicePackageActivationMode": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ArmServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "Indicates the application package activation mode will use shared process." + }, + { + "value": "ExclusiveProcess", + "description": "Indicates the application package activation mode will use exclusive process." + } + ] + } + }, + "serviceDnsName": { + "type": "string", + "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." + } + } + }, + "ServiceResourcePropertiesBase": { + "description": "The common service resource properties.", + "properties": { + "placementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "correlationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "A list that describes the correlation of the service with other services." + }, + "serviceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "servicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "A list that describes the correlation of the service with other services." + }, + "defaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "Specifies the move cost for the service." + } + } + }, + "ServiceResourceUpdate": { + "description": "The service resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceUpdateProperties", + "description": "The service resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceUpdateProperties": { + "description": "The service resource properties for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "SingletonPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceProperties": { + "description": "The properties of a stateful service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "hasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatefulServiceUpdateProperties": { + "description": "The properties of a stateful service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatelessServiceProperties": { + "description": "The properties of a stateless service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "StatelessServiceUpdateProperties": { + "description": "The properties of a stateless service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of user assigned identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "description": "The client id of user assigned identity." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "UniformInt64RangePartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "count", + "lowKey", + "highKey" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "lowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partition ‘count’\n" + }, + "highKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partition ‘count’\n" + } + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2019-11-01-preview\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2019-11-01-preview" + ], + "default": "2019-11-01-preview", + "x-ms-parameter-location": "client" + }, + "applicationName": { + "name": "applicationName", + "in": "path", + "description": "The name of the application resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "applicationTypeName": { + "name": "applicationTypeName", + "in": "path", + "description": "The name of the application type name resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "in": "path", + "description": "The name of the service resource in the format of {applicationName}~{serviceName}.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "version": { + "name": "version", + "in": "path", + "description": "The application type version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json new file mode 100644 index 000000000000..36558717a519 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json @@ -0,0 +1,1558 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2019-11-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}": { + "get": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Get", + "summary": "Gets a Service Fabric cluster resource.", + "description": "Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Get a cluster": { + "$ref": "./examples/ClusterGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric cluster resource.", + "description": "Create or update a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a cluster with minimum parameters": { + "$ref": "./examples/ClusterPutOperation_example_min.json" + }, + "Put a cluster with maximum parameters": { + "$ref": "./examples/ClusterPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Update", + "summary": "Updates the configuration of a Service Fabric cluster resource.", + "description": "Update the configuration of a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters which contains the property value and property name which used to update the cluster configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Patch a cluster": { + "$ref": "./examples/ClusterPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Delete", + "summary": "Deletes a Service Fabric cluster resource.", + "description": "Delete a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Delete a cluster": { + "$ref": "./examples/ClusterDeleteOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_ListByResourceGroup", + "summary": "Gets the list of Service Fabric cluster resources created in the specified resource group.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List cluster by resource group": { + "$ref": "./examples/ClusterListByResourceGroupOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_List", + "summary": "Gets the list of Service Fabric cluster resources created in the specified subscription.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the subscription.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List clusters": { + "$ref": "./examples/ClusterListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_Get", + "summary": "Gets information about a Service Fabric cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ClusterVersionsGet_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ClusterVersionsGetByEnvironment_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ClusterVersionsList_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ClusterVersionsListByEnvironment.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddOnFeatures": { + "type": "string", + "description": "Available cluster add-on features", + "enum": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + }, + "ApplicationTypeVersionsCleanupPolicy": { + "required": [ + "maxUnusedVersionsToKeep" + ], + "properties": { + "maxUnusedVersionsToKeep": { + "type": "integer", + "minimum": 0, + "description": "Number of unused versions per application type to keep." + } + } + }, + "ApplicationDeltaHealthPolicy": { + "type": "object", + "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n", + "properties": { + "defaultServiceTypeDeltaHealthPolicy": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy", + "description": "The delta health policy used by default to evaluate the health of a service type when upgrading the cluster." + }, + "serviceTypeDeltaHealthPolicies": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicyMap", + "description": "The map with service type delta health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicy" + } + }, + "ApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicies": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "AzureActiveDirectory": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "CertificateDescription": { + "required": [ + "thumbprint" + ], + "properties": { + "thumbprint": { + "type": "string", + "description": "Thumbprint of the primary certificate." + }, + "thumbprintSecondary": { + "type": "string", + "description": "Thumbprint of the secondary certificate." + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + }, + "description": "Describes the certificate details." + }, + "ClientCertificateCommonName": { + "required": [ + "certificateCommonName", + "isAdmin", + "certificateIssuerThumbprint" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateCommonName": { + "type": "string", + "description": "The common name of the client certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using common name." + }, + "ClientCertificateThumbprint": { + "required": [ + "certificateThumbprint", + "isAdmin" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateThumbprint": { + "type": "string", + "description": "The thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using thumbprint." + }, + "Cluster": { + "type": "object", + "description": "The cluster resource\n", + "allOf": [ + { + "description": "The cluster resource properties" + }, + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster resource properties" + } + } + } + ] + }, + "ClusterCodeVersionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterCodeVersionsResult" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ClusterCodeVersionsResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterVersionDetails", + "description": "The detail of the Service Fabric runtime version result" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, + "ClusterEnvironment": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows", + "Linux" + ] + }, + "ClusterHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n", + "properties": { + "maxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "applicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Cluster list results" + }, + "ClusterProperties": { + "required": [ + "managementEndpoint", + "nodeTypes" + ], + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "availableClusterVersions": { + "type": "array", + "description": "The Service Fabric runtime versions available for this cluster.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ClusterVersionDetails" + } + }, + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The AAD authentication settings of the cluster." + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "clusterEndpoint": { + "type": "string", + "description": "The Azure Resource Provider endpoint. A system service in the cluster connects to this endpoint.", + "readOnly": true + }, + "clusterId": { + "type": "string", + "description": "A service generated unique identifier for the cluster resource.", + "readOnly": true + }, + "clusterState": { + "readOnly": true, + "$ref": "#/definitions/ClusterState", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n" + }, + "diagnosticsStorageAccountConfig": { + "$ref": "#/definitions/DiagnosticsStorageAccountConfig", + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "managementEndpoint": { + "type": "string", + "description": "The http management endpoint of the cluster." + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the cluster resource.", + "readOnly": true, + "enum": [ + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "reverseProxyCertificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + }, + "vmImage": { + "type": "string", + "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." + } + }, + "description": "Describes the cluster resource properties." + }, + "ClusterPropertiesUpdateParameters": { + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + } + }, + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "UpdatingUserConfiguration", + "UpdatingUserCertificate", + "UpdatingInfrastructure", + "EnforcingClusterVersion", + "UpgradeServiceUnreachable", + "AutoScale", + "Ready" + ] + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPropertiesUpdateParameters", + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "tags": { + "type": "object", + "description": "Cluster update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Cluster update request" + }, + "ClusterUpgradeDeltaHealthPolicy": { + "description": "Describes the delta health policies for the cluster upgrade.", + "required": [ + "maxPercentDeltaUnhealthyApplications", + "maxPercentDeltaUnhealthyNodes", + "maxPercentUpgradeDomainDeltaUnhealthyNodes" + ], + "properties": { + "maxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentDeltaUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n", + "minimum": 0, + "maximum": 100 + }, + "applicationDeltaHealthPolicies": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicyMap", + "description": "Defines the application delta health policy map used to evaluate the health of an application or one of its child entities when upgrading the cluster." + } + } + }, + "ClusterUpgradePolicy": { + "required": [ + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "healthPolicy", + "upgradeDomainTimeout", + "upgradeReplicaSetCheckTimeout", + "upgradeTimeout" + ], + "properties": { + "forceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckWaitDuration": { + "type": "string", + "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "The cluster health policy used when upgrading the cluster." + }, + "deltaHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy", + "description": "The cluster delta health policy used when upgrading the cluster." + } + }, + "description": "Describes the policy used when upgrading the cluster." + }, + "ClusterVersionDetails": { + "properties": { + "codeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "environment": { + "$ref": "#/definitions/ClusterEnvironment", + "description": "Indicates if this version is for Windows or Linux operating system." + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, + "DiagnosticsStorageAccountConfig": { + "required": [ + "blobEndpoint", + "protectedAccountKeyName", + "queueEndpoint", + "storageAccountName", + "tableEndpoint" + ], + "properties": { + "storageAccountName": { + "type": "string", + "description": "The Azure storage account name." + }, + "protectedAccountKeyName": { + "type": "string", + "description": "The protected diagnostics storage key name." + }, + "protectedAccountKeyName2": { + "type": "string", + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." + }, + "blobEndpoint": { + "type": "string", + "description": "The blob endpoint of the azure storage account." + }, + "queueEndpoint": { + "type": "string", + "description": "The queue endpoint of the azure storage account." + }, + "tableEndpoint": { + "type": "string", + "description": "The table endpoint of the azure storage account." + } + }, + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "DurabilityLevel": { + "type": "string", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n", + "enum": [ + "Bronze", + "Silver", + "Gold" + ] + }, + "EndpointRangeDescription": { + "required": [ + "endPort", + "startPort" + ], + "properties": { + "startPort": { + "type": "integer", + "description": "Starting port of a range of ports" + }, + "endPort": { + "type": "integer", + "description": "End port of a range of ports" + } + }, + "description": "Port range details" + }, + "NodeTypeDescription": { + "required": [ + "clientConnectionEndpointPort", + "httpGatewayEndpointPort", + "isPrimary", + "name", + "vmInstanceCount" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the node type." + }, + "placementProperties": { + "type": "object", + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.", + "additionalProperties": { + "type": "string", + "description": "Placement tag value" + } + }, + "capacities": { + "type": "object", + "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.", + "additionalProperties": { + "type": "string", + "description": "Capacity tag value" + } + }, + "clientConnectionEndpointPort": { + "type": "integer", + "description": "The TCP cluster management endpoint port." + }, + "httpGatewayEndpointPort": { + "type": "integer", + "description": "The HTTP cluster management endpoint port." + }, + "durabilityLevel": { + "$ref": "#/definitions/DurabilityLevel", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n" + }, + "applicationPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ports from which cluster assigned port to Service Fabric applications." + }, + "ephemeralPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ephemeral ports that nodes in this node type should be configured with." + }, + "isPrimary": { + "type": "boolean", + "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + }, + "vmInstanceCount": { + "type": "integer", + "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", + "minimum": 1, + "maximum": 2147483647 + }, + "reverseProxyEndpointPort": { + "type": "integer", + "description": "The endpoint used by reverse proxy." + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "ReliabilityLevel": { + "type": "string", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n", + "enum": [ + "None", + "Bronze", + "Silver", + "Gold", + "Platinum" + ] + }, + "Resource": { + "required": [ + "location" + ], + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Azure resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "description": "Azure resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition.", + "x-ms-azure-resource": true + }, + "ServerCertificateCommonName": { + "description": "Describes the server certificate details using common name.", + "required": [ + "certificateCommonName", + "certificateIssuerThumbprint" + ], + "properties": { + "certificateCommonName": { + "type": "string", + "description": "The common name of the server certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the server certificate." + } + } + }, + "ServerCertificateCommonNames": { + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster.", + "properties": { + "commonNames": { + "type": "array", + "description": "The list of server certificates referenced by common name that are used to secure the cluster.", + "items": { + "$ref": "#/definitions/ServerCertificateCommonName" + } + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + } + }, + "ServiceTypeDeltaHealthPolicy": { + "type": "object", + "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n", + "properties": { + "maxPercentDeltaUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" + } + }, + "SettingsParameterDescription": { + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "The parameter name of fabric setting." + }, + "value": { + "type": "string", + "description": "The parameter value of fabric setting." + } + }, + "description": "Describes a parameter in fabric settings of the cluster." + }, + "SettingsSectionDescription": { + "required": [ + "name", + "parameters" + ], + "properties": { + "name": { + "type": "string", + "description": "The section name of the fabric settings." + }, + "parameters": { + "type": "array", + "description": "The collection of parameters in the section.", + "items": { + "$ref": "#/definitions/SettingsParameterDescription" + } + } + }, + "description": "Describes a section in the fabric settings of the cluster." + }, + "StoreName": { + "type": "string", + "description": "The local certificate store location.", + "enum": [ + "AddressBook", + "AuthRoot", + "CertificateAuthority", + "Disallowed", + "My", + "Root", + "TrustedPeople", + "TrustedPublisher" + ] + }, + "UpgradeMode": { + "type": "string", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n", + "enum": [ + "Automatic", + "Manual" + ] + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2019-11-01-preview\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2019-11-01-preview" + ], + "default": "2019-11-01-preview", + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json new file mode 100644 index 000000000000..a4b79111112d --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/76053752-a423-4a80-b283-1dad1ba5f314?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json new file mode 100644 index 000000000000..c8ab19835706 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json new file mode 100644 index 000000000000..4ca847c796fe --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json new file mode 100644 index 000000000000..eea1728a2f67 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/a553eb63-c332-40df-8ace-eb8d34a9b298?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json new file mode 100644 index 000000000000..35c28c0de78e --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/9c2ce367-47ea-43de-b69e-c5a423da4557?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json new file mode 100644 index 000000000000..4657d1a783f4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5dce62ce-439b-47af-81d8-99ab14708e91?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261857\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json new file mode 100644 index 000000000000..b87591c8862b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/6a367b2d-9f60-4941-b886-e348ddcb4127?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json new file mode 100644 index 000000000000..be2b49c3300c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json new file mode 100644 index 000000000000..5187a2018740 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json new file mode 100644 index 000000000000..6326e35f990c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json new file mode 100644 index 000000000000..cab3917c84a0 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/28e62369-ed8c-4aba-8c05-ab7d6238cc3d?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json new file mode 100644 index 000000000000..333bd77bbbae --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json new file mode 100644 index 000000000000..3dec9e42af82 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json new file mode 100644 index 000000000000..7297dd1e40f6 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/e2413c7e-d51b-40ac-8155-bc85bf8ae856?api-version=2019-11-01-preview" + }, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json new file mode 100644 index 000000000000..bbbed589f83c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {} + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json new file mode 100644 index 000000000000..9c488137c655 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json new file mode 100644 index 000000000000..c4c675931455 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json new file mode 100644 index 000000000000..86e7d37b6144 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json @@ -0,0 +1,247 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json new file mode 100644 index 000000000000..16373022a406 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "tags": { + "a": "b" + }, + "properties": { + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "eventStoreServiceEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json new file mode 100644 index 000000000000..47237407cf04 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json @@ -0,0 +1,456 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "clusterCodeVersion": "6.5.639.9590", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json new file mode 100644 index 000000000000..e6afddce5699 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "202": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json new file mode 100644 index 000000000000..a6786cb4ca83 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "6.1.480.9494", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json new file mode 100644 index 000000000000..a8c91f3266e2 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "6.1.480.9494", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json new file mode 100644 index 000000000000..6263c3cd1446 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json new file mode 100644 index 000000000000..91d0eaf34f85 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Linux/clusterVersions/6.1.187.1", + "name": "6.1.187.1", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json new file mode 100644 index 000000000000..9b98309f4624 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/41fa5ef9-7f34-4c36-a730-93e0bb757d22?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json new file mode 100644 index 000000000000..107420ab6353 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json new file mode 100644 index 000000000000..0c78dbe9c030 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json new file mode 100644 index 000000000000..efbb156cffe4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4dde8d8b-b6b2-4c56-99c6-9b83932bb09a?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json new file mode 100644 index 000000000000..fe9e63fd28a3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "correlationScheme": [ + { + "serviceName": "fabric:/app1/app1~svc1", + "scheme": "Affinity" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "instanceCloseDelayDuration": "00:00:30", + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/2e633105-aadc-4928-9164-d76b974170a3?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "instanceCloseDelayDuration": "00:00:30", + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json new file mode 100644 index 000000000000..59972de0e24c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5bc615c3-6c5b-4593-80e1-008f55376ec7?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671256\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json new file mode 100644 index 000000000000..33669cae7b5a --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json @@ -0,0 +1,2351 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2020-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Get", + "summary": "Gets a Service Fabric application type name resource.", + "description": "Get a Service Fabric application type name resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type": { + "$ref": "./examples/ApplicationTypeNameGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type name resource.", + "description": "Create or update a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type name resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type": { + "$ref": "./examples/ApplicationTypeNamePutOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Delete", + "summary": "Deletes a Service Fabric application type name resource.", + "description": "Delete a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type": { + "$ref": "./examples/ApplicationTypeNameDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_List", + "summary": "Gets the list of application type name resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application type name resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type name resources": { + "$ref": "./examples/ApplicationTypeNameListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Get", + "summary": "Gets a Service Fabric application type version resource.", + "description": "Get a Service Fabric application type version resource created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type version": { + "$ref": "./examples/ApplicationTypeVersionGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type version resource.", + "description": "Create or update a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type version": { + "$ref": "./examples/ApplicationTypeVersionPutOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Delete", + "summary": "Deletes a Service Fabric application type version resource.", + "description": "Delete a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type version": { + "$ref": "./examples/ApplicationTypeVersionDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_List", + "summary": "Gets the list of application type version resources created in the specified Service Fabric application type name resource.", + "description": "Gets all application type version resources created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type version resources": { + "$ref": "./examples/ApplicationTypeVersionListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "summary": "Gets a Service Fabric application resource.", + "description": "Get a Service Fabric application resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application": { + "$ref": "./examples/ApplicationGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application resource.", + "description": "Create or update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application with minimum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_min.json" + }, + "Put an application with maximum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "summary": "Updates a Service Fabric application resource.", + "description": "Update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch an application": { + "$ref": "./examples/ApplicationPatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "summary": "Deletes a Service Fabric application resource.", + "description": "Delete a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application": { + "$ref": "./examples/ApplicationDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "summary": "Gets the list of application resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application resources": { + "$ref": "./examples/ApplicationListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services/{serviceName}": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_Get", + "summary": "Gets a Service Fabric service resource.", + "description": "Get a Service Fabric service resource created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a service": { + "$ref": "./examples/ServiceGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Service" + ], + "operationId": "Services_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric service resource.", + "description": "Create or update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a service with minimum parameters": { + "$ref": "./examples/ServicePutOperation_example_min.json" + }, + "Put a service with maximum parameters": { + "$ref": "./examples/ServicePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Service" + ], + "operationId": "Services_Update", + "summary": "Updates a Service Fabric service resource.", + "description": "Update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a service": { + "$ref": "./examples/ServicePatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Service" + ], + "operationId": "Services_Delete", + "summary": "Deletes a Service Fabric service resource.", + "description": "Delete a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a service": { + "$ref": "./examples/ServiceDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_List", + "summary": "Gets the list of service resources created in the specified Service Fabric application resource.", + "description": "Gets all service resources created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of service resources": { + "$ref": "./examples/ServiceListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "ApplicationMetricDescription": { + "type": "object", + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "maximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" + }, + "reservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" + }, + "totalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationParameterList": { + "type": "object", + "description": "List of application parameters with overridden values from their default values specified in the application manifest.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationResource": { + "description": "The application resource.", + "properties": { + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "Describes the managed identities for an Azure resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceProperties", + "description": "The application resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceList": { + "description": "The list of application resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationResourceProperties": { + "description": "The application resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationResourceUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "typeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + } + } + }, + "ApplicationResourceUpdate": { + "description": "The application resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceUpdateProperties", + "description": "The application resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceUpdateProperties": { + "description": "The application resource properties for patch operations.", + "properties": { + "typeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "upgradePolicy": { + "$ref": "#/definitions/ApplicationUpgradePolicy", + "description": "Describes the policy for a monitored application upgrade." + }, + "minimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "maximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "removeApplicationCapacity": { + "type": "boolean", + "description": "Remove the current application capacity settings." + }, + "metrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + }, + "managedIdentities": { + "description": "List of user assigned identities for the application, each mapped to a friendly name.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationUserAssignedIdentity" + } + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "object", + "description": "List of application type parameters that can be overridden when creating or updating the application.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationTypeResource": { + "description": "The application type name resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeResourceProperties", + "description": "The application type name properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeResourceList": { + "description": "The list of application type names.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeResourceProperties": { + "description": "The application type name properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationTypeVersionResource": { + "description": "An application type version resource for the specified application type name resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeVersionResourceProperties", + "description": "The properties of the application type version resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeVersionResourceList": { + "description": "The list of application type version resources for the specified application type name resource.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type version list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeVersionResourceProperties": { + "description": "The properties of the application type version resource.", + "required": [ + "appPackageUrl" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "appPackageUrl": { + "type": "string", + "description": "The URL to the application package" + }, + "defaultParameterList": { + "readOnly": true, + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + } + } + }, + "ApplicationUpgradePolicy": { + "description": "Describes the policy for a monitored application upgrade.", + "properties": { + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "forceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "rollingUpgradeMonitoringPolicy": { + "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy", + "description": "The policy used for monitoring the application upgrade" + }, + "applicationHealthPolicy": { + "$ref": "#/definitions/ArmApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" + }, + "upgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + } + } + }, + "ApplicationUserAssignedIdentity": { + "required": [ + "name", + "principalId" + ], + "properties": { + "name": { + "type": "string", + "description": "The friendly name of user assigned identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of user assigned identity." + } + } + }, + "ArmApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "considerWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "maxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n", + "default": 0 + }, + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicyMap": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ArmRollingUpgradeMonitoringPolicy": { + "description": "The policy used for monitoring the application upgrade", + "properties": { + "failureAction": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "ArmUpgradeFailureAction", + "modelAsString": true, + "values": [ + { + "value": "Rollback", + "description": "Indicates that a rollback of the upgrade will be performed by Service Fabric if the upgrade fails." + }, + { + "value": "Manual", + "description": "Indicates that a manual repair will need to be performed by the administrator if the upgrade fails. Service Fabric will not proceed to the next upgrade domain automatically." + } + ] + } + }, + "healthCheckWaitDuration": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckStableDuration": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckRetryTimeout": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeTimeout": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeDomainTimeout": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "ArmServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ArmServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "ManagedIdentity": { + "description": "Describes the managed identities for an Azure resource.", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of the managed identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The tenant id of the managed identity. This property will only be provided for a system assigned identity." + }, + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "The type of managed identity for the resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + } + } + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity for the resource.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": false, + "values": [ + { + "value": "SystemAssigned", + "description": "Indicates that system assigned identity is associated with the resource." + }, + { + "value": "UserAssigned", + "description": "Indicates that user assigned identity is associated with the resource." + }, + { + "value": "SystemAssigned, UserAssigned", + "description": "Indicates that both system assigned and user assigned identity are associated with the resource." + }, + { + "value": "None", + "description": "Indicates that no identity is associated with the resource." + } + ] + } + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + } + ] + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "NamedPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "count", + "names" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘count’ parameter, for the names of the partitions." + } + } + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "PartitionSchemeDescription": { + "type": "object", + "discriminator": "partitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "partitionScheme" + ], + "properties": { + "partitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "It will be deprecated in New API, resource location depends on the parent resource.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "type": "object", + "description": "Creates a particular correlation between services.", + "required": [ + "scheme", + "serviceName" + ], + "properties": { + "scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "serviceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceLoadMetricDescription": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." + }, + "weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "primaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "secondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "defaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ServicePlacementPolicyDescription": { + "type": "object", + "discriminator": "type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequiredDomain", + "PreferredPrimaryDomain", + "RequiredDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequiredDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferredPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequiredDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + } + ] + } + }, + "ServiceResource": { + "description": "The service resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "The service resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceList": { + "description": "The list of service resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of service list results if there are any.", + "readOnly": true + } + } + }, + "ServiceResourceProperties": { + "description": "The service resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "serviceTypeName": { + "type": "string", + "description": "The name of the service type" + }, + "partitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "Describes how the service is partitioned." + }, + "servicePackageActivationMode": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ArmServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "Indicates the application package activation mode will use shared process." + }, + { + "value": "ExclusiveProcess", + "description": "Indicates the application package activation mode will use exclusive process." + } + ] + } + }, + "serviceDnsName": { + "type": "string", + "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." + } + } + }, + "ServiceResourcePropertiesBase": { + "description": "The common service resource properties.", + "properties": { + "placementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "correlationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "A list that describes the correlation of the service with other services." + }, + "serviceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "servicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "A list that describes the correlation of the service with other services." + }, + "defaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "Specifies the move cost for the service." + } + } + }, + "ServiceResourceUpdate": { + "description": "The service resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceUpdateProperties", + "description": "The service resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceUpdateProperties": { + "description": "The service resource properties for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "SingletonPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceProperties": { + "description": "The properties of a stateful service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "hasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatefulServiceUpdateProperties": { + "description": "The properties of a stateful service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatelessServiceProperties": { + "description": "The properties of a stateless service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "StatelessServiceUpdateProperties": { + "description": "The properties of a stateless service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of user assigned identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "description": "The client id of user assigned identity." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "UniformInt64RangePartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "count", + "lowKey", + "highKey" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "lowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partition ‘count’\n" + }, + "highKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partition ‘count’\n" + } + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2020-03-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2020-03-01" + ], + "default": "2020-03-01", + "x-ms-parameter-location": "client" + }, + "applicationName": { + "name": "applicationName", + "in": "path", + "description": "The name of the application resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "applicationTypeName": { + "name": "applicationTypeName", + "in": "path", + "description": "The name of the application type name resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "in": "path", + "description": "The name of the service resource in the format of {applicationName}~{serviceName}.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "version": { + "name": "version", + "in": "path", + "description": "The application type version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json new file mode 100644 index 000000000000..9ef76c65bf74 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json @@ -0,0 +1,1558 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2020-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}": { + "get": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Get", + "summary": "Gets a Service Fabric cluster resource.", + "description": "Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Get a cluster": { + "$ref": "./examples/ClusterGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric cluster resource.", + "description": "Create or update a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a cluster with minimum parameters": { + "$ref": "./examples/ClusterPutOperation_example_min.json" + }, + "Put a cluster with maximum parameters": { + "$ref": "./examples/ClusterPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Update", + "summary": "Updates the configuration of a Service Fabric cluster resource.", + "description": "Update the configuration of a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters which contains the property value and property name which used to update the cluster configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Patch a cluster": { + "$ref": "./examples/ClusterPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Delete", + "summary": "Deletes a Service Fabric cluster resource.", + "description": "Delete a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Delete a cluster": { + "$ref": "./examples/ClusterDeleteOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_ListByResourceGroup", + "summary": "Gets the list of Service Fabric cluster resources created in the specified resource group.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List cluster by resource group": { + "$ref": "./examples/ClusterListByResourceGroupOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_List", + "summary": "Gets the list of Service Fabric cluster resources created in the specified subscription.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the subscription.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List clusters": { + "$ref": "./examples/ClusterListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_Get", + "summary": "Gets information about a Service Fabric cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ClusterVersionsGet_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ClusterVersionsGetByEnvironment_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ClusterVersionsList_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ClusterVersionsListByEnvironment.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddOnFeatures": { + "type": "string", + "description": "Available cluster add-on features", + "enum": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + }, + "ApplicationTypeVersionsCleanupPolicy": { + "required": [ + "maxUnusedVersionsToKeep" + ], + "properties": { + "maxUnusedVersionsToKeep": { + "type": "integer", + "minimum": 0, + "description": "Number of unused versions per application type to keep." + } + } + }, + "ApplicationDeltaHealthPolicy": { + "type": "object", + "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n", + "properties": { + "defaultServiceTypeDeltaHealthPolicy": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy", + "description": "The delta health policy used by default to evaluate the health of a service type when upgrading the cluster." + }, + "serviceTypeDeltaHealthPolicies": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicyMap", + "description": "The map with service type delta health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicy" + } + }, + "ApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicies": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "AzureActiveDirectory": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "CertificateDescription": { + "required": [ + "thumbprint" + ], + "properties": { + "thumbprint": { + "type": "string", + "description": "Thumbprint of the primary certificate." + }, + "thumbprintSecondary": { + "type": "string", + "description": "Thumbprint of the secondary certificate." + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + }, + "description": "Describes the certificate details." + }, + "ClientCertificateCommonName": { + "required": [ + "certificateCommonName", + "isAdmin", + "certificateIssuerThumbprint" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateCommonName": { + "type": "string", + "description": "The common name of the client certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using common name." + }, + "ClientCertificateThumbprint": { + "required": [ + "certificateThumbprint", + "isAdmin" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateThumbprint": { + "type": "string", + "description": "The thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using thumbprint." + }, + "Cluster": { + "type": "object", + "description": "The cluster resource\n", + "allOf": [ + { + "description": "The cluster resource properties" + }, + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster resource properties" + } + } + } + ] + }, + "ClusterCodeVersionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterCodeVersionsResult" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ClusterCodeVersionsResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterVersionDetails", + "description": "The detail of the Service Fabric runtime version result" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, + "ClusterEnvironment": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows", + "Linux" + ] + }, + "ClusterHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n", + "properties": { + "maxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "applicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Cluster list results" + }, + "ClusterProperties": { + "required": [ + "managementEndpoint", + "nodeTypes" + ], + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "availableClusterVersions": { + "type": "array", + "description": "The Service Fabric runtime versions available for this cluster.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ClusterVersionDetails" + } + }, + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The AAD authentication settings of the cluster." + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "clusterEndpoint": { + "type": "string", + "description": "The Azure Resource Provider endpoint. A system service in the cluster connects to this endpoint.", + "readOnly": true + }, + "clusterId": { + "type": "string", + "description": "A service generated unique identifier for the cluster resource.", + "readOnly": true + }, + "clusterState": { + "readOnly": true, + "$ref": "#/definitions/ClusterState", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n" + }, + "diagnosticsStorageAccountConfig": { + "$ref": "#/definitions/DiagnosticsStorageAccountConfig", + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "managementEndpoint": { + "type": "string", + "description": "The http management endpoint of the cluster." + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the cluster resource.", + "readOnly": true, + "enum": [ + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "reverseProxyCertificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + }, + "vmImage": { + "type": "string", + "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." + } + }, + "description": "Describes the cluster resource properties." + }, + "ClusterPropertiesUpdateParameters": { + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + } + }, + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "UpdatingUserConfiguration", + "UpdatingUserCertificate", + "UpdatingInfrastructure", + "EnforcingClusterVersion", + "UpgradeServiceUnreachable", + "AutoScale", + "Ready" + ] + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPropertiesUpdateParameters", + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "tags": { + "type": "object", + "description": "Cluster update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Cluster update request" + }, + "ClusterUpgradeDeltaHealthPolicy": { + "description": "Describes the delta health policies for the cluster upgrade.", + "required": [ + "maxPercentDeltaUnhealthyApplications", + "maxPercentDeltaUnhealthyNodes", + "maxPercentUpgradeDomainDeltaUnhealthyNodes" + ], + "properties": { + "maxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentDeltaUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n", + "minimum": 0, + "maximum": 100 + }, + "applicationDeltaHealthPolicies": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicyMap", + "description": "Defines the application delta health policy map used to evaluate the health of an application or one of its child entities when upgrading the cluster." + } + } + }, + "ClusterUpgradePolicy": { + "required": [ + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "healthPolicy", + "upgradeDomainTimeout", + "upgradeReplicaSetCheckTimeout", + "upgradeTimeout" + ], + "properties": { + "forceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckWaitDuration": { + "type": "string", + "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "The cluster health policy used when upgrading the cluster." + }, + "deltaHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy", + "description": "The cluster delta health policy used when upgrading the cluster." + } + }, + "description": "Describes the policy used when upgrading the cluster." + }, + "ClusterVersionDetails": { + "properties": { + "codeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "environment": { + "$ref": "#/definitions/ClusterEnvironment", + "description": "Indicates if this version is for Windows or Linux operating system." + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, + "DiagnosticsStorageAccountConfig": { + "required": [ + "blobEndpoint", + "protectedAccountKeyName", + "queueEndpoint", + "storageAccountName", + "tableEndpoint" + ], + "properties": { + "storageAccountName": { + "type": "string", + "description": "The Azure storage account name." + }, + "protectedAccountKeyName": { + "type": "string", + "description": "The protected diagnostics storage key name." + }, + "protectedAccountKeyName2": { + "type": "string", + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." + }, + "blobEndpoint": { + "type": "string", + "description": "The blob endpoint of the azure storage account." + }, + "queueEndpoint": { + "type": "string", + "description": "The queue endpoint of the azure storage account." + }, + "tableEndpoint": { + "type": "string", + "description": "The table endpoint of the azure storage account." + } + }, + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "DurabilityLevel": { + "type": "string", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n", + "enum": [ + "Bronze", + "Silver", + "Gold" + ] + }, + "EndpointRangeDescription": { + "required": [ + "endPort", + "startPort" + ], + "properties": { + "startPort": { + "type": "integer", + "description": "Starting port of a range of ports" + }, + "endPort": { + "type": "integer", + "description": "End port of a range of ports" + } + }, + "description": "Port range details" + }, + "NodeTypeDescription": { + "required": [ + "clientConnectionEndpointPort", + "httpGatewayEndpointPort", + "isPrimary", + "name", + "vmInstanceCount" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the node type." + }, + "placementProperties": { + "type": "object", + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.", + "additionalProperties": { + "type": "string", + "description": "Placement tag value" + } + }, + "capacities": { + "type": "object", + "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.", + "additionalProperties": { + "type": "string", + "description": "Capacity tag value" + } + }, + "clientConnectionEndpointPort": { + "type": "integer", + "description": "The TCP cluster management endpoint port." + }, + "httpGatewayEndpointPort": { + "type": "integer", + "description": "The HTTP cluster management endpoint port." + }, + "durabilityLevel": { + "$ref": "#/definitions/DurabilityLevel", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n" + }, + "applicationPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ports from which cluster assigned port to Service Fabric applications." + }, + "ephemeralPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ephemeral ports that nodes in this node type should be configured with." + }, + "isPrimary": { + "type": "boolean", + "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + }, + "vmInstanceCount": { + "type": "integer", + "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", + "minimum": 1, + "maximum": 2147483647 + }, + "reverseProxyEndpointPort": { + "type": "integer", + "description": "The endpoint used by reverse proxy." + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "ReliabilityLevel": { + "type": "string", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n", + "enum": [ + "None", + "Bronze", + "Silver", + "Gold", + "Platinum" + ] + }, + "Resource": { + "required": [ + "location" + ], + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Azure resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "description": "Azure resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition.", + "x-ms-azure-resource": true + }, + "ServerCertificateCommonName": { + "description": "Describes the server certificate details using common name.", + "required": [ + "certificateCommonName", + "certificateIssuerThumbprint" + ], + "properties": { + "certificateCommonName": { + "type": "string", + "description": "The common name of the server certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the server certificate." + } + } + }, + "ServerCertificateCommonNames": { + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster.", + "properties": { + "commonNames": { + "type": "array", + "description": "The list of server certificates referenced by common name that are used to secure the cluster.", + "items": { + "$ref": "#/definitions/ServerCertificateCommonName" + } + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + } + }, + "ServiceTypeDeltaHealthPolicy": { + "type": "object", + "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n", + "properties": { + "maxPercentDeltaUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" + } + }, + "SettingsParameterDescription": { + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "The parameter name of fabric setting." + }, + "value": { + "type": "string", + "description": "The parameter value of fabric setting." + } + }, + "description": "Describes a parameter in fabric settings of the cluster." + }, + "SettingsSectionDescription": { + "required": [ + "name", + "parameters" + ], + "properties": { + "name": { + "type": "string", + "description": "The section name of the fabric settings." + }, + "parameters": { + "type": "array", + "description": "The collection of parameters in the section.", + "items": { + "$ref": "#/definitions/SettingsParameterDescription" + } + } + }, + "description": "Describes a section in the fabric settings of the cluster." + }, + "StoreName": { + "type": "string", + "description": "The local certificate store location.", + "enum": [ + "AddressBook", + "AuthRoot", + "CertificateAuthority", + "Disallowed", + "My", + "Root", + "TrustedPeople", + "TrustedPublisher" + ] + }, + "UpgradeMode": { + "type": "string", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n", + "enum": [ + "Automatic", + "Manual" + ] + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2020-03-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2020-03-01" + ], + "default": "2020-03-01", + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json new file mode 100644 index 000000000000..f9fe1895f7d3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/76053752-a423-4a80-b283-1dad1ba5f314?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json new file mode 100644 index 000000000000..3950f60d19e5 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json new file mode 100644 index 000000000000..97910a392dcd --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json new file mode 100644 index 000000000000..01dfe131e68f --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/a553eb63-c332-40df-8ace-eb8d34a9b298?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json new file mode 100644 index 000000000000..390964d6a2ae --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/9c2ce367-47ea-43de-b69e-c5a423da4557?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json new file mode 100644 index 000000000000..241bbdee8bc8 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5dce62ce-439b-47af-81d8-99ab14708e91?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261857\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json new file mode 100644 index 000000000000..3a7741b968a3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/6a367b2d-9f60-4941-b886-e348ddcb4127?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json new file mode 100644 index 000000000000..4c78cda55b3a --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json new file mode 100644 index 000000000000..3ff9da2cae93 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json new file mode 100644 index 000000000000..aecb281a0284 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01", + "parameters": {} + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json new file mode 100644 index 000000000000..7d5a4386c350 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/28e62369-ed8c-4aba-8c05-ab7d6238cc3d?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json new file mode 100644 index 000000000000..ebbacb17aae4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json new file mode 100644 index 000000000000..774dd0c20c33 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json new file mode 100644 index 000000000000..5ee69832e1a4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/e2413c7e-d51b-40ac-8155-bc85bf8ae856?api-version=2020-03-01" + }, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json new file mode 100644 index 000000000000..faa8264ce040 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json new file mode 100644 index 000000000000..efe58557d860 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json new file mode 100644 index 000000000000..9ea1ea5a3f7b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json new file mode 100644 index 000000000000..2029a1f6fea2 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json @@ -0,0 +1,247 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json new file mode 100644 index 000000000000..9433d4fa7970 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "tags": { + "a": "b" + }, + "properties": { + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "eventStoreServiceEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json new file mode 100644 index 000000000000..efcf16ab058b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json @@ -0,0 +1,457 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "tags": {}, + "properties": { + "clusterCodeVersion": "7.0.470.9590", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json new file mode 100644 index 000000000000..0b9f120e9644 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json @@ -0,0 +1,223 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "tags": {}, + "properties": { + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.0.470.9590", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "7.0.470.9590", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "202": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.0.470.9590", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "7.0.470.9590", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json new file mode 100644 index 000000000000..d035285101be --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "6.1.480.9494", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json new file mode 100644 index 000000000000..47a35c07e387 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "6.1.480.9494", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json new file mode 100644 index 000000000000..0d476df85801 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json new file mode 100644 index 000000000000..1ccb0492084b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Linux/clusterVersions/6.1.187.1", + "name": "6.1.187.1", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json new file mode 100644 index 000000000000..d00c48075708 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/41fa5ef9-7f34-4c36-a730-93e0bb757d22?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json new file mode 100644 index 000000000000..b6a8e6de236b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json new file mode 100644 index 000000000000..42185cf1ee7e --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json new file mode 100644 index 000000000000..0880def22061 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4dde8d8b-b6b2-4c56-99c6-9b83932bb09a?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json new file mode 100644 index 000000000000..2ff58cc3ae47 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "correlationScheme": [ + { + "serviceName": "fabric:/app1/app1~svc1", + "scheme": "Affinity" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/2e633105-aadc-4928-9164-d76b974170a3?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json new file mode 100644 index 000000000000..996bb0e410e9 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5bc615c3-6c5b-4593-80e1-008f55376ec7?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671256\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/readme.md b/specification/servicefabric/resource-manager/readme.md index f958b459e5c3..282661df8854 100644 --- a/specification/servicefabric/resource-manager/readme.md +++ b/specification/servicefabric/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the ServiceFabricManagementClient API. title: ServiceFabricManagementClient description: Service Fabric Management Client openapi-type: arm -tag: package-2019-06-preview +tag: package-2020-03 directive: - suppress: ListInOperationName @@ -59,6 +59,27 @@ directive: reason: There are open issues (bugs) in the validator affecting some of the examples and since there is no way to selectively disable the validation for a particular example or paths, all of the example validation is being turned off. ``` + +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.ServiceFabric/stable/2020-03-01/cluster.json +- Microsoft.ServiceFabric/stable/2020-03-01/application.json +``` + +### Tag: package-2019-11-preview + +These settings apply only when `--tag=package-2019-11-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-preview' +input-file: +- Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json +- Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json +``` + ### Tag: package-2019-06-preview These settings apply only when `--tag=package-2019-06-preview` is specified on the command line. @@ -184,6 +205,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json + - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/application.json + - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json + - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json - $(this-folder)/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json - $(this-folder)/Microsoft.ServiceFabric/preview/2019-06-01-preview/application.json - $(this-folder)/Microsoft.ServiceFabric/stable/2019-03-01/cluster.json diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/examples/CreateOrUpdate.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/examples/CreateOrUpdate.json index 2446709ef47b..3a92226cd0a1 100644 --- a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/examples/CreateOrUpdate.json +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/examples/CreateOrUpdate.json @@ -20,6 +20,32 @@ "resourceName": "mySignalRService" }, "responses": { + "200": { + "body": { + "sku": { + "name": "Standard_S1", + "tier": "Standard", + "size": "S1", + "capacity": 1 + }, + "properties": { + "provisioningState": "Succeeded", + "externalIP": "10.0.0.1", + "hostName": "myservice.service.signalr.net", + "publicPort": 443, + "serverPort": 443, + "version": "1.0-preview", + "hostNamePrefix": null + }, + "location": "eastus", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "name": "mySignalRService", + "type": "Microsoft.SignalRService/SignalR" + } + }, "201": { "body": { "sku": { diff --git a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json index 0a661c94b9f3..d8c5408c9640 100644 --- a/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json +++ b/specification/signalr/resource-manager/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json @@ -308,6 +308,12 @@ } ], "responses": { + "200": { + "description": "Success. The response describes a SignalR service.", + "schema": { + "$ref": "#/definitions/SignalRResource" + } + }, "201": { "description": "Created. The response describes the new service and contains a Location header to query the operation result.", "schema": { diff --git a/specification/signalr/resource-manager/readme.md b/specification/signalr/resource-manager/readme.md index 356ff90245d8..dd35a4918a1f 100644 --- a/specification/signalr/resource-manager/readme.md +++ b/specification/signalr/resource-manager/readme.md @@ -40,7 +40,7 @@ directive: - suppress: EnumInsteadOfBoolean from: signalr.json where: $.definitions.Dimension.properties.toBeExportedForShoebox - reason: The boolean properties 'toBeExportedForShoebox' is defined by Geneva metrics + reason: The boolean properties 'toBeExportedForShoebox' is defined by Geneva metrics. - suppress: PutRequestResponseScheme from: signalr.json where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}"].put diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json index a54e76e1c57c..74a2e385bb4b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json @@ -103,7 +103,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the database blob auditing policy.", @@ -196,7 +196,7 @@ "type": "string" }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", "type": "string", "x-ms-mutability": [ "create", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json index 1552d4b274c1..6e307cb7fdb7 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json @@ -25,7 +25,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, @@ -51,7 +52,8 @@ "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { @@ -83,7 +85,8 @@ "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_westeurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceGet.json index d81c083a4af4..4ad01f466643 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceGet.json @@ -26,7 +26,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Default", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceList.json index 640b037c3ba0..19bc87170b8d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceList.json @@ -29,7 +29,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "1b4e2caff2530" + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } }, { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceListByResourceGroup.json index a08933264aac..2123619ea897 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceListByResourceGroup.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceListByResourceGroup.json @@ -30,7 +30,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "1b4e2caff2530" + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } }, { @@ -55,7 +56,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "2c3d1bdae3412" + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMax.json index f60ec5b9c93e..51268336c84e 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMax.json @@ -21,7 +21,8 @@ "licenseType": "BasePrice", "vCores": 8, "storageSizeInGB": 448, - "collation": "SQL_Latin1_General_CP1_CI_AS" + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, @@ -53,7 +54,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMin.json index b67afb7b384f..aa87197d2540 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceUpdateMin.json @@ -31,7 +31,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Default", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json index 0e817f870ea3..f73579be3d37 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json @@ -439,6 +439,10 @@ "description": "The Id of the instance pool this managed server belongs to.", "type": "string" }, + "maintenanceConfigurationId": { + "description": "Specifies maintenance configuration id to apply to this managed instance.", + "type": "string" + }, "minimalTlsVersion": { "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'", "type": "string" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json index 78954c1818e2..90430bf3fd96 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json @@ -103,7 +103,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 BlobAuditingPredicateExpressionSyntaxError - Invalid value of parameter 'predicateExpression'.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the extended database blob auditing policy.", @@ -125,6 +125,51 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extendedAuditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists extended auditing settings of a database.", + "operationId": "ExtendedDatabaseBlobAuditingPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database extended auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List extended auditing settings of a database": { + "$ref": "./examples/DatabaseExtendedAuditingSettingsList.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/{blobAuditingPolicyName}": { "get": { "tags": [ @@ -206,7 +251,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingPredicateExpressionEmpty - Invalid parameter 'predicateExpression', value can not be empty.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." }, "202": { "description": "Updating the extended auditing settings is in progress." @@ -223,6 +268,48 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings": { + "get": { + "tags": [ + "BlobAuditing" + ], + "description": "Lists extended auditing settings of a server.", + "operationId": "ExtendedServerBlobAuditingPolicies_ListByServer", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved extended server auditing settings.", + "schema": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List extended auditing settings of a server": { + "$ref": "./examples/ServerExtendedAuditingSettingsList.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings/{blobAuditingPolicyName}": { "get": { "tags": [ @@ -304,7 +391,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerBlobAuditingPolicyCreateRequest - The create server blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 ServerBlobAuditingPolicyInProgress - Set server blob auditing is already in progress." }, "202": { "description": "Updating the auditing settings is in progress." @@ -450,7 +537,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 BlobAuditingNoServerIdentity - The server identity is not correctly configured.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InsufficientDiskSpaceForAuditing - Insufficient disk space to save auditing metadata in the database\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the database blob auditing policy.", @@ -547,7 +634,7 @@ "type": "string" }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", "type": "string", "x-ms-mutability": [ "create", @@ -602,6 +689,25 @@ } } }, + "ExtendedDatabaseBlobAuditingPolicyListResult": { + "description": "A list of database extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedDatabaseBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, "ExtendedServerBlobAuditingPolicyProperties": { "description": "Properties of an extended server blob auditing policy.", "required": [ @@ -630,7 +736,7 @@ "type": "string" }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", "type": "string", "x-ms-mutability": [ "create", @@ -685,6 +791,25 @@ } } }, + "ExtendedServerBlobAuditingPolicyListResult": { + "description": "A list of server extended auditing settings.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedServerBlobAuditingPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, "ServerBlobAuditingPolicyProperties": { "description": "Properties of a server blob auditing policy.", "required": [ @@ -709,7 +834,7 @@ "type": "string" }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", "type": "string", "x-ms-mutability": [ "create", @@ -807,7 +932,7 @@ "type": "string" }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the auditing storage account. \r\nIf state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage.\r\nPrerequisites for using managed identity authentication:\r\n1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD).\r\n2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity.\r\nFor more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355)", "type": "string", "x-ms-mutability": [ "create", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseExtendedAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseExtendedAuditingSettingsList.json new file mode 100644 index 000000000000..d4b99bed098a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseExtendedAuditingSettingsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "serverName": "blobauditingtest-2080", + "databaseName": "testdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "statement = 'select 1'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ServerExtendedAuditingSettingsList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ServerExtendedAuditingSettingsList.json new file mode 100644 index 000000000000..e5570eb1c9d5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ServerExtendedAuditingSettingsList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "serverName": "blobauditingtest-6440", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/extendedAuditingSettings/default", + "name": "default", + "type": "Microsoft.Sql/servers/extendedAuditingSettings", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "predicateExpression": "object_name = 'SensitiveData'", + "isAzureMonitorTargetEnabled": false + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json index 08a4b9ae7774..d93a3000d8e5 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json @@ -787,7 +787,7 @@ "type": "boolean" }, "licenseType": { - "description": "The license type to apply for this database.", + "description": "The license type to apply for this database. `LicenseIncluded` if you need a license, or `BasePrice` if you have a license and are eligible for the Azure Hybrid Benefit.", "enum": [ "LicenseIncluded", "BasePrice" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceCreateMax.json index cd3e090e3398..ed423629d53a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceCreateMax.json @@ -25,7 +25,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, @@ -51,7 +52,8 @@ "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { @@ -83,7 +85,8 @@ "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", "timezoneId": "UTC", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceGet.json index 9da73f2a4849..b78074a7820a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceGet.json @@ -26,7 +26,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Default", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceList.json index 4ff1240668ef..faf180b0c9a1 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceList.json @@ -29,7 +29,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "1b4e2caff2530" + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } }, { @@ -54,7 +55,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "2c3d1bdae3412" + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByInstancePool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByInstancePool.json index 313ef50fc116..0eeffd79dfdd 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByInstancePool.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByInstancePool.json @@ -32,7 +32,8 @@ "publicDataEndpointEnabled": false, "dnsZone": "1b4e2caff2530", "proxyOverride": "Redirect", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } }, { @@ -58,7 +59,8 @@ "publicDataEndpointEnabled": false, "dnsZone": "2c3d1bdae3412", "proxyOverride": "Redirect", - "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1" + "instancePoolId": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/Test1/providers/Microsoft.Sql/instancePools/pool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByResourceGroup.json index 7ef8a934da16..812771b07788 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByResourceGroup.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceListByResourceGroup.json @@ -30,7 +30,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "1b4e2caff2530" + "dnsZone": "1b4e2caff2530", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } }, { @@ -55,7 +56,8 @@ "collation": "SQL_Latin1_General_CP1_CI_AS", "publicDataEndpointEnabled": false, "proxyOverride": "Default", - "dnsZone": "2c3d1bdae3412" + "dnsZone": "2c3d1bdae3412", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMax.json index 79d81c6aa48b..4f07238c0e25 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMax.json @@ -21,7 +21,8 @@ "licenseType": "BasePrice", "vCores": 8, "storageSizeInGB": 448, - "collation": "SQL_Latin1_General_CP1_CI_AS" + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, @@ -53,7 +54,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Redirect", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMin.json index 7fa48928dee9..e2247037c5c6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceUpdateMin.json @@ -31,7 +31,8 @@ "publicDataEndpointEnabled": false, "proxyOverride": "Default", "dnsZone": "1b4e2caff2530", - "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1" + "instancePoolId": "/subscriptions/20d7082a-0fc7-4468-82bd-542694d5042b/resourceGroups/testrg/providers/Microsoft.Sql/instancePools/instancePool1", + "maintenanceConfigurationId": "/subscriptions/ab0e51c0-83c0-4380-8ae9-025516df392f/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_WestEurope_MI_Mon_Fri_10PM_6AM" }, "location": "japaneast", "tags": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json index 14afdcdb4e85..5006cad54c5f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json @@ -485,6 +485,10 @@ "description": "The Id of the instance pool this managed server belongs to.", "type": "string" }, + "maintenanceConfigurationId": { + "description": "Specifies maintenance configuration id to apply to this managed instance.", + "type": "string" + }, "minimalTlsVersion": { "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'", "type": "string" diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json index 045b85a77c88..2e2db731b65d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json @@ -885,7 +885,7 @@ "type": "boolean" }, "licenseType": { - "description": "The license type to apply for this database.", + "description": "The license type to apply for this database. `LicenseIncluded` if you need a license, or `BasePrice` if you have a license and are eligible for the Azure Hybrid Benefit.", "enum": [ "LicenseIncluded", "BasePrice" diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json index e70d68ebbc93..251f145cbf3b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json @@ -21,7 +21,7 @@ "role": "Secondary", "partnerRole": "Primary", "replicationMode": "ASYNC", - "startTime": "2017-02-10T01:37:49.153", + "startTime": "2017-02-10T01:37:49.153Z", "percentComplete": 100, "replicationState": "CATCH_UP", "isTerminationAllowed": true diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json index 735e01de7257..3293ef575bd2 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json @@ -22,7 +22,7 @@ "role": "Secondary", "partnerRole": "Primary", "replicationMode": "ASYNC", - "startTime": "2017-02-10T01:44:27.117", + "startTime": "2017-02-10T01:44:27.117Z", "percentComplete": 100, "replicationState": "CATCH_UP", "isTerminationAllowed": true diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json new file mode 100644 index 000000000000..0b4701fa8353 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-8931", + "serverName": "sqlcrudtest-2137", + "databaseName": "testdb", + "linkId": "f0550bf5-07ce-4270-8e4b-71737975973a", + "api-version": "2014-04-01", + "parameters": { + "forcedTermination": true + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json index c80d3c7743f8..c93ce6adc5c5 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json @@ -216,6 +216,66 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}/unlink": { + "post": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_Unlink", + "description": "Deletes a database replication link in forced or friendly way.", + "x-ms-examples": { + "Delete replication link": { + "$ref": "./examples/ReplicationLinkUnlink.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be failed over." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be failed over." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnlinkParameters" + }, + "description": "The required parameters for unlinking replication link." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks": { "get": { "tags": [ @@ -387,6 +447,15 @@ } }, "description": "Represents the response to a List database replication link request." + }, + "UnlinkParameters": { + "properties": { + "forcedTermination": { + "type": "boolean", + "description": "Determines whether link will be terminated in a forced or a friendly way." + } + }, + "description": "Represents the parameters for Unlink Replication Link request." } }, "parameters": { diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 0dec1ce04728..6aaa7bfd7c89 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -139,6 +139,7 @@ input-file: - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json +- Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json # Needed when there is more than one input file override-info: @@ -874,6 +875,7 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json + - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/capabilities.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databases.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/elasticPools.json diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json index f865b407ee2e..57ebabb6a0b9 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json @@ -149,6 +149,9 @@ "x-ms-examples": { "ListContainers": { "$ref": "./examples/BlobContainersList.json" + }, + "ListDeletedContainers": { + "$ref": "./examples/DeletedBlobContainersList.json" } }, "description": "Lists all containers and does not support a prefix like data plane. Also SRP today does not return continuation token.", @@ -176,6 +179,20 @@ "in": "query", "type": "string", "description": "Optional. When specified, only container names starting with the filter will be listed." + }, + { + "name": "$include", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "deleted" + ], + "x-ms-enum": { + "name": "ListContainersInclude", + "modelAsString": true + }, + "description": "Optional, used to include the properties for soft deleted blob containers." } ], "responses": { @@ -200,6 +217,9 @@ "x-ms-examples": { "PutContainers": { "$ref": "./examples/BlobContainersPut.json" + }, + "PutContainerWithDefaultEncryptionScope": { + "$ref": "./examples/BlobContainersPutDefaultEncryptionScope.json" } }, "description": "Creates a new container under the specified account as described by request body. The container resource includes metadata and properties for that container. It does not include a list of the blobs contained by the container. ", @@ -797,6 +817,35 @@ "definitions": { "ContainerProperties": { "properties": { + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the deleted blob container." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the blob container was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Blob container deletion time." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for soft deleted blob container." + }, + "defaultEncryptionScope": { + "type": "string", + "description": "Default the container to use specified encryption scope for all writes." + }, + "denyEncryptionScopeOverride": { + "type": "boolean", + "description": "Block override of encryption scope from the container default." + }, "publicAccess": { "type": "string", "enum": [ @@ -1206,6 +1255,12 @@ "minimum": 1, "maximum": 365, "description": "how long this blob can be restored. It should be great than zero and less than DeleteRetentionPolicy.days." + }, + "lastEnabledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the restore policy was last enabled." } }, "required": [ diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json new file mode 100644 index 000000000000..4e84715c8f4b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "blobContainer": { + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedBlobContainersList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedBlobContainersList.json new file mode 100644 index 000000000000..eefea4e85461 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedBlobContainersList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$include": "deleted", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container1644", + "name": "container1644", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "publicAccess": "Container", + "leaseStatus": "Unlocked", + "leaseState": "Available", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/blobServices/default/containers/container4052", + "name": "container4052", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "publicAccess": "None", + "leaseStatus": "Unlocked", + "leaseState": "Expired", + "lastModifiedTime": "2018-03-14T08:20:47Z", + "hasImmutabilityPolicy": false, + "hasLegalHold": false, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedFileSharesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedFileSharesList.json new file mode 100644 index 000000000000..6cb4b6cf9987 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/DeletedFileSharesList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "$expand": "deleted", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share1644_1234567890", + "name": "share1644", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847D51C7DE\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024, + "version": "1234567890", + "deleted": true, + "deletedTime": "2019-12-14T08:20:47Z", + "remainingRetentionDays": 30 + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/fileServices/default/shares/share4052", + "name": "share4052", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D589847DAB5AF9\"", + "properties": { + "lastModifiedTime": "2019-05-14T08:20:47Z", + "shareQuota": 1024 + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet_Stats.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet_Stats.json new file mode 100644 index 000000000000..a9efdd6ad550 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesGet_Stats.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "accountName": "sto6217", + "shareName": "share1634", + "$expand": "stats", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Storage/storageAccounts/sto6217/fileServices/default/shares/share1634", + "name": "share1634", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "etag": "\"0x8D592D74CC20EBA\"", + "properties": { + "lastModifiedTime": "2019-05-26T05:06:14Z", + "shareQuota": 1024, + "shareUsageBytes": 652945 + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_AccessTier.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_AccessTier.json new file mode 100644 index 000000000000..eb6f38e058f7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_AccessTier.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2019-06-01", + "monitor": "true", + "fileShare": { + "properties": { + "accessTier": "Hot" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "accessTier": "Hot" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_NFS.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_NFS.json new file mode 100644 index 000000000000..dfc1bd7b0285 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesPut_NFS.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res346", + "accountName": "sto666", + "shareName": "share1235", + "api-version": "2019-06-01", + "monitor": "true", + "fileShare": { + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res346/providers/Microsoft.Storage/storageAccounts/sto666/fileServices/default/shares/share1235", + "name": "share1235", + "type": "Microsoft.Storage/storageAccounts/fileServices/shares", + "properties": { + "enabledProtocols": "NFS" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesRestore.json new file mode 100644 index 000000000000..0a53f017d0c0 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/FileSharesRestore.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "shareName": "share1249", + "deletedShare": { + "deletedShareName": "share1249", + "deletedShareVersion": "1234567890" + }, + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationDelete.json new file mode 100644 index 000000000000..355ec2716a4a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationGet.json new file mode 100644 index 000000000000..fad951eeeec4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationList.json new file mode 100644 index 000000000000..9554cb861681 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6186", + "name": "queue6186", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues?api-version=2019-06-01&$maxpagesize=2&$skipToken=/sto328/queue6187" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPatch.json new file mode 100644 index 000000000000..b2270a4ca9c6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPatch.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2019-06-01", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPut.json new file mode 100644 index 000000000000..b2270a4ca9c6 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPut.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2019-06-01", + "monitor": "true", + "queue": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPutWithMetadata.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPutWithMetadata.json new file mode 100644 index 000000000000..b1a1a4776e4d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueOperationPutWithMetadata.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "queueName": "queue6185", + "api-version": "2019-06-01", + "monitor": "true", + "queue": { + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/queueServices/default/queues/queue6185", + "name": "queue6185", + "type": "Microsoft.Storage/storageAccounts/queueServices/queues", + "properties": { + "metadata": { + "sample1": "meta1", + "sample2": "meta2" + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesGet.json new file mode 100644 index 000000000000..59a9502132e4 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesList.json new file mode 100644 index 000000000000..e797fa2e065f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesPut.json new file mode 100644 index 000000000000..141c1417a860 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/QueueServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "queueServiceName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/queueServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/queueServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..5910dd506913 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "default", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..7f36c65bd9ba --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json new file mode 100644 index 000000000000..6421270ddcf2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json new file mode 100644 index 000000000000..7a393de8eafe --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json new file mode 100644 index 000000000000..a093274e0e53 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/{objectReplicationPolicy-Id}", + "name": "{objectReplicationPolicy-Id}", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "{objectReplicationPolicy-Id}", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1", + "rules": [ + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobC", + "blobD" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json new file mode 100644 index 000000000000..08c3e5dfbe3d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json index 82b08ef0df0f..d1a76567be23 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json @@ -110,6 +110,96 @@ }, "type": "Microsoft.Storage/storageAccounts" }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, { "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto6637", "identity": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json new file mode 100644 index 000000000000..7381669a1a7a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "name": "c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/objectReplicationPolicies/141d23dc-8958-4b48-b6e6-5a40bf1af116", + "name": "141d23dc-8958-4b48-b6e6-5a40bf1af116", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount2" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateEndpointConnections.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateEndpointConnections.json new file mode 100644 index 000000000000..9c23e8ea819c --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListPrivateEndpointConnections.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Storage/storageAccounts/sto288/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.Storage/storageAccounts/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7231/providers/Microsoft.Network/privateEndpoints/petest02" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json index bba4c1218aa0..8382e903ca24 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountSetManagementPolicy.json @@ -12,7 +12,7 @@ "rules": [ { "enabled": true, - "name": "olcmtest", + "name": "olcmtest1", "type": "Lifecycle", "definition": { "filters": { @@ -20,7 +20,7 @@ "blockBlob" ], "prefixMatch": [ - "olcmtestcontainer" + "olcmtestcontainer1" ] }, "actions": { @@ -42,6 +42,46 @@ } } } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } } ] } @@ -59,7 +99,7 @@ "rules": [ { "enabled": true, - "name": "olcmtest", + "name": "olcmtest1", "type": "Lifecycle", "definition": { "filters": { @@ -67,7 +107,7 @@ "blockBlob" ], "prefixMatch": [ - "olcmtestcontainer" + "olcmtestcontainer1" ] }, "actions": { @@ -89,6 +129,46 @@ } } } + }, + { + "enabled": true, + "name": "olcmtest2", + "type": "Lifecycle", + "definition": { + "filters": { + "blobTypes": [ + "blockBlob" + ], + "prefixMatch": [ + "olcmtestcontainer2" + ], + "blobIndexMatch": [ + { + "name": "tag1", + "op": "==", + "value": "val1" + }, + { + "name": "tag2", + "op": "==", + "value": "val2" + } + ] + }, + "actions": { + "baseBlob": { + "tierToCool": { + "daysAfterModificationGreaterThan": 30 + }, + "tierToArchive": { + "daysAfterModificationGreaterThan": 90 + }, + "delete": { + "daysAfterModificationGreaterThan": 1000 + } + } + } + } } ] }, diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..403ea6019faf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..4ade05445df7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationDelete.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationDelete.json new file mode 100644 index 000000000000..b50907bcf6ba --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationGet.json new file mode 100644 index 000000000000..ad61ecff6513 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationList.json new file mode 100644 index 000000000000..c239b4e52023 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto328", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6186", + "name": "table6186", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6186" + } + } + ], + "nextLink": "https://sto1590endpoint/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables?api-version=2019-06-01&NextTableName=1!40!bXl0YWJsZXNoYzU0OAEwMWQ2MTI5ZTJmYjVmODFh" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPatch.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPatch.json new file mode 100644 index 000000000000..ad61ecff6513 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPatch.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPut.json new file mode 100644 index 000000000000..ad61ecff6513 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableOperationPut.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "tableName": "table6185", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/tableServices/default/tables/table6185", + "name": "table6185", + "type": "Microsoft.Storage/storageAccounts/tableServices/tables", + "properties": { + "tableName": "table6185" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesGet.json new file mode 100644 index 000000000000..53b11ad310d2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesList.json new file mode 100644 index 000000000000..9fc35a182c54 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9290", + "accountName": "sto1590", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesPut.json new file mode 100644 index 000000000000..e66436e66d07 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/TableServicesPut.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4410", + "accountName": "sto8607", + "tableServiceName": "default", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res4410/providers/Microsoft.Storage/storageAccounts/sto8607/tableServices/default", + "name": "default", + "type": "Microsoft.Storage/storageAccounts/tableServices", + "properties": { + "cors": { + "corsRules": [ + { + "allowedOrigins": [ + "http://www.contoso.com", + "http://www.fabrikam.com" + ], + "allowedMethods": [ + "GET", + "HEAD", + "POST", + "OPTIONS", + "MERGE", + "PUT" + ], + "maxAgeInSeconds": 100, + "exposedHeaders": [ + "x-ms-meta-*" + ], + "allowedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ] + }, + { + "allowedOrigins": [ + "*" + ], + "allowedMethods": [ + "GET" + ], + "maxAgeInSeconds": 2, + "exposedHeaders": [ + "*" + ], + "allowedHeaders": [ + "*" + ] + }, + { + "allowedOrigins": [ + "http://www.abc23.com", + "https://www.fabrikam.com/*" + ], + "allowedMethods": [ + "GET", + "PUT" + ], + "maxAgeInSeconds": 2000, + "exposedHeaders": [ + "x-ms-meta-abc", + "x-ms-meta-data*", + "x-ms-meta-target*" + ], + "allowedHeaders": [ + "x-ms-meta-12345675754564*" + ] + } + ] + } + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json index 10cc15aa9a7e..9e603d1881fa 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/file.json @@ -164,6 +164,9 @@ "x-ms-examples": { "ListShares": { "$ref": "./examples/FileSharesList.json" + }, + "ListDeletedShares": { + "$ref": "./examples/DeletedFileSharesList.json" } }, "description": "Lists all shares.", @@ -191,6 +194,20 @@ "in": "query", "type": "string", "description": "Optional. When specified, only share names starting with the filter will be listed." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "deleted" + ], + "x-ms-enum": { + "name": "ListSharesExpand", + "modelAsString": false + }, + "description": "Optional, used to expand the properties within share's properties." } ], "responses": { @@ -221,6 +238,12 @@ "x-ms-examples": { "PutShares": { "$ref": "./examples/FileSharesPut.json" + }, + "Create NFS Shares": { + "$ref": "./examples/FileSharesPut_NFS.json" + }, + "PutShares with Access Tier": { + "$ref": "./examples/FileSharesPut_AccessTier.json" } }, "description": "Creates a new share under the specified account as described by request body. The share resource includes metadata and properties for that share. It does not include a list of the files contained by the share. ", @@ -332,6 +355,9 @@ "x-ms-examples": { "GetShares": { "$ref": "./examples/FileSharesGet.json" + }, + "GetShareStats": { + "$ref": "./examples/FileSharesGet_Stats.json" } }, "description": "Gets properties of a specified share.", @@ -350,6 +376,20 @@ }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "stats" + ], + "x-ms-enum": { + "name": "GetShareExpand", + "modelAsString": false + }, + "description": "Optional, used to expand the properties within share's properties." } ], "responses": { @@ -410,6 +450,56 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore": { + "post": { + "tags": [ + "FileShares" + ], + "operationId": "FileShares_Restore", + "x-ms-examples": { + "RestoreShares": { + "$ref": "./examples/FileSharesRestore.json" + } + }, + "description": "Restore a file share within a valid retention days if share soft delete is enabled", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "#/parameters/ShareName" + }, + { + "name": "deletedShare", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeletedShare" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The Share is successfully restored." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -471,6 +561,23 @@ ], "description": "Properties of the file share, including Id, resource name, resource type, Etag." }, + "DeletedShare": { + "properties": { + "deletedShareName": { + "type": "string", + "description": "Required. Identify the name of the deleted share that will be restored." + }, + "deletedShareVersion": { + "type": "string", + "description": "Required. Identify the version of the deleted share that will be restored." + } + }, + "required": [ + "deletedShareName", + "deletedShareVersion" + ], + "description": "The deleted share to be restored." + }, "FileShareItem": { "properties": { "properties": { @@ -524,6 +631,87 @@ "minimum": 1, "maximum": 102400, "description": "The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5TB (5120). For Large File Shares, the maximum size is 102400." + }, + "enabledProtocols": { + "type": "string", + "enum": [ + "SMB", + "NFS" + ], + "x-ms-enum": { + "name": "EnabledProtocols", + "modelAsString": true + }, + "description": "The authentication protocol that is used for the file share. Can only be specified when creating a share.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "rootSquash": { + "type": "string", + "enum": [ + "NoRootSquash", + "RootSquash", + "AllSquash" + ], + "x-ms-enum": { + "name": "RootSquashType", + "modelAsString": true + }, + "description": "The property is for NFS share only. The default is NoRootSquash." + }, + "version": { + "type": "string", + "readOnly": true, + "description": "The version of the share." + }, + "deleted": { + "type": "boolean", + "readOnly": true, + "description": "Indicates whether the share was deleted." + }, + "deletedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The deleted time if the share was deleted." + }, + "remainingRetentionDays": { + "type": "integer", + "readOnly": true, + "description": "Remaining retention days for share that was soft deleted." + }, + "accessTier": { + "type": "string", + "enum": [ + "TransactionOptimized", + "Hot", + "Cool", + "Premium" + ], + "x-ms-enum": { + "name": "ShareAccessTier", + "modelAsString": true + }, + "description": "Access tier for specific share. GpV2 account can choose between TransactionOptimized (default), Hot, and Cool. FileStorage account can choose Premium." + }, + "accessTierChangeTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Indicates the last modification time for share access tier." + }, + "accessTierStatus": { + "type": "string", + "readOnly": true, + "description": "Indicates if there is a pending transition for access tier." + }, + "shareUsageBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate size of the data stored on the share. Note that this value may not include all recently created or recently resized files." } }, "description": "The properties of the file share." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/queue.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/queue.json new file mode 100644 index 000000000000..f1a166d16aa7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/queue.json @@ -0,0 +1,594 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices": { + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_List", + "x-ms-examples": { + "QueueServicesList": { + "$ref": "./examples/QueueServicesList.json" + } + }, + "description": "List all queue services for the storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/ListQueueServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}": { + "put": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_SetServiceProperties", + "x-ms-examples": { + "QueueServicesPut": { + "$ref": "./examples/QueueServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "The properties of a storage account’s Queue service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Queue service successfully.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueServiceProperties" + ], + "operationId": "QueueServices_GetServiceProperties", + "x-ms-examples": { + "QueueServicesGet": { + "$ref": "./examples/QueueServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Queue service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Queue service.", + "schema": { + "$ref": "#/definitions/QueueServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}": { + "put": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Create", + "x-ms-examples": { + "QueueOperationPut": { + "$ref": "./examples/QueueOperationPut.json" + }, + "QueueOperationPutWithMetadata": { + "$ref": "./examples/QueueOperationPutWithMetadata.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Update", + "x-ms-examples": { + "QueueOperationPatch": { + "$ref": "./examples/QueueOperationPatch.json" + } + }, + "description": "Creates a new queue with the specified queue name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + }, + { + "name": "queue", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQueue" + }, + "description": "Queue properties and metadata to be created with" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a queue with the given queue name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Get", + "x-ms-examples": { + "QueueOperationGet": { + "$ref": "./examples/QueueOperationGet.json" + } + }, + "description": "Gets the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/StorageQueue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_Delete", + "x-ms-examples": { + "QueueOperationDelete": { + "$ref": "./examples/QueueOperationDelete.json" + } + }, + "description": "Deletes the queue with the specified queue name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/QueueName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the queue with the specified queue name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues": { + "get": { + "tags": [ + "QueueService" + ], + "operationId": "Queue_List", + "x-ms-examples": { + "QueueOperationList": { + "$ref": "./examples/QueueOperationList.json" + } + }, + "description": "Gets a list of all the queues under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$maxpagesize", + "in": "query", + "type": "string", + "description": "Optional, a maximum number of queues that should be included in a list queue response" + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "Optional, When specified, only the queues with a name starting with the given filter will be listed." + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of queues successfully.", + "schema": { + "$ref": "#/definitions/ListQueueResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListQueueServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QueueServiceProperties" + }, + "description": "List of queue services returned.", + "readOnly": true + } + } + }, + "QueueServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Queue service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueServiceProperties", + "description": "The properties of a storage account’s Queue service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Queue service." + }, + "StorageQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/QueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "QueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + }, + "approximateMessageCount": { + "type": "integer", + "readOnly": true, + "description": "Integer indicating an approximate number of messages in the queue. This number is not lower than the actual number of messages in the queue, but could be higher." + } + } + }, + "ListQueue": { + "properties": { + "properties": { + "$ref": "#/definitions/ListQueueProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "QueueProperties", + "description": "List Queue resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ] + }, + "ListQueueProperties": { + "properties": { + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A name-value pair that represents queue metadata." + } + } + }, + "ListQueueResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ListQueue" + }, + "description": "List of queues returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to list next page of queues", + "readOnly": true + } + }, + "description": "Response schema. Contains list of queues returned" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Storage service." + } + }, + "parameters": { + "QueueServiceName": { + "name": "queueServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Queue Service within the specified storage account. Queue Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "QueueName": { + "name": "queueName", + "in": "path", + "required": true, + "type": "string", + "description": "A queue name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) characters.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json index 45d964fa6ea0..0eafcd6749fb 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json @@ -209,6 +209,9 @@ "x-ms-examples": { "StorageAccountGetProperties": { "$ref": "./examples/StorageAccountGetProperties.json" + }, + "StorageAccountGetPropertiesCMKEnabled": { + "$ref": "./examples/StorageAccountGetPropertiesCMKEnabled.json" } }, "parameters": [ @@ -261,6 +264,9 @@ }, "StorageAccountEnableAD": { "$ref": "./examples/StorageAccountEnableAD.json" + }, + "StorageAccountEnableCMK": { + "$ref": "./examples/StorageAccountEnableCMK.json" } }, "parameters": [ @@ -809,6 +815,45 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_List", + "description": "List all the private endpoint connections associated with the storage account.", + "x-ms-examples": { + "StorageAccountListPrivateEndpointConnections": { + "$ref": "./examples/StorageAccountListPrivateEndpointConnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { "get": { "tags": [ @@ -835,14 +880,14 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionName" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" } ], "responses": { "200": { "description": "OK -- Get the private endpoint connection properties successfully.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" } }, "default": { @@ -878,14 +923,14 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionName" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" }, { "name": "properties", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" }, "description": "The private endpoint connection properties." } @@ -894,7 +939,7 @@ "200": { "description": "OK -- Update the private endpoint connection properties successfully.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" } }, "default": { @@ -930,7 +975,7 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionName" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/parameters/PrivateEndpointConnectionName" } ], "responses": { @@ -979,7 +1024,201 @@ "200": { "description": "Successfully retrieved private link resources.", "schema": { - "$ref": "#/definitions/PrivateLinkResourceListResult" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_List", + "description": "List the object replication policies associated with the storage account.", + "x-ms-examples": { + "StorageAccountListObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountListObjectReplicationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List object replication policies successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Get", + "description": "Get the object replication policy of the storage account by policy ID.", + "x-ms-examples": { + "StorageAccountGetObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountGetObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Get the object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_CreateOrUpdate", + "description": "Create or update the object replication policy of the storage account.", + "x-ms-examples": { + "StorageAccountCreateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountCreateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnSource.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The object replication policy set to a storage account. A unique policy ID will be created if absent." + } + ], + "responses": { + "200": { + "description": "OK -- Put object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Delete", + "description": "Deletes the object replication policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountDeleteObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the object replication policy successfully." + }, + "204": { + "description": "No Content -- The object replication policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" } } } @@ -1604,6 +1843,19 @@ "type": "string", "description": "The Uri of KeyVault.", "x-ms-client-name": "KeyVaultUri" + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use.", + "x-ms-client-name": "CurrentVersionedKeyIdentifier" + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key.", + "x-ms-client-name": "LastKeyRotationTimestamp" } } }, @@ -2295,7 +2547,7 @@ "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "../../../../../common-types/resource-management/v1/privatelinks.json#/definitions/PrivateEndpointConnection" }, "description": "List of private endpoint connection associated with the specified storage account" }, @@ -2545,11 +2797,11 @@ "properties": { "startRange": { "type": "string", - "description": "Blob start range. Empty means account start." + "description": "Blob start range. This is inclusive. Empty means account start." }, "endRange": { "type": "string", - "description": "Blob end range. Empty means account end." + "description": "Blob end range. This is exclusive. Empty means account end." } }, "required": [ @@ -2980,6 +3232,13 @@ "type": "string" }, "description": "An array of predefined enum values. Only blockBlob is supported." + }, + "blobIndexMatch": { + "type": "array", + "items": { + "$ref": "#/definitions/TagFilter" + }, + "description": "An array of blob index tag based filters, there can be at most 10 tag filters" } }, "required": [ @@ -2987,6 +3246,32 @@ ], "description": "Filters limit rule actions to a subset of blobs within the storage account. If multiple filters are defined, a logical AND is performed on all filters. " }, + "TagFilter": { + "properties": { + "name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "description": "This is the filter tag name, it can have 1 - 128 characters" + }, + "op": { + "type": "string", + "description": "This is the comparison operator which is used for object comparison and filtering. Only == (equality operator) is currently supported" + }, + "value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "description": "This is the filter tag value field used for tag based filtering, it can have 0 - 256 characters" + } + }, + "required": [ + "name", + "op", + "value" + ], + "description": "Blob index tag based filtering for blob objects" + }, "ManagementPolicyAction": { "properties": { "baseBlob": { @@ -3054,148 +3339,6 @@ ], "description": "Object to define the number of days after creation." }, - "PrivateEndpointConnection": { - "properties": { - "properties": { - "$ref": "#/definitions/PrivateEndpointConnectionProperties", - "x-ms-client-flatten": true, - "description": "Resource properties." - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" - } - ], - "description": "The Private Endpoint Connection resource." - }, - "PrivateEndpointConnectionProperties": { - "properties": { - "privateEndpoint": { - "$ref": "#/definitions/PrivateEndpoint", - "description": "The resource of private end point." - }, - "privateLinkServiceConnectionState": { - "$ref": "#/definitions/PrivateLinkServiceConnectionState", - "description": "A collection of information about the state of the connection between service consumer and provider." - }, - "provisioningState": { - "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", - "description": "The provisioning state of the private endpoint connection resource." - } - }, - "required": [ - "privateLinkServiceConnectionState" - ], - "description": "Properties of the PrivateEndpointConnectProperties." - }, - "PrivateEndpoint": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ARM identifier for Private Endpoint" - } - }, - "description": "The Private Endpoint resource." - }, - "PrivateLinkServiceConnectionState": { - "properties": { - "status": { - "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", - "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." - }, - "description": { - "type": "string", - "description": "The reason for approval/rejection of the connection." - }, - "actionRequired": { - "type": "string", - "description": "A message indicating if changes on the service provider require any updates on the consumer." - } - }, - "description": "A collection of information about the state of the connection between service consumer and provider." - }, - "PrivateEndpointServiceConnectionStatus": { - "type": "string", - "description": "The private endpoint connection status.", - "enum": [ - "Pending", - "Approved", - "Rejected" - ], - "x-ms-enum": { - "name": "PrivateEndpointServiceConnectionStatus", - "modelAsString": true - } - }, - "PrivateEndpointConnectionProvisioningState": { - "type": "string", - "readOnly": true, - "description": "The current provisioning state.", - "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Failed" - ], - "x-ms-enum": { - "name": "PrivateEndpointConnectionProvisioningState", - "modelAsString": true - } - }, - "PrivateLinkResourceListResult": { - "properties": { - "value": { - "type": "array", - "description": "Array of private link resources", - "items": { - "$ref": "#/definitions/PrivateLinkResource" - } - } - }, - "description": "A list of private link resources" - }, - "PrivateLinkResource": { - "properties": { - "properties": { - "$ref": "#/definitions/PrivateLinkResourceProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" - } - ], - "description": "A private link resource" - }, - "PrivateLinkResourceProperties": { - "properties": { - "groupId": { - "description": "The private link resource group id.", - "type": "string", - "readOnly": true - }, - "requiredMembers": { - "description": "The private link resource required member names.", - "type": "array", - "items": { - "type": "string" - }, - "readOnly": true - }, - "requiredZoneNames": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The private link resource Private link DNS zone name." - } - }, - "description": "Properties of a private link resource." - }, "EncryptionScope": { "properties": { "properties": { @@ -3284,6 +3427,109 @@ }, "description": "List of encryption scopes requested, and if paging is required, a URL to the next page of encryption scopes." }, + "ObjectReplicationPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The replication policy between two storage accounts." + } + }, + "description": "List storage account object replication policies." + }, + "ObjectReplicationPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ObjectReplicationPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Object Replication Policy." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The replication policy between two storage accounts. Multiple rules can be defined in one policy." + }, + "ObjectReplicationPolicyProperties": { + "properties": { + "policyId": { + "readOnly": true, + "type": "string", + "description": "A unique id for object replication policy." + }, + "enabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Indicates when the policy is enabled on the source account." + }, + "sourceAccount": { + "type": "string", + "description": "Required. Source account name." + }, + "destinationAccount": { + "type": "string", + "description": "Required. Destination account name." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicyRule" + }, + "description": "The storage account object replication rules." + } + }, + "required": [ + "sourceAccount", + "destinationAccount" + ], + "description": "The Storage Account ObjectReplicationPolicy properties." + }, + "ObjectReplicationPolicyRule": { + "properties": { + "ruleId": { + "type": "string", + "description": "Rule Id is auto-generated for each new rule on destination account. It is required for put policy on source account." + }, + "sourceContainer": { + "type": "string", + "description": "Required. Source container name." + }, + "destinationContainer": { + "type": "string", + "description": "Required. Destination container name." + }, + "filters": { + "$ref": "#/definitions/ObjectReplicationPolicyFilter", + "description": "Optional. An object that defines the filter set." + } + }, + "required": [ + "sourceContainer", + "destinationContainer" + ], + "description": "The replication policy rule between two containers." + }, + "ObjectReplicationPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. Filters the results to replicate only blobs whose names begin with the specified prefix." + }, + "minCreationTime": { + "type": "string", + "description": "Blobs created after the time will be replicated to the destination. It must be in datetime format 'yyyy-MM-ddTHH:mm:ssZ'. Example: 2020-02-19T16:05:00Z" + } + }, + "description": "Filters limit replication to a subset of blobs within the storage account. A logical OR is performed on values in the filter. If multiple filters are defined, a logical AND is performed on all filters." + }, "ErrorResponse": { "properties": { "code": { @@ -3335,14 +3581,6 @@ }, "x-ms-parameter-location": "method" }, - "PrivateEndpointConnectionName": { - "name": "privateEndpointConnectionName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the private endpoint connection associated with the Storage Account", - "x-ms-parameter-location": "method" - }, "EncryptionScopeName": { "name": "encryptionScopeName", "in": "path", @@ -3352,6 +3590,15 @@ "maxLength": 63, "minLength": 3, "x-ms-parameter-location": "method" + }, + "ObjectReplicationPolicyId": { + "name": "objectReplicationPolicyId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of object replication policy or 'default' if the policy ID is unknown.", + "minLength": 1, + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/table.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/table.json new file mode 100644 index 000000000000..fdec08c8d5fb --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/table.json @@ -0,0 +1,529 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "StorageManagementClient", + "description": "The Azure Storage Management API." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices": { + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_List", + "x-ms-examples": { + "TableServicesList": { + "$ref": "./examples/TableServicesList.json" + } + }, + "description": "List all table services for the storage account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/ListTableServices" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}": { + "put": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_SetServiceProperties", + "x-ms-examples": { + "TableServicesPut": { + "$ref": "./examples/TableServicesPut.json" + } + }, + "description": "Sets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. ", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "The properties of a storage account’s Table service, only properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules can be specified." + } + ], + "responses": { + "200": { + "description": "OK -- Sets The properties of a storage account’s Table service successfully.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableServiceProperties" + ], + "operationId": "TableServices_GetServiceProperties", + "x-ms-examples": { + "TableServicesGet": { + "$ref": "./examples/TableServicesGet.json" + } + }, + "description": "Gets the properties of a storage account’s Table service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableServiceName" + } + ], + "responses": { + "200": { + "description": "OK -- returned the properties of a storage account’s Table service.", + "schema": { + "$ref": "#/definitions/TableServiceProperties" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}": { + "put": { + "tags": [ + "TableService" + ], + "operationId": "Table_Create", + "x-ms-examples": { + "TableOperationPut": { + "$ref": "./examples/TableOperationPut.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "TableService" + ], + "operationId": "Table_Update", + "x-ms-examples": { + "TableOperationPatch": { + "$ref": "./examples/TableOperationPatch.json" + } + }, + "description": "Creates a new table with the specified table name, under the specified account.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- Creates a table with the given table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_Get", + "x-ms-examples": { + "TableOperationGet": { + "$ref": "./examples/TableOperationGet.json" + } + }, + "description": "Gets the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "200": { + "description": "OK -- returned table with the specified table name successfully.", + "schema": { + "$ref": "#/definitions/Table" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "TableService" + ], + "operationId": "Table_Delete", + "x-ms-examples": { + "TableOperationDelete": { + "$ref": "./examples/TableOperationDelete.json" + } + }, + "description": "Deletes the table with the specified table name, under the specified account if it exists.", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/TableName" + } + ], + "responses": { + "204": { + "description": "No Content - Successfully deleted the table with the specified table name" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables": { + "get": { + "tags": [ + "TableService" + ], + "operationId": "Table_List", + "x-ms-examples": { + "TableOperationList": { + "$ref": "./examples/TableOperationList.json" + } + }, + "description": "Gets a list of all the tables under the specified storage account", + "parameters": [ + { + "$ref": "./storage.json#/parameters/ResourceGroupName" + }, + { + "$ref": "./storage.json#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- returned a list of tables successfully.", + "schema": { + "$ref": "#/definitions/ListTableResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ListTableServices": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TableServiceProperties" + }, + "description": "List of table services returned.", + "readOnly": true + } + } + }, + "TableServiceProperties": { + "properties": { + "properties": { + "properties": { + "cors": { + "$ref": "./common.json#/definitions/CorsRules", + "description": "Specifies CORS rules for the Table service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Table service." + } + }, + "x-ms-client-flatten": true, + "x-ms-client-name": "TableServiceProperties", + "description": "The properties of a storage account’s Table service." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The properties of a storage account’s Table service." + }, + "Table": { + "properties": { + "properties": { + "$ref": "#/definitions/TableProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "TableProperties", + "description": "Table resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Properties of the table, including Id, resource name, resource type." + }, + "TableProperties": { + "properties": { + "tableName": { + "type": "string", + "readOnly": true, + "description": "Table name under the specified account" + } + } + }, + "ListTableResource": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Table" + }, + "description": "List of tables returned.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of tables", + "readOnly": true + } + }, + "description": "Response schema. Contains list of tables returned" + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Storage service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Storage service." + } + }, + "parameters": { + "TableServiceName": { + "name": "tableServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Table Service within the specified storage account. Table Service Name must be 'default'", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "TableName": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "description": "A table name must be unique within a storage account and must be between 3 and 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a numeric character.", + "maxLength": 63, + "minLength": 3, + "pattern": "^[A-Za-z][A-Za-z0-9]{2,62}$", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storage/resource-manager/readme.md b/specification/storage/resource-manager/readme.md index a13e1dafd348..27132c56a3d2 100644 --- a/specification/storage/resource-manager/readme.md +++ b/specification/storage/resource-manager/readme.md @@ -38,6 +38,8 @@ input-file: - Microsoft.Storage/stable/2019-06-01/storage.json - Microsoft.Storage/stable/2019-06-01/blob.json - Microsoft.Storage/stable/2019-06-01/file.json +- Microsoft.Storage/stable/2019-06-01/queue.json +- Microsoft.Storage/stable/2019-06-01/table.json directive: - suppress: R3018 @@ -297,6 +299,8 @@ input-file: - $(this-folder)/Microsoft.Storage/stable/2019-06-01/storage.json - $(this-folder)/Microsoft.Storage/stable/2019-06-01/blob.json - $(this-folder)/Microsoft.Storage/stable/2019-06-01/file.json + - $(this-folder)/Microsoft.Storage/stable/2019-06-01/queue.json + - $(this-folder)/Microsoft.Storage/stable/2019-06-01/table.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/storage.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/blob.json - $(this-folder)/Microsoft.Storage/stable/2019-04-01/file.json diff --git a/specification/storage/resource-manager/readme.python.md b/specification/storage/resource-manager/readme.python.md index 56bb191e919e..33cad3bd0119 100644 --- a/specification/storage/resource-manager/readme.python.md +++ b/specification/storage/resource-manager/readme.python.md @@ -2,21 +2,44 @@ These settings apply only when `--python` is specified on the command line. -```yaml $(python) +```yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 package-name: azure-mgmt-storage + payload-flattening-threshold: 2 clear-output-folder: true no-namespace-folders: true ``` +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-storage +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-2019-06 + - tag: package-2019-04 + - tag: package-2018-11 + - tag: package-2018-07 + - tag: package-2018-03 + - tag: package-2018-02 + - tag: package-2017-10 + - tag: package-2017-06 + - tag: package-2016-12 + - tag: package-2016-01 + - tag: package-2015-06 +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true batch: - tag: package-2019-06 - tag: package-2019-04 @@ -29,6 +52,13 @@ batch: - tag: package-2016-12 - tag: package-2016-01 - tag: package-2015-06 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/ +clear-output-folder: false +perform-load: false ``` ### Tag: package-2019-06 and python @@ -36,7 +66,9 @@ batch: These settings apply only when `--tag=package-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-06' && $(python) +``` yaml $(tag) == 'package-2019-06' +namespace: azure.mgmt.storage.v2019_06_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_06_01 python: namespace: azure.mgmt.storage.v2019_06_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_06_01 @@ -46,7 +78,9 @@ python: These settings apply only when `--tag=package-2019-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-04' && $(python) +``` yaml $(tag) == 'package-2019-04' +namespace: azure.mgmt.storage.v2019_04_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_04_01 python: namespace: azure.mgmt.storage.v2019_04_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_04_01 @@ -57,7 +91,9 @@ python: These settings apply only when `--tag=package-2018-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-11' && $(python) +``` yaml $(tag) == 'package-2018-11' +namespace: azure.mgmt.storage.v2018_11_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_11_01 python: namespace: azure.mgmt.storage.v2018_11_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_11_01 @@ -68,7 +104,9 @@ python: These settings apply only when `--tag=package-2018-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-07' && $(python) +``` yaml $(tag) == 'package-2018-07' +namespace: azure.mgmt.storage.v2018_07_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01 python: namespace: azure.mgmt.storage.v2018_07_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01 @@ -79,7 +117,9 @@ python: These settings apply only when `--tag=package-2018-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-03' && $(python) +``` yaml $(tag) == 'package-2018-03' +namespace: azure.mgmt.storage.v2018_03_01_preview +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview python: namespace: azure.mgmt.storage.v2018_03_01_preview output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview @@ -90,7 +130,9 @@ python: These settings apply only when `--tag=package-2018-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-02' && $(python) +``` yaml $(tag) == 'package-2018-02' +namespace: azure.mgmt.storage.v2018_02_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01 python: namespace: azure.mgmt.storage.v2018_02_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01 @@ -101,7 +143,9 @@ python: These settings apply only when `--tag=package-2017-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-10' && $(python) +``` yaml $(tag) == 'package-2017-10' +namespace: azure.mgmt.storage.v2017_10_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01 python: namespace: azure.mgmt.storage.v2017_10_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01 @@ -112,7 +156,9 @@ python: These settings apply only when `--tag=package-2017-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-06' && $(python) +``` yaml $(tag) == 'package-2017-06' +namespace: azure.mgmt.storage.v2017_06_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01 python: namespace: azure.mgmt.storage.v2017_06_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01 @@ -123,7 +169,9 @@ python: These settings apply only when `--tag=package-2016-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-12' && $(python) +``` yaml $(tag) == 'package-2016-12' +namespace: azure.mgmt.storage.v2016_12_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01 python: namespace: azure.mgmt.storage.v2016_12_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01 @@ -134,7 +182,9 @@ python: These settings apply only when `--tag=package-2016-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-01' && $(python) +``` yaml $(tag) == 'package-2016-01' +namespace: azure.mgmt.storage.v2016_01_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01 python: namespace: azure.mgmt.storage.v2016_01_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01 @@ -145,7 +195,9 @@ python: These settings apply only when `--tag=package-2015-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-06' && $(python) +``` yaml $(tag) == 'package-2015-06' +namespace: azure.mgmt.storage.v2015_06_15 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15 python: namespace: azure.mgmt.storage.v2015_06_15 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15 diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_CreateOrUpdate.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_CreateOrUpdate.json new file mode 100644 index 000000000000..8749b6b5c3e7 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_CreateOrUpdate.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "201": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "5.3.23", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "5.3.24" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Delete.json new file mode 100644 index 000000000000..84d0398fe28d --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Flush.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Flush.json new file mode 100644 index 000000000000..84d0398fe28d --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Flush.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Get.json new file mode 100644 index 000000000000..39e20ed9a4cd --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_List.json new file mode 100644 index 000000000000..e4274e6b3a9f --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_List.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Configuring", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_ListByResourceGroup.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_ListByResourceGroup.json new file mode 100644 index 000000000000..258735a01725 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_ListByResourceGroup.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Start.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Start.json new file mode 100644 index 000000000000..84d0398fe28d --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Start.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Stop.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Stop.json new file mode 100644 index 000000000000..84d0398fe28d --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Stop.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Update.json new file mode 100644 index 000000000000..b5fdb34b4458 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_Update.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + }, + "networkSettings": { + "mtu": 1500 + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_UpgradeFirmware.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_UpgradeFirmware.json new file mode 100644 index 000000000000..8fc7d10d1476 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Caches_UpgradeFirmware.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "201": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Operations_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Operations_List.json new file mode 100644 index 000000000000..458e833f469c --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "x-ms-client-request-id": [ + "7e655b68-e491-4cb6-90c3-6a5b10b7bd17" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.StorageCache/caches/write", + "display": { + "operation": "Create or Update Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + }, + { + "name": "Microsoft.StorageCache/caches/delete", + "display": { + "operation": "Delete Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Skus_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Skus_List.json new file mode 100644 index 000000000000..39f07ea8835a --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/Skus_List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "caches", + "name": "Standard_2G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "2" + }, + { + "name": "cache sizes(GB)", + "value": "3072,6144,12288" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_4G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "4" + }, + { + "name": "cache sizes(GB)", + "value": "6144,12288,24576" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_8G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "8" + }, + { + "name": "cache sizes(GB)", + "value": "12288,24576,49152" + } + ], + "restrictions": [] + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_CreateOrUpdate.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_CreateOrUpdate.json new file mode 100644 index 000000000000..805692e66fd3 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_CreateOrUpdate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cacheName": "sc1", + "storageTargetName": "st1", + "storagetarget": { + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "201": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Delete.json new file mode 100644 index 000000000000..1eff5e3b6b78 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Get.json new file mode 100644 index 000000000000..a574190989f5 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_ListByCache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_ListByCache.json new file mode 100644 index 000000000000..cd34e580eccf --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/StorageTargets_ListByCache.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01", + "cacheName": "sc1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + }, + { + "name": "st2", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st2", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazy/place/on/cache", + "targetPath": "/" + } + ], + "targetType": "clfs", + "clfs": { + "target": "https://atj5c2fc9b8c00.blob.core.windows.net/atj5c2fc9b8c01" + } + } + }, + { + "name": "st3", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st3", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazier/place/on/cache", + "targetPath": "/", + "nfsExport": "" + } + ], + "targetType": "unknown", + "unknown": { + "unknownMap": { + "foo": "bar", + "foo2": "test" + } + } + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/UsageModels_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/UsageModels_List.json new file mode 100644 index 000000000000..dbfb82b4dba2 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/examples/UsageModels_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "modelName": "READ_HEAVY_INFREQ", + "targetType": "nfs3", + "display": { + "description": "Read heavy, infrequent changes" + } + }, + { + "modelName": "WRITE_AROUND", + "targetType": "nfs3", + "display": { + "description": "Clients write directly to storage" + } + }, + { + "modelName": "WRITE_WORKLOAD_15", + "targetType": "nfs3", + "display": { + "description": "Write workload > 15%" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/storagecache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/storagecache.json new file mode 100644 index 000000000000..3549bc83126f --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/stable/2020-03-01/storagecache.json @@ -0,0 +1,1777 @@ +{ + "swagger": "2.0", + "info": { + "description": "A Storage Cache provides scalable caching service for NAS clients, serving data from either NFSv3 or Blob at-rest storage (referred to as \"Storage Targets\"). These operations allow you to manage Caches.", + "title": "Storage Cache Mgmt Client", + "version": "2020-03-01" + }, + "host": "management.azure.com", + "basePath": "/", + "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": { + "/providers/Microsoft.StorageCache/operations": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of available Resource Provider operations.", + "schema": { + "$ref": "#/definitions/ApiOperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "tags": [ + "Operations" + ], + "description": "Lists all of the available Resource Provider operations.", + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/skus": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of SKU descriptors.", + "schema": { + "$ref": "#/definitions/ResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Skus_List": { + "$ref": "./examples/Skus_List.json" + } + }, + "tags": [ + "SKUs" + ], + "description": "Get the list of StorageCache.Cache SKUs available to this subscription.", + "operationId": "Skus_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/usageModels": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of UsageModel descriptors.", + "schema": { + "$ref": "#/definitions/UsageModelsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "UsageModels_List": { + "$ref": "./examples/UsageModels_List.json" + } + }, + "tags": [ + "UsageModels" + ], + "description": "Get the list of Cache Usage Models available to this subscription.", + "operationId": "UsageModels_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Caches_List": { + "$ref": "./examples/Caches_List.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a subscription.", + "operationId": "Caches_List" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_ListByResourceGroup": { + "$ref": "./examples/Caches_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a resource group.", + "operationId": "Caches_ListByResourceGroup" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Cache deleted.", + "schema": {} + }, + "202": { + "description": "Started the Cache's transition to Deleted state. Poll the Cache to monitor.", + "schema": {} + }, + "204": { + "description": "Cache deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Delete": { + "$ref": "./examples/Caches_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Schedules a Cache for deletion.", + "operationId": "Caches_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the Cache object corresponding to cacheName.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Get": { + "$ref": "./examples/Caches_Get.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns a Cache.", + "operationId": "Caches_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user-selectable properties of the new Cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Cache created or updated.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "201": { + "description": "Cache creation or update has been initiated. Poll the new Cache's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_CreateOrUpdate": { + "$ref": "./examples/Caches_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Create or update a Cache.", + "operationId": "Caches_CreateOrUpdate" + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user-selectable properties of the Cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Updated the Cache.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Update": { + "$ref": "./examples/Caches_Update.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Update a Cache instance.", + "operationId": "Caches_Update" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/flush": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "All cached data has been flushed to the Storage Target(s).", + "schema": {} + }, + "202": { + "description": "Cache has started flushing to its Storage Target(s). Poll the Cache's state field to monitor.", + "schema": {} + }, + "204": { + "description": "Cache flushed.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Flush": { + "$ref": "./examples/Caches_Flush.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "tags": [ + "Caches" + ], + "description": "Tells a Cache to write all dirty data to the Storage Target(s). During the flush, clients will see errors returned until the flush is complete.", + "operationId": "Caches_Flush" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/start": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is Active.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Active. Poll the Cache's state field to monitor.", + "schema": {} + }, + "204": { + "description": "Restarted VMs associated with the cache.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Start": { + "$ref": "./examples/Caches_Start.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "tags": [ + "Caches" + ], + "description": "Tells a Stopped state Cache to transition to Active state.", + "operationId": "Caches_Start" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/stop": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is stopped.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Stopped. Poll the Cache's state field to monitor.", + "schema": {} + }, + "204": { + "description": "Stopped VMs associated with the cache.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Stop": { + "$ref": "./examples/Caches_Stop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "tags": [ + "Caches" + ], + "description": "Tells an Active Cache to transition to Stopped state.", + "operationId": "Caches_Stop" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the list of Storage Targets defined by cacheName.", + "schema": { + "$ref": "#/definitions/StorageTargetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/StorageTargets_ListByCache.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns a list of Storage Targets for the specified Cache.", + "operationId": "StorageTargets_ListByCache" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets/{storageTargetName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Name of Storage Target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Storage target deleted.", + "schema": {} + }, + "202": { + "description": "Started the Storage Target's deletion. Poll the Cache's Storage Targets to monitor.", + "schema": {} + }, + "204": { + "description": "Storage Target deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Delete": { + "$ref": "./examples/StorageTargets_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Removes a Storage Target from a Cache. This operation is allowed at any time, but if the Cache is down or unhealthy, the actual removal of the Storage Target may be delayed until the Cache is healthy again. Note that if the Cache has data to flush to the Storage Target, the data will be flushed before the Storage Target will be deleted.", + "operationId": "StorageTargets_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Name of the Storage Target. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the Storage Target object corresponding to storageTargetName.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Get": { + "$ref": "./examples/StorageTargets_Get.json" + } + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns a Storage Target from a Cache.", + "operationId": "StorageTargets_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Name of the Storage Target. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the definition of a Storage Target.", + "in": "body", + "name": "storagetarget", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + } + ], + "responses": { + "200": { + "description": "Storage Target has been created or updated.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "201": { + "description": "Storage Target creation or update has been initiated. Poll the new Storage Target's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_CreateOrUpdate": { + "$ref": "./examples/StorageTargets_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Create or update a Storage Target. This operation is allowed at any time, but if the Cache is down or unhealthy, the actual creation/modification of the Storage Target may be delayed until the Cache is healthy again.", + "operationId": "StorageTargets_CreateOrUpdate" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/upgrade": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of Cache. Length of name must be not greater than 80 and chars must be in list of [-0-9a-zA-Z_] char class.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Cache firmware is up to date.", + "schema": {} + }, + "202": { + "description": "Cache has started the upgrade. Poll the Cache's state field to monitor.", + "schema": {} + }, + "204": { + "description": "Cache firmware is up to date.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_UpgradeFirmware": { + "$ref": "./examples/Caches_UpgradeFirmware.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "tags": [ + "Caches" + ], + "description": "Upgrade a Cache's firmware if a new version is available. Otherwise, this operation has no effect.", + "operationId": "Caches_UpgradeFirmware" + } + } + }, + "definitions": { + "ApiOperation": { + "description": "REST API operation description: see https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md#r3023-operationsapiimplementation", + "properties": { + "display": { + "description": "The object that represents the operation.", + "properties": { + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft.StorageCache", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Cache, etc.", + "type": "string" + } + } + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + } + }, + "type": "object" + }, + "ApiOperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string" + }, + "value": { + "description": "List of Resource Provider operations supported by the Microsoft.StorageCache resource provider.", + "items": { + "$ref": "#/definitions/ApiOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "CloudError": { + "x-ms-external": true, + "description": "An error response.", + "properties": { + "error": { + "description": "The body of the error.", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object" + }, + "CloudErrorBody": { + "description": "An error response.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "type": "array" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + } + }, + "type": "object" + }, + "Cache": { + "description": "A Cache instance. Follows Azure Resource Manager standards: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md", + "properties": { + "tags": { + "description": "ARM tags as name/value pairs.", + "type": "object" + }, + "id": { + "description": "Resource ID of the Cache.", + "readOnly": true, + "$ref": "#/definitions/URLString" + }, + "location": { + "description": "Region name string.", + "type": "string" + }, + "name": { + "description": "Name of Cache.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "type": { + "description": "Type of the Cache; Microsoft.StorageCache/Cache", + "readOnly": true, + "type": "string" + }, + "identity": { + "$ref": "#/definitions/CacheIdentity", + "description": "The identity of the cache, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the Cache.", + "properties": { + "cacheSizeGB": { + "description": "The size of this Cache, in GB.", + "type": "integer" + }, + "health": { + "description": "Health of the Cache.", + "readOnly": true, + "$ref": "#/definitions/CacheHealth" + }, + "mountAddresses": { + "description": "Array of IP addresses that can be used by clients mounting this Cache.", + "readOnly": true, + "items": { + "type": "string" + }, + "type": "array" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "subnet": { + "description": "Subnet used for the Cache.", + "$ref": "#/definitions/URLString" + }, + "upgradeStatus": { + "description": "Upgrade status of the Cache.", + "$ref": "#/definitions/CacheUpgradeStatus" + }, + "networkSettings": { + "$ref": "#/definitions/CacheNetworkSettings", + "description": "Specifies network settings of the cache." + }, + "encryptionSettings": { + "$ref": "#/definitions/CacheEncryptionSettings", + "description": "Specifies encryption settings of the cache." + }, + "securitySettings": { + "$ref": "#/definitions/CacheSecuritySettings", + "description": "Specifies security settings of the cache." + } + }, + "type": "object" + }, + "sku": { + "description": "SKU for the Cache.", + "properties": { + "name": { + "description": "SKU name for this Cache.", + "type": "string" + } + }, + "type": "object" + } + }, + "x-ms-azure-resource": true, + "type": "object" + }, + "CacheIdentity": { + "description": "Cache identity properties.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the cache." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the cache." + }, + "type": { + "type": "string", + "description": "The type of identity used for the cache", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "CacheIdentityType", + "modelAsString": false + } + } + } + }, + "CacheNetworkSettings": { + "description": "Cache network settings.", + "properties": { + "mtu": { + "description": "The IPv4 maximum transmission unit configured for the subnet.", + "type": "integer", + "minimum": 576, + "maximum": 1500, + "default": 1500 + }, + "utilityAddresses": { + "description": "Array of additional IP addresses used by this Cache.", + "readOnly": true, + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "CacheEncryptionSettings": { + "description": "Cache encryption settings.", + "properties": { + "keyEncryptionKey": { + "x-ms-secret": true, + "$ref": "#/definitions/KeyVaultKeyReference", + "description": "Specifies the location of the key encryption key in Key Vault." + } + } + }, + "CacheSecuritySettings": { + "description": "Cache security settings.", + "properties": { + "rootSquash": { + "type": "boolean", + "description": "root squash of cache property." + } + } + }, + "KeyVaultKeyReference": { + "description": "Describes a reference to Key Vault Key.", + "properties": { + "keyUrl": { + "type": "string", + "description": "The URL referencing a key encryption key in Key Vault." + }, + "sourceVault": { + "description": "Describes a resource Id to source Key Vault.", + "properties": { + "id": { + "type": "string", + "description": "Resource Id." + } + } + } + }, + "required": [ + "keyUrl", + "sourceVault" + ] + }, + "CachesListResult": { + "description": "Result of the request to list Caches. It contains a list of Caches and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of Cache list results, if there are any.", + "type": "string" + }, + "value": { + "description": "List of Caches.", + "items": { + "$ref": "#/definitions/Cache" + }, + "type": "array" + } + }, + "type": "object" + }, + "CacheHealth": { + "description": "An indication of Cache health. Gives more information about health than just that related to provisioning.", + "properties": { + "state": { + "description": "List of Cache health states.", + "enum": [ + "Unknown", + "Healthy", + "Degraded", + "Down", + "Transitioning", + "Stopping", + "Stopped", + "Upgrading", + "Flushing" + ], + "x-ms-enum": { + "name": "HealthStateType", + "modelAsString": true + }, + "type": "string" + }, + "statusDescription": { + "description": "Describes explanation of state.", + "type": "string" + } + } + }, + "CacheUpgradeStatus": { + "description": "Properties describing the software upgrade state of the Cache.", + "properties": { + "currentFirmwareVersion": { + "description": "Version string of the firmware currently installed on this Cache.", + "type": "string", + "readOnly": true + }, + "firmwareUpdateStatus": { + "description": "True if there is a firmware update ready to install on this Cache. The firmware will automatically be installed after firmwareUpdateDeadline if not triggered earlier via the upgrade operation.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "FirmwareStatusType", + "modelAsString": true + }, + "readOnly": true, + "type": "string" + }, + "firmwareUpdateDeadline": { + "description": "Time at which the pending firmware update will automatically be installed on the Cache.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastFirmwareUpdate": { + "description": "Time of the last successful firmware update.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "pendingFirmwareVersion": { + "description": "When firmwareUpdateAvailable is true, this field holds the version string for the update.", + "type": "string", + "readOnly": true + } + }, + "type": "object" + }, + "UnknownProperties": { + "description": "Properties of an unknown type of Storage Target.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "StorageTarget": { + "type": "object", + "description": "Type of the Storage Target.", + "allOf": [ + { + "$ref": "#/definitions/StorageTargetResource" + }, + { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "StorageTarget properties", + "$ref": "#/definitions/StorageTargetProperties" + } + } + } + ] + }, + "StorageTargetResource": { + "description": "Resource used by a Cache.", + "properties": { + "name": { + "description": "Name of the Storage Target.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID of the Storage Target." + }, + "type": { + "description": "Type of the Storage Target; Microsoft.StorageCache/Cache/StorageTarget", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "StorageTargetProperties": { + "type": "object", + "description": "Properties of the Storage Target.", + "discriminator": "targetBaseType", + "properties": { + "targetBaseType": { + "description": "Type of the Storage Target.", + "$ref": "#/definitions/StorageTargetType" + }, + "junctions": { + "description": "List of Cache namespace junctions to target for namespace associations.", + "type": "array", + "items": { + "$ref": "#/definitions/NamespaceJunction" + } + }, + "targetType": { + "description": "Type of the Storage Target.", + "type": "string" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "nfs3": { + "description": "Properties when targetType is nfs3.", + "$ref": "#/definitions/Nfs3Target" + }, + "clfs": { + "description": "Properties when targetType is clfs.", + "$ref": "#/definitions/ClfsTarget" + }, + "unknown": { + "description": "Properties when targetType is unknown.", + "$ref": "#/definitions/UnknownTarget" + } + }, + "required": [ + "targetBaseType" + ] + }, + "StorageTargetType": { + "type": "string", + "description": "Type of the Storage Target.", + "enum": [ + "nfs3", + "clfs", + "unknown" + ], + "x-ms-enum": { + "name": "StorageTargetType", + "modelAsString": true + } + }, + "Nfs3TargetProperties": { + "description": "An NFSv3 mount point for use as a Storage Target.", + "type": "object", + "x-ms-discriminator-value": "nfs3", + "allOf": [ + { + "$ref": "#/definitions/StorageTargetProperties" + } + ] + }, + "Nfs3Target": { + "description": "Properties pertained to Nfs3Target", + "properties": { + "target": { + "description": "IP address or host name of an NFSv3 host (e.g., 10.0.44.44).", + "pattern": "^[-.0-9a-zA-Z]+$", + "type": "string" + }, + "usageModel": { + "description": "Identifies the primary usage model to be used for this Storage Target. Get choices from .../usageModels", + "type": "string" + } + } + }, + "ClfsTargetProperties": { + "description": "Storage container for use as a CLFS Storage Target.", + "type": "object", + "x-ms-discriminator-value": "clfs", + "allOf": [ + { + "$ref": "#/definitions/StorageTargetProperties" + } + ] + }, + "ClfsTarget": { + "description": "Properties pertained to ClfsTarget", + "properties": { + "target": { + "description": "Resource ID of storage container.", + "$ref": "#/definitions/URLString" + } + } + }, + "UnknownTargetProperties": { + "description": "Storage container for use as an Unknown Storage Target.", + "type": "object", + "x-ms-discriminator-value": "unknown", + "allOf": [ + { + "$ref": "#/definitions/StorageTargetProperties" + } + ] + }, + "UnknownTarget": { + "description": "Properties pertained to UnknownTarget", + "properties": { + "unknownMap": { + "description": "Dictionary of string->string pairs containing information about the Storage Target.", + "$ref": "#/definitions/UnknownProperties" + } + } + }, + "ResourceName": { + "description": "Schema for the name of resources served by this provider. Note that objects will contain an odata @id annotation as appropriate. This will contain the complete URL of the object. These names are case-preserving, but not case sensitive.", + "pattern": "^[-0-9a-zA-Z_]{1,80}$", + "type": "string" + }, + "ResourceSku": { + "description": "A resource SKU.", + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "capabilities": { + "description": "A list of capabilities of this SKU, such as throughput or ops/sec.", + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "type": "array" + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g., West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "description": "The set of locations that the SKU is available.", + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "type": "array" + }, + "name": { + "description": "The name of this SKU.", + "type": "string" + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions preventing this SKU from being used. This is empty if there are no restrictions." + } + }, + "type": "object" + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. In this version, the only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location, then this would be the different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". \"QuotaId\" is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. \"NotAvailableForSubscription\" is related to capacity at the datacenter." + } + }, + "description": "The restrictions preventing this SKU from being used." + }, + "ResourceSkuCapabilities": { + "description": "A resource SKU capability.", + "properties": { + "name": { + "description": "Name of a capability, such as ops/sec.", + "type": "string" + }, + "value": { + "description": "Quantity, if the capability is measured by quantity.", + "type": "string" + } + }, + "type": "object" + }, + "ResourceSkuLocationInfo": { + "description": "Resource SKU location information.", + "properties": { + "location": { + "description": "Location where this SKU is available.", + "type": "string" + }, + "zones": { + "description": "Zones if any.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, + "ResourceSkusResult": { + "description": "The response from the List Cache SKUs operation.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Cache SKUs.", + "type": "string" + }, + "value": { + "description": "The list of SKUs available for the subscription.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSku" + }, + "type": "array" + } + } + }, + "NamespaceJunction": { + "description": "A namespace junction.", + "type": "object", + "properties": { + "namespacePath": { + "description": "Namespace path on a Cache for a Storage Target.", + "type": "string" + }, + "targetPath": { + "description": "Path in Storage Target to which namespacePath points.", + "type": "string" + }, + "nfsExport": { + "description": "NFS export where targetPath exists.", + "type": "string" + } + } + }, + "StorageTargetsResult": { + "description": "A list of Storage Targets.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Storage Targets.", + "type": "string" + }, + "value": { + "description": "The list of Storage Targets defined for the Cache.", + "items": { + "$ref": "#/definitions/StorageTarget" + }, + "type": "array" + } + }, + "type": "object" + }, + "URLString": { + "description": "A fully qualified URL.", + "type": "string" + }, + "UsageModel": { + "description": "A usage model.", + "properties": { + "display": { + "description": "Localized information describing this usage model.", + "type": "object", + "properties": { + "description": { + "description": "String to display for this usage model.", + "type": "string" + } + } + }, + "modelName": { + "description": "Non-localized keyword name for this usage model.", + "type": "string" + }, + "targetType": { + "description": "The type of Storage Target to which this model is applicable (only nfs3 as of this version).", + "type": "string" + } + }, + "type": "object" + }, + "UsageModelsResult": { + "description": "A list of Cache usage models.", + "properties": { + "nextLink": { + "description": "The URI to fetch the next page of Cache usage models.", + "type": "string" + }, + "value": { + "description": "The list of usage models available for the subscription.", + "items": { + "$ref": "#/definitions/UsageModel" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/storagecache/resource-manager/readme.az.md b/specification/storagecache/resource-manager/readme.az.md new file mode 100644 index 000000000000..33ab6c233753 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storagecache + namespace: azure.mgmt.storagecache + package-name: azure-mgmt-storagecache +az-output-folder: $(azure-cli-extension-folder)/src/storagecache +python-sdk-output-folder: "$(az-output-folder)/azext_storagecache/vendored_sdks/storagecache" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/storagecache/resource-manager/readme.cli.md b/specification/storagecache/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/storagecache/resource-manager/readme.go.md b/specification/storagecache/resource-manager/readme.go.md index 87b00ff4bf30..3a18770658db 100644 --- a/specification/storagecache/resource-manager/readme.go.md +++ b/specification/storagecache/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03-01 - tag: package-2019-11-01 - tag: package-2019-08 ``` +### Tag: package-2020-03-01 and go + +These settings apply only when `--tag=package-2020-03-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + ### Tag: package-2019-11-01 and go These settings apply only when `--tag=package-2019-11-01 --go` is specified on the command line. diff --git a/specification/storagecache/resource-manager/readme.java.md b/specification/storagecache/resource-manager/readme.java.md index c6117d3c8365..4f494817750c 100644 --- a/specification/storagecache/resource-manager/readme.java.md +++ b/specification/storagecache/resource-manager/readme.java.md @@ -16,10 +16,25 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storagecache ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03-01 - tag: package-2019-11-01 - tag: package-2019-08 ``` + +### Tag: package-2020-03-01 and java + +These settings apply only when `--tag=package-2020-03-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storagecache.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/storagecache/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-11-01 and java These settings apply only when `--tag=package-2019-11-01 --java` is specified on the command line. diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index de19e2e45f8c..e6fe45a52294 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -26,11 +26,18 @@ These are the global settings for the StorageCache API. ``` yaml openapi-type: arm -tag: package-2019-11-01 +tag: package-2020-03-01 add-credentials: true title: StorageCacheManagementClient ``` +### Tag: package-2020-03-01 +These settings apply only when `--tag=package-2020-03-01` is specified on the command line. + +```yaml $(tag) == 'package-2020-03-01' +input-file: + - Microsoft.StorageCache/stable/2020-03-01/storagecache.json +``` ### Tag: package-2019-11-01 These settings apply only when `--tag=package-2019-11-01` is specified on the command line. @@ -64,6 +71,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_storagecache'] + - repo: azure-cli-extensions ``` ## Python @@ -103,6 +111,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.StorageCache/stable/2020-03-01/storagecache.json - $(this-folder)/Microsoft.StorageCache/stable/2019-11-01/storagecache.json - $(this-folder)/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json diff --git a/specification/storagecache/resource-manager/readme.ruby.md b/specification/storagecache/resource-manager/readme.ruby.md index 89fe6cc517ce..57c66942a852 100644 --- a/specification/storagecache/resource-manager/readme.ruby.md +++ b/specification/storagecache/resource-manager/readme.ruby.md @@ -12,10 +12,21 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2020-03-01 - tag: package-2019-11-01 - tag: package-2019-08 ``` +### Tag: package-2020-03-01 and ruby + +These settings apply only when `--tag=package-2020-03-01 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(ruby) +namespace: "Azure::StorageCache::Mgmt::V2020-03-01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_storagecache/lib +``` + ### Tag: package-2019-11-01 and ruby These settings apply only when `--tag=package-2019-11-01 --ruby` is specified on the command line. diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json index f9d11ac2df19..9dea85818798 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json @@ -1,13 +1,13 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", "body": { "location": "West US", "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -39,7 +39,7 @@ "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -78,8 +78,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } @@ -87,7 +87,7 @@ "201": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -126,8 +126,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json index 37b2b754c6bc..2b69050a8f49 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json @@ -1,14 +1,14 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -47,8 +47,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json index 148beb2dc74c..f18299e4c3c0 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json @@ -1,15 +1,15 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -48,8 +48,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json index 38c483bbbdad..35e9355fe822 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json index 706514e82e46..f6f10d44d4d2 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" }, "responses": { "200": { @@ -10,7 +10,7 @@ "value": [ { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/xtprodtestwu", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/xtprodtestwu", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -46,7 +46,7 @@ "state": "Received", "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test-by1-ssd-2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test-by1-ssd-2", "name": "test-by1-ssd-2", "type": "Microsoft.ImportExport/jobs", "location": "West US" diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json index 6d7de1d7d00e..5f15bc48c88b 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, "responses": { "200": { @@ -9,7 +9,7 @@ "value": [ { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -53,14 +53,14 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-01", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-01", "name": "test-bn1-import-cpu100-01", "type": "Microsoft.ImportExport/jobs", "location": "East US 2" }, { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -109,7 +109,7 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-02", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-02", "name": "test-bn1-import-cpu100-02", "type": "Microsoft.ImportExport/jobs", "location": "East US 2" diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json index fbd80906abc7..2b930e957008 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", "body": { "properties": { "state": "", @@ -16,7 +16,7 @@ "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -55,8 +55,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test-by1-import", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/readme.az.md b/specification/storageimportexport/resource-manager/readme.az.md new file mode 100644 index 000000000000..ad96349897fd --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.az.md @@ -0,0 +1,18 @@ +## Azure CLI + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storageimportexport + package-name: azure-mgmt-storageimportexport + namespace: azure.mgmt.storageimportexport +az-output-folder: $(azure-cli-extension-folder)/src/storageimportexport +python-sdk-output-folder: "$(az-output-folder)/azext_storageimportexport/vendored_sdks/storageimportexport" +cli: + cli-directive: + - where: + type: 'PutJobParameters' + prop: 'properties' + flatten: true +``` diff --git a/specification/storageimportexport/resource-manager/readme.cli.md b/specification/storageimportexport/resource-manager/readme.cli.md new file mode 100644 index 000000000000..94c1be9eda47 --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.cli.md @@ -0,0 +1,20 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: storageimportexport + namespace: azure.mgmt.storageimportexport + package-name: azure-mgmt-storageimportexport + test-scenario: + - name: /Jobs/put/Create job + - name: /Jobs/get/Get job + - name: /Locations/get/Get locations + - name: /BitLockerKeys/post/List BitLocker Keys for drives in a job + - name: /Jobs/get/List jobs in a resource group + - name: /Jobs/get/List jobs in a subscription + - name: /Locations/get/List locations + - name: /Jobs/patch/Update job + - name: /Jobs/delete/Delete job +``` diff --git a/specification/storageimportexport/resource-manager/readme.md b/specification/storageimportexport/resource-manager/readme.md index f4287bb39963..7b2c9dc33212 100644 --- a/specification/storageimportexport/resource-manager/readme.md +++ b/specification/storageimportexport/resource-manager/readme.md @@ -53,6 +53,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-node - repo: azure-sdk-for-js + - repo: azure-cli-extensions ``` ## Go diff --git a/specification/storageimportexport/resource-manager/readme.python.md b/specification/storageimportexport/resource-manager/readme.python.md new file mode 100644 index 000000000000..5cd84499782f --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.storageimportexport + package-name: azure-mgmt-storageimportexport + clear-output-folder: true + package-version: 0.1.0 +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport/azure/mgmt/storageimportexport +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport +``` diff --git a/specification/storagesync/resource-manager/readme.az.md b/specification/storagesync/resource-manager/readme.az.md new file mode 100644 index 000000000000..eaaa83e38207 --- /dev/null +++ b/specification/storagesync/resource-manager/readme.az.md @@ -0,0 +1,25 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storagesync + namespace: azure.mgmt.storagesync + package-name: azure-mgmt-storagesync +az-output-folder: $(azure-cli-extension-folder)/src/storagesync +python-sdk-output-folder: "$(az-output-folder)/azext_storagesync/vendored_sdks/storagesync" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: 'old_parameter_name' +# required: true +# name: 'new_name' + +``` diff --git a/specification/storagesync/resource-manager/readme.md b/specification/storagesync/resource-manager/readme.md index 3ff84ab7e7ea..06488999e660 100644 --- a/specification/storagesync/resource-manager/readme.md +++ b/specification/storagesync/resource-manager/readme.md @@ -127,6 +127,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-cli-extensions ``` ## C# diff --git a/specification/storagesync/resource-manager/readme.python.md b/specification/storagesync/resource-manager/readme.python.md new file mode 100644 index 000000000000..1ce50e5e3e6f --- /dev/null +++ b/specification/storagesync/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: azure.mgmt.storagesync + package-name: azure-mgmt-storagesync + package-version: 2019-06-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync/azure/mgmt/storagesync +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync +``` \ No newline at end of file diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json index 65ad499728a9..e0e193269f79 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json @@ -12,7 +12,13 @@ { "objectId": "67439a9e-8519-4016-a630-f5f805eba567" } - ] + ], + "additionalParameters": { + "customData": { + "key1": "value1", + "key2": true + } + } } }, "responses": { diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json index 84f6fd17ba23..4483cd796e9d 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json @@ -10,6 +10,12 @@ "costCenter": "135366376", "owner": { "objectId": "973034ff-acb7-409c-b731-e789672c7b32" + }, + "additionalParameters": { + "customData": { + "key1": "value1", + "key2": true + } } } }, diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/renameSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/renameSubscription.json index c673259dde23..0c7f7c131eb7 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/renameSubscription.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/renameSubscription.json @@ -3,7 +3,7 @@ "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", "api-version": "2019-10-01-preview", "body": { - "SubscriptionName": "Test Sub" + "subscriptionName": "Test Sub" } }, "responses": { diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json index a065c890aa85..8605058478c8 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json @@ -542,6 +542,13 @@ "MS-AZR-0017P", "MS-AZR-0148P" ] + }, + "additionalParameters": { + "description": "Additional, untyped parameters to support custom subscription creation scenarios.", + "type": "object", + "additionalProperties": { + "type": "object" + } } } }, @@ -571,6 +578,13 @@ "managementGroupId": { "description": "The identifier of the management group to which this subscription will be associated.", "type": "string" + }, + "additionalParameters": { + "description": "Additional, untyped parameters to support custom subscription creation scenarios.", + "type": "object", + "additionalProperties": { + "type": "object" + } } } }, diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/getSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/getSubscription.json new file mode 100644 index 000000000000..bbc99e2a75fd --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/getSubscription.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "authorizationSource": "Legacy", + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "displayName": "Subscription2", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + } + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listLocations.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listLocations.json new file mode 100644 index 000000000000..7c44bf0f50b9 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listLocations.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/83aa47df-e3e9-49ff-877b-94304bf3d3ad/locations/eastasia", + "name": "eastasia", + "displayName": "East Asia", + "longitude": "114.188", + "latitude": "22.267" + }, + { + "id": "/subscriptions/83aa47df-e3e9-49ff-877b-94304bf3d3ad/locations/southeastasia", + "name": "southeastasia", + "displayName": "Southeast Asia", + "longitude": "103.833", + "latitude": "1.283" + } + ] + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listSubscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listSubscriptions.json new file mode 100644 index 000000000000..5a6caa076237 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listSubscriptions.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "nextLink": "string", + "value": [ + { + "id": "/subscriptions/83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "authorizationSource": "Legacy", + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "displayName": "SubscriptionName", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + } + } + ] + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listTenants.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listTenants.json new file mode 100644 index 000000000000..0b5ecbff5055 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/examples/listTenants.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "nextLink": "string", + "value": [ + { + "id": "/tenants/72f988bf-86f1-41af-91ab-2d7cd011db47", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" + }, + { + "id": "/tenants/33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d" + } + ] + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/subscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/subscriptions.json index 020fda6e55cb..60771a02d266 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/subscriptions.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2016-06-01/subscriptions.json @@ -42,6 +42,11 @@ "operationId": "Subscriptions_ListLocations", "summary": "Gets all available geo-locations.", "description": "This operation provides all the locations that are available for resource providers; however, each resource provider may support a subset of this list.", + "x-ms-examples": { + "listLocations": { + "$ref": "./examples/listLocations.json" + } + }, "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -70,6 +75,11 @@ ], "operationId": "Subscriptions_Get", "description": "Gets details about a specified subscription.", + "x-ms-examples": { + "getSubscription": { + "$ref": "./examples/getSubscription.json" + } + }, "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -95,6 +105,11 @@ ], "operationId": "Subscriptions_List", "description": "Gets all subscriptions for a tenant.", + "x-ms-examples": { + "listSubscriptions": { + "$ref": "./examples/listSubscriptions.json" + } + }, "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -120,6 +135,11 @@ ], "operationId": "Tenants_List", "description": "Gets the tenants for your account.", + "x-ms-examples": { + "listTenants": { + "$ref": "./examples/listTenants.json" + } + }, "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" diff --git a/specification/subscription/resource-manager/readme.az.md b/specification/subscription/resource-manager/readme.az.md new file mode 100644 index 000000000000..5d350afab4b8 --- /dev/null +++ b/specification/subscription/resource-manager/readme.az.md @@ -0,0 +1,12 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: account + package-name: azure-mgmt-subscription + namespace: azure.mgmt.subscription +az-output-folder: $(azure-cli-extension-folder)/src/account +python-sdk-output-folder: "$(az-output-folder)/azext_account/vendored_sdks/subscription" +``` diff --git a/specification/subscription/resource-manager/readme.go.md b/specification/subscription/resource-manager/readme.go.md index df396b0b4fb0..b52d772b3e18 100644 --- a/specification/subscription/resource-manager/readme.go.md +++ b/specification/subscription/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-10-preview - tag: package-2018-03-preview - tag: package-2017-11-preview ``` +### Tag: package-2019-10-preview and go + +These settings apply only when `--tag=package-2019-10-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-10-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-10-01-preview/$(namespace) +``` + ### Tag: package-2018-03-preview and go These settings apply only when `--tag=package-2018-03-preview --go` is specified on the command line. diff --git a/specification/subscription/resource-manager/readme.md b/specification/subscription/resource-manager/readme.md index 9a5b70b30c9e..214a5e7d5dec 100644 --- a/specification/subscription/resource-manager/readme.md +++ b/specification/subscription/resource-manager/readme.md @@ -31,7 +31,7 @@ These are the global settings for the Subscription API. ``` yaml openapi-type: arm -tag: package-2019-03-preview +tag: package-2019-10-preview ``` ### Tag: package-2020-01 @@ -51,6 +51,7 @@ These settings apply only when `--tag=package-2019-10-preview` is specified on t ``` yaml $(tag) == 'package-2019-10-preview' input-file: +- Microsoft.Subscription/stable/2016-06-01/subscriptions.json - Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json title: SubscriptionClient description: The subscription client @@ -120,6 +121,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-node - repo: azure-sdk-for-js + - repo: azure-cli-extensions ``` @@ -145,9 +147,23 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-subscription ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-10-preview - tag: package-2017-11-preview ``` +### Tag: package-2019-10-preview and java + +These settings apply only when `--tag=package-2019-10-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-10-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.subscription.v2019_10_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/subscription/mgmt-v2019_10_01_preview +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2017-11-preview and java These settings apply only when `--tag=package-2017-11-preview --java` is specified on the command line. @@ -186,12 +202,12 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.Subscription/stable/2020-01-01/subscriptions.json + - $(this-folder)/Microsoft.Subscription/stable/2016-06-01/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2019-03-01-preview/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2018-03-01-preview/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2018-03-01-preview/operations.json - - $(this-folder)/Microsoft.Subscription/stable/2016-06-01/subscriptions.json - $(this-folder)/Microsoft.Subscription/preview/2017-11-01-preview/subscriptionDefinitions.json ``` diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json new file mode 100644 index 000000000000..6f723ff8d533 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/communications" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..591543733169 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/supportTickets" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json new file mode 100644 index 000000000000..9d8d443605b0 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json new file mode 100644 index 000000000000..aadd4011fb3f --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json new file mode 100644 index 000000000000..251ac30ce14e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json new file mode 100644 index 000000000000..a40456b4d894 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json new file mode 100644 index 000000000000..2995f3fab7fb --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json new file mode 100644 index 000000000000..42e1c0b4a0ea --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", + "problemClassificationDisplayName": "Refund request", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", + "serviceDisplayName": "Billing", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json new file mode 100644 index 000000000000..3df0bfde643a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"SKU\":\"DSv3 Series\",\"NewLimit\":104}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", + "problemClassificationDisplayName": "Compute-VM (cores-vCPUs) subscription limit increases", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VmFamily\":\"DSv3 Series\",\"NewLimit\":104}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json new file mode 100644 index 000000000000..6235ee70197d --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "Increase the maximum throughput per container limit to 10000 for account foo bar", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cosmosdb_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "Increase the maximum throughput per container limit to 10000 for account foo bar", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cosmosdb_problemClassification_guid", + "problemClassificationDisplayName": "Cosmos DB", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json new file mode 100644 index 000000000000..ab253950b6a5 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "BatchAml", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json new file mode 100644 index 000000000000..5a77027669a3 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "BatchAml", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..cd3f37cbcd41 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json new file mode 100644 index 000000000000..7e2fe9fe44c0 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..a6c993df89ae --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json new file mode 100644 index 000000000000..8ce944490002 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json new file mode 100644 index 000000000000..b98c942fdbed --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", + "problemClassificationDisplayName": "Transfer ownership of my subscription", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json new file mode 100644 index 000000000000..735de576110c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "communicationName": "testcommunication", + "api-version": "2020-04-01", + "createCommunicationParameters": { + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "sender": "user@contoso.com" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testcommunication", + "name": "testcommunication", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "communicationType": "web", + "communicationDirection": "outbound", + "createdDate": "2020-03-10T20:18:19Z", + "sender": "user@contoso.com" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json new file mode 100644 index 000000000000..efbfc69dd34a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..181ec88b06db --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "communicationName": "testmessage", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage", + "name": "testmessage", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-10T20:18:19Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json new file mode 100644 index 000000000000..42698d2887a5 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "service_guid", + "problemClassificationName": "problemClassification_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid", + "name": "problemClassification_guid", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json new file mode 100644 index 000000000000..e05273a62e20 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "service_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid", + "name": "service_guid", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Windows", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json new file mode 100644 index 000000000000..76ffec944329 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..1a516d660901 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-24T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-29T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json new file mode 100644 index 000000000000..fbe7ab3cbc23 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Support/services/read", + "display": { + "description": "Gets all the Azure services available for support", + "operation": "Reads Services", + "provider": "Microsoft Support", + "resource": "Service" + } + }, + { + "name": "Microsoft.Support/problemClassifications/read", + "display": { + "description": "Gets all the problem classifications available for a specific Azure service", + "operation": "Reads Problem Classifications", + "provider": "Microsoft Support", + "resource": "Problem Classification" + } + }, + { + "name": "Microsoft.Support/supportTickets/read", + "display": { + "description": "Gets all the support tickets", + "operation": "Reads Support Tickets", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/supportTickets/write", + "display": { + "description": "Updates support ticket", + "operation": "Updates support ticket", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/communications/read", + "display": { + "description": "Gets all the communications", + "operation": "Reads Communications", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/communications/write", + "display": { + "description": "Creates a communication", + "operation": "Creates a communication", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/register/action", + "display": { + "description": "Registers Support Resource Provider", + "operation": "Registers Support Resource Provider", + "provider": "Registers Support Resource Provider", + "resource": "Support Registration" + } + }, + { + "name": "Microsoft.Support/createSupportTicket/action", + "display": { + "description": "Creates support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "SupportTicket" + } + }, + { + "name": "Microsoft.Support/addCommunication/action", + "display": { + "description": "Add communication to support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "Communication" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json new file mode 100644 index 000000000000..44f2d30b1ba6 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "service_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_1", + "name": "problemClassification_guid_1", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_2", + "name": "problemClassification_guid_2", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Request Invoices" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_3", + "name": "problemClassification_guid_3", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Other Iissues or Requests" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_4", + "name": "problemClassification_guid_4", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Other General Billing Questions" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json new file mode 100644 index 000000000000..76add0ddb0ea --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid_1", + "name": "service_guid_1", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Billing", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_2", + "name": "service_guid_2", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Service and subscription limits (quotas)", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_3", + "name": "service_guid_3", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Subscription management", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_4", + "name": "service_guid_4", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Data Explorer", + "resourceTypes": [ + "MICROSOFT.KUSTO/CLUSTERS", + "MICROSOFT.KUSTO/DATABASES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_5", + "name": "service_guid_5", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Windows", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_6", + "name": "service_guid_6", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Linux", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_7", + "name": "service_guid_7", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Network", + "resourceTypes": [ + "MICROSOFT.NETWORK/VIRTUALNETWORKS", + "MICROSOFT.CLASSICNETWORK/VIRTUALNETWORKS" + ] + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json new file mode 100644 index 000000000000..186c285757d8 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json new file mode 100644 index 000000000000..5141f83d9a6e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "createdDate ge 2020-03-10T22:08:51Z and status eq 'Open'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-11T21:36:18Z", + "expirationTime": "2020-03-12T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-11T21:36:18Z", + "modifiedDate": "2020-03-12T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-11T21:36:18Z", + "expirationTime": "2020-03-12T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-11T21:36:18Z", + "modifiedDate": "2020-03-12T21:36:18Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json new file mode 100644 index 000000000000..30ebc506ac52 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "status eq 'Open'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..9e2b493a969a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-10T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-11T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json new file mode 100644 index 000000000000..a8bc674a8c5c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web' and createdDate ge 2020-03-10T22:08:51Z", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-11T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-12T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..5f72903136d6 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "contactDetails": { + "firstName": "first name", + "lastName": "last name", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "phoneNumber": "123-456-7890", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "first name", + "lastName": "last name", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "phoneNumber": "123-456-7890", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..058f4f1b010c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "severity": "critical" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..ff749325b04c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "status": "closed" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Closed", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json new file mode 100644 index 000000000000..1ced78a858a1 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json @@ -0,0 +1,1537 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "Microsoft.Support", + "description": "Microsoft Azure Support Resource Provider." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "paths": { + "/providers/Microsoft.Support/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "This lists all the available Microsoft Support REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of operations.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get all operations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/providers/Microsoft.Support/services": { + "get": { + "tags": [ + "Services" + ], + "description": "Lists all the Azure services available for support ticket creation. For **Technical** issues, select the Service Id that maps to the Azure service/product as displayed in the **Services** drop-down list on the Azure portal's [New support request](https://portal.azure.com/#blade/Microsoft_Azure_Support/HelpAndSupportBlade/overview) page. Always use the service and its corresponding problem classification(s) obtained programmatically for support ticket creation. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "Services_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of the Azure services available for support.", + "schema": { + "$ref": "#/definitions/ServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of services for which a support ticket can be created": { + "$ref": "./examples/ListServices.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}": { + "get": { + "tags": [ + "Services" + ], + "description": "Gets a specific Azure service for support ticket creation.", + "operationId": "Services_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved Azure service for support ticket creation.", + "schema": { + "$ref": "#/definitions/Service" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Gets details of the Azure service": { + "$ref": "./examples/GetService.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Lists all the problem classifications (categories) available for a specific Azure service. Always use the service and problem classifications obtained programmatically. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "ProblemClassifications_List", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service for which the problem classifications need to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of problem classifications for the specified Azure service.", + "schema": { + "$ref": "#/definitions/ProblemClassificationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of problemClassifications for a service for which a support ticket can be created": { + "$ref": "./examples/ListProblemClassifications.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications/{problemClassificationName}": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Get problem classification details for a specific Azure service.", + "operationId": "ProblemClassifications_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service available for support.", + "required": true, + "type": "string" + }, + { + "name": "problemClassificationName", + "in": "path", + "description": "Name of problem classification.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved problem classification details.", + "schema": { + "$ref": "#/definitions/ProblemClassification" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Gets details of problemClassification for Azure service": { + "$ref": "./examples/GetProblemClassification.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/checkNameAvailability": { + "post": { + "tags": [ + "SupportTickets" + ], + "description": "Check the availability of a resource name. This API should be used to check the uniqueness of the name for support ticket creation for the selected subscription.", + "operationId": "SupportTickets_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for SupportTicket resource": { + "$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": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Lists all the support tickets for an Azure subscription. You can also filter the support tickets by _Status_ or _CreatedDate_ using the $filter parameter. Output will be a paged result with _nextLink_, using which you can retrieve the next set of support tickets.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_List", + "parameters": [ + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 25 and max is 100.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. We support 'odata v4.0' filter semantics. [Learn more](https://docs.microsoft.com/odata/concepts/queryoptions-overview). _Status_ filter can only be used with Equals ('eq') operator. For _CreatedDate_ filter, the supported operators are Greater Than ('gt') and Greater Than or Equals ('ge'). When using both filters, combine them using the logical 'AND'." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support tickets.", + "schema": { + "$ref": "#/definitions/SupportTicketsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List support tickets for a subscription": { + "$ref": "./examples/ListSupportTicketsBySubscription.json" + }, + "List support tickets in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsInOpenStateBySubscription.json" + }, + "List support tickets created on or after a certain date and in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Get ticket details for an Azure subscription. Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Get details of a subscription ticket": { + "$ref": "./examples/GetSubscriptionSupportTicketDetails.json" + } + } + }, + "patch": { + "tags": [ + "SupportTickets" + ], + "description": "This API allows you to update the severity level, ticket status, and your contact information in the support ticket.

    Note: The severity levels cannot be changed if a support ticket is actively being worked upon by an Azure support engineer. In such a case, contact your support engineer to request severity update by adding a new communication using the Communications API.

    Changing the ticket status to _closed_ is allowed only on an unassigned case. When an engineer is actively working on the ticket, send your ticket closure request by sending a note to your engineer.", + "operationId": "SupportTickets_Update", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "updateSupportTicket", + "in": "body", + "description": "UpdateSupportTicket object.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateSupportTicket" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Update severity of a support ticket": { + "$ref": "./examples/UpdateSeverityOfSupportTicketForSubscription.json" + }, + "Update contact details of a support ticket": { + "$ref": "./examples/UpdateContactDetailsOfSupportTicketForSubscription.json" + }, + "Update status of a support ticket": { + "$ref": "./examples/UpdateStatusOfSupportTicketForSubscription.json" + } + } + }, + "put": { + "tags": [ + "SupportTickets" + ], + "description": "Creates a new support ticket for Subscription and Service limits (Quota), Technical, Billing, and Subscription Management issues for the specified subscription. Learn the [prerequisites](https://aka.ms/supportAPI) required to create a support ticket.

    Always call the Services and ProblemClassifications API to get the most recent set of services and problem categories required for support ticket creation.

    Adding attachments is not currently supported via the API. To add a file to an existing support ticket, visit the [Manage support ticket](https://portal.azure.com/#blade/Microsoft_Azure_Support/HelpAndSupportBlade/managesupportrequest) page in the Azure portal, select the support ticket, and use the file upload control to add a new file.

    Providing consent to share diagnostic information with Azure support is currently not supported via the API. The Azure support engineer working on your ticket will reach out to you for consent if your issue requires gathering diagnostic information from your Azure resources.

    **Creating a support ticket for on-behalf-of**: Include _x-ms-authorization-auxiliary_ header to provide an auxiliary token as per [documentation](https://docs.microsoft.com/azure/azure-resource-manager/management/authenticate-multi-tenant). The primary token will be from the tenant for whom a support ticket is being raised against the subscription, i.e. Cloud solution provider (CSP) customer tenant. The auxiliary token will be from the Cloud solution provider (CSP) partner tenant.", + "operationId": "SupportTickets_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "createSupportTicketParameters", + "in": "body", + "description": "Support ticket request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - SupportTicket created successfully.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "202": { + "description": "Accepted, SupportTicket will be created asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create a ticket for Billing related issues": { + "$ref": "./examples/CreateBillingSupportTicketForSubscription.json" + }, + "Create a ticket for Subscription Management related issues": { + "$ref": "./examples/CreateSubMgmtSupportTicketForSubscription.json" + }, + "Create a ticket for Technical issue related to a specific resource": { + "$ref": "./examples/CreateTechnicalSupportTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Compute VM Cores": { + "$ref": "./examples/CreateCoresQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Pools for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json" + }, + "Create a ticket to request Quota increase for Active Jobs and Job Schedules for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json" + }, + "Create a ticket to request Quota increase for Batch accounts for a subscription": { + "$ref": "./examples/CreateBatchQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for DTUs for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for DTUs for Azure Synapse Analytics": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for Azure Synapse Analytics": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json" + }, + "Create a ticket to request Quota increase for services that do not require additional details in the quotaTicketDetails object": { + "$ref": "./examples/CreateGenericQuotaTicket.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/checkNameAvailability": { + "post": { + "tags": [ + "Communications" + ], + "description": "Check the availability of a resource name. This API should be used to check the uniqueness of the name for adding a new communication to the support ticket.", + "operationId": "Communications_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for Communication resource": { + "$ref": "./examples/CheckNameAvailabilityForSupportTicketCommunication.json" + } + }, + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "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": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications": { + "get": { + "tags": [ + "Communications" + ], + "description": "Lists all communications (attachments not included) for a support ticket.

    You can also filter support ticket communications by _CreatedDate_ or _CommunicationType_ using the $filter parameter. The only type of communication supported today is _Web_. Output will be a paged result with _nextLink_, using which you can retrieve the next set of Communication results.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "Communications_List", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 10 and max is 10.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. You can filter by communicationType and createdDate properties. CommunicationType supports Equals ('eq') operator and createdDate supports Greater Than ('gt') and Greater Than or Equals ('ge') operators. You may combine the CommunicationType and CreatedDate filters by Logical And ('and') operator." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communications for a support ticket.", + "schema": { + "$ref": "#/definitions/CommunicationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List communications for a subscription support ticket": { + "$ref": "./examples/ListCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communications for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communication created on or after a specific date for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications/{communicationName}": { + "get": { + "tags": [ + "Communications" + ], + "description": "Returns communication details for a support ticket.", + "operationId": "Communications_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communication details.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Get communication details for a subscription support ticket": { + "$ref": "./examples/GetCommunicationDetailsForSubscriptionSupportTicket.json" + } + } + }, + "put": { + "tags": [ + "Communications" + ], + "description": "Adds a new customer communication to an Azure support ticket.", + "operationId": "Communications_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name.", + "required": true, + "type": "string" + }, + { + "name": "createCommunicationParameters", + "in": "body", + "description": "Communication object.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Communication created successfully.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "202": { + "description": "Accepted - Communication will be created asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "AddCommunicationToSubscriptionTicket": { + "$ref": "./examples/CreateSupportTicketCommunication.json" + } + } + } + } + }, + "definitions": { + "OperationsListResult": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "properties": { + "value": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "The operation supported by Microsoft Support resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string", + "readOnly": true + }, + "provider": { + "description": "Service provider: Microsoft Support.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ServicesListResult": { + "description": "Collection of Service resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Service resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Service" + } + } + } + }, + "Service": { + "description": "Object that represents a Service resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/services'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceProperties", + "description": "Properties of the resource." + } + } + }, + "ServiceProperties": { + "description": "Details about an Azure service available for support ticket creation.", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of the Azure service.", + "type": "string" + }, + "resourceTypes": { + "description": "ARM Resource types.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ProblemClassificationsListResult": { + "description": "Collection of ProblemClassification resources.", + "type": "object", + "properties": { + "value": { + "description": "List of ProblemClassification resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProblemClassification" + } + } + } + }, + "ProblemClassification": { + "description": "ProblemClassification resource object.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/problemClassification'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProblemClassificationProperties", + "description": "Properties of the resource." + } + } + }, + "ProblemClassificationProperties": { + "description": "Details about a problem classification available for an Azure service.", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of problem classification.", + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Support/supportTickets", + "Microsoft.Support/communications" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource." + } + } + }, + "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" + } + } + }, + "SupportTicketsListResult": { + "description": "Object that represents a collection of SupportTicket resources.", + "type": "object", + "properties": { + "value": { + "description": "List of SupportTicket resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of SupportTicket resources.", + "type": "string" + } + } + }, + "SupportTicketDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents SupportTicketDetails resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/supportTickets'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SupportTicketDetailsProperties", + "description": "Properties of the resource." + } + } + }, + "CommunicationsListResult": { + "description": "Collection of Communication resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Communication resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of Communication resources.", + "type": "string" + } + } + }, + "CommunicationDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents a Communication resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/communications'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommunicationDetailsProperties", + "description": "Properties of the resource." + } + } + }, + "CommunicationDetailsProperties": { + "description": "Describes the properties of a communication resource.", + "required": [ + "subject", + "body" + ], + "type": "object", + "properties": { + "communicationType": { + "description": "Communication type.", + "enum": [ + "web", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationType", + "modelAsString": true + }, + "readOnly": true + }, + "communicationDirection": { + "description": "Direction of communication.", + "enum": [ + "inbound", + "outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationDirection", + "modelAsString": true + }, + "readOnly": true + }, + "sender": { + "description": "Email address of the sender. This property is required if called by a service principal.", + "type": "string" + }, + "subject": { + "description": "Subject of the communication.", + "type": "string" + }, + "body": { + "description": "Body of the communication.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the communication was created.", + "type": "string", + "readOnly": true + } + } + }, + "SupportTicketDetailsProperties": { + "description": "Describes the properties of a support ticket.", + "required": [ + "serviceId", + "title", + "description", + "problemClassificationId", + "severity", + "contactDetails" + ], + "type": "object", + "properties": { + "supportTicketId": { + "description": "System generated support ticket Id that is unique.", + "type": "string" + }, + "description": { + "description": "Detailed description of the question or issue.", + "type": "string" + }, + "problemClassificationId": { + "description": "Each Azure service has its own set of issue categories, also known as problem classification. This parameter is the unique Id for the type of problem you are experiencing.", + "type": "string" + }, + "problemClassificationDisplayName": { + "type": "string", + "description": "Localized name of problem classification.", + "readOnly": true + }, + "severity": { + "description": "A value that indicates the urgency of the case, which in turn determines the response time according to the service level agreement of the technical support plan you have with Azure. Note: 'Highest critical impact' severity is reserved only for our Premium customers.", + "enum": [ + "minimal", + "moderate", + "critical", + "highestcriticalimpact" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "enrollmentId": { + "description": "Enrollment Id associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "require24X7Response": { + "description": "Indicates if this requires a 24x7 response from Azure.", + "type": "boolean" + }, + "contactDetails": { + "$ref": "#/definitions/ContactProfile", + "description": "Contact information of the user requesting to create a support ticket." + }, + "serviceLevelAgreement": { + "$ref": "#/definitions/ServiceLevelAgreement", + "description": "Service Level Agreement information for this support ticket." + }, + "supportEngineer": { + "$ref": "#/definitions/SupportEngineer", + "description": "Information about the support engineer working on this support ticket." + }, + "supportPlanType": { + "description": "Support plan type associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "title": { + "description": "Title of the support ticket.", + "type": "string" + }, + "problemStartTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the problem started.", + "type": "string" + }, + "serviceId": { + "description": "This is the resource Id of the Azure service resource associated with the support ticket.", + "type": "string" + }, + "serviceDisplayName": { + "type": "string", + "description": "Localized name of the Azure service.", + "readOnly": true + }, + "status": { + "description": "Status of the support ticket.", + "type": "string", + "readOnly": true + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the support ticket was created.", + "type": "string", + "readOnly": true + }, + "modifiedDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the support ticket was last modified.", + "type": "string", + "readOnly": true + }, + "technicalTicketDetails": { + "$ref": "#/definitions/TechnicalTicketDetails", + "description": "Additional ticket details associated with a technical support ticket request." + }, + "quotaTicketDetails": { + "$ref": "#/definitions/QuotaTicketDetails", + "description": "Additional ticket details associated with a quota support ticket request." + } + } + }, + "ServiceLevelAgreement": { + "description": "Service Level Agreement details for a support ticket.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the service level agreement starts.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the service level agreement expires.", + "type": "string", + "readOnly": true + }, + "slaMinutes": { + "description": "Service Level Agreement in minutes.", + "type": "integer", + "readOnly": true + } + } + }, + "SupportEngineer": { + "description": "Support engineer information.", + "type": "object", + "properties": { + "emailAddress": { + "description": "Email address of the Azure Support engineer assigned to the support ticket.", + "type": "string", + "readOnly": true + } + } + }, + "ExceptionResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ServiceError", + "description": "The API error details." + } + }, + "description": "The API error." + }, + "ServiceError": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceErrorDetail" + }, + "description": "The list of error details.", + "readOnly": true + } + }, + "description": "The API error details." + }, + "ServiceErrorDetail": { + "type": "object", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + } + }, + "description": "The error details." + }, + "ContactProfile": { + "description": "Contact information associated with the support ticket.", + "required": [ + "firstName", + "lastName", + "preferredContactMethod", + "primaryEmailAddress", + "preferredTimeZone", + "country", + "preferredSupportLanguage" + ], + "type": "object", + "properties": { + "firstName": { + "description": "First name.", + "type": "string" + }, + "lastName": { + "description": "Last name.", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method.", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address.", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Additional email addresses listed will be copied on any correspondence about the support ticket.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from [Microsoft Time Zone Index Values](https://support.microsoft.com/help/973627/microsoft-time-zone-index-values).", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at [Azure Severity and responsiveness](https://azure.microsoft.com/support/plans/response). Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" + } + } + }, + "UpdateContactProfile": { + "description": "Contact information associated with the support ticket.", + "type": "object", + "properties": { + "firstName": { + "description": "First name.", + "type": "string" + }, + "lastName": { + "description": "Last name.", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method.", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address.", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Email addresses listed will be copied on any correspondence about the support ticket.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from [Microsoft Time Zone Index Values](https://support.microsoft.com/help/973627/microsoft-time-zone-index-values).", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at [Azure Severity and responsiveness](https://azure.microsoft.com/support/plans/response/). Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" + } + } + }, + "TechnicalTicketDetails": { + "description": "Additional information for technical support ticket.", + "type": "object", + "properties": { + "resourceId": { + "description": "This is the resource Id of the Azure service resource (For example: A virtual machine resource or an HDInsight resource) for which the support ticket is created.", + "type": "string" + } + } + }, + "QuotaTicketDetails": { + "description": "Additional set of information required for quota increase support ticket for certain quota types, e.g.: Virtual machine cores. Get complete details about Quota payload support request along with examples at [Support quota request](https://aka.ms/supportrpquotarequestpayload).", + "type": "object", + "properties": { + "quotaChangeRequestSubType": { + "description": "Required for certain quota types when there is a sub type, such as Batch, for which you are requesting a quota increase.", + "type": "string" + }, + "quotaChangeRequestVersion": { + "description": "Quota change request version.", + "type": "string" + }, + "quotaChangeRequests": { + "description": "This property is required for providing the region and new quota limits.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaChangeRequest" + } + } + } + }, + "QuotaChangeRequest": { + "description": "This property is required for providing the region and new quota limits.", + "type": "object", + "properties": { + "region": { + "description": "Region for which the quota increase request is being made.", + "type": "string" + }, + "payload": { + "description": "Payload of the quota increase request.", + "type": "string" + } + } + }, + "UpdateSupportTicket": { + "description": "Updates severity, ticket status, and contact details in the support ticket.", + "type": "object", + "properties": { + "severity": { + "description": "Severity level.", + "enum": [ + "minimal", + "moderate", + "critical", + "highestcriticalimpact" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "status": { + "description": "Status to be updated on the ticket.", + "enum": [ + "open", + "closed" + ], + "type": "string", + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "contactDetails": { + "$ref": "#/definitions/UpdateContactProfile", + "description": "Contact details to be updated on the support ticket." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Azure subscription Id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "API version." + } + } +} diff --git a/specification/support/resource-manager/readme.go.md b/specification/support/resource-manager/readme.go.md index b052656f1700..c49e32cf649c 100644 --- a/specification/support/resource-manager/readme.go.md +++ b/specification/support/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and go + +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/support/mgmt/2020-04-01/support +``` + ### Tag: package-2019-05-preview and go These settings apply only when `--tag=package-2019-05-preview --go` is specified on the command line. diff --git a/specification/support/resource-manager/readme.java.md b/specification/support/resource-manager/readme.java.md index 4975ccadad75..c264f75b43b6 100644 --- a/specification/support/resource-manager/readme.java.md +++ b/specification/support/resource-manager/readme.java.md @@ -4,21 +4,35 @@ These settings apply only when `--java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. ``` yaml $(java) -java: - azure-arm: true - fluent: true - namespace: com.microsoft.azure.management.support - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-support +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.support +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-support ``` + ### Java multi-api ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.support.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/support/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-05-preview and java These settings apply only when `--tag=package-2019-05-preview --java` is specified on the command line. diff --git a/specification/support/resource-manager/readme.md b/specification/support/resource-manager/readme.md index 64d1a4e1b161..5dfd3045f68a 100644 --- a/specification/support/resource-manager/readme.md +++ b/specification/support/resource-manager/readme.md @@ -24,7 +24,16 @@ These are the global settings for the Support API. ``` yaml openapi-type: arm -tag: package-2019-05-preview +tag: package-2020-04 +``` + +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +```yaml $(tag) == 'package-2020-04' +input-file: + - Microsoft.Support/stable/2020-04-01/support.json ``` ### Tag: package-2019-05-preview @@ -93,6 +102,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Support/stable/2020-04-01/support.json - $(this-folder)/Microsoft.Support/preview/2019-05-01-preview/support.json ``` diff --git a/specification/support/resource-manager/readme.ruby.md b/specification/support/resource-manager/readme.ruby.md index ded8e14cfb93..aac9b61f1391 100644 --- a/specification/support/resource-manager/readme.ruby.md +++ b/specification/support/resource-manager/readme.ruby.md @@ -12,9 +12,20 @@ ruby: ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and ruby + +These settings apply only when `--tag=package-2020-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(ruby) +namespace: "Azure::Support::Mgmt::V2020_04_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_support/lib/2020-04-01 +``` + ### Tag: package-2019-05-preview and ruby These settings apply only when `--tag=package-2019-05-preview --ruby` is specified on the command line. diff --git a/specification/support/resource-manager/readme.typescript.md b/specification/support/resource-manager/readme.typescript.md index 099d5ba49723..f762dd25e367 100644 --- a/specification/support/resource-manager/readme.typescript.md +++ b/specification/support/resource-manager/readme.typescript.md @@ -6,8 +6,8 @@ Please also specify `--typescript-sdks-folder=*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "datasetName": { + "name": "datasetName", + "description": "The dataset name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "pipelineName": { + "name": "pipelineName", + "description": "The pipeline name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "dataFlowName": { + "name": "dataFlowName", + "description": "The data flow name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "triggerName": { + "name": "triggerName", + "description": "The trigger name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "rerunTriggerName": { + "name": "rerunTriggerName", + "description": "The rerun trigger name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "runId": { + "name": "runId", + "description": "The pipeline run identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "sessionId": { + "name": "sessionId", + "description": "The data flow session identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "jobVersion": { + "name": "jobVersion", + "description": "The data flow job version identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "nodeName": { + "name": "nodeName", + "description": "The integration runtime node name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z0-9A-Z][a-z0-9A-Z_-]{0,149}$", + "minLength": 1, + "maxLength": 150, + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json new file mode 100644 index 000000000000..d1317f5bd0e2 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "DataFlow": { + "description": "Azure Synapse nested object which contains a flow with data movements and transformations.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of data flow." + }, + "description": { + "description": "The description of the data flow.", + "type": "string" + }, + "annotations": { + "description": "List of tags that can be used for describing the data flow.", + "type": "array", + "items": { + "type": "object" + } + }, + "folder": { + "description": "The folder that this data flow is in. If not specified, Data flow will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this data flow is in.", + "type": "string" + } + } + } + }, + "required": [ + "type" + ] + }, + "MappingDataFlow": { + "x-ms-discriminator-value": "MappingDataFlow", + "description": "Mapping data flow.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataFlow" + } + ], + "properties": { + "typeProperties": { + "description": "Mapping data flow type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MappingDataFlowTypeProperties" + } + } + }, + "MappingDataFlowTypeProperties": { + "description": "Mapping data flow type properties.", + "properties": { + "sources": { + "type": "array", + "description": "List of sources in data flow.", + "items": { + "$ref": "#/definitions/DataFlowSource" + } + }, + "sinks": { + "type": "array", + "description": "List of sinks in data flow.", + "items": { + "$ref": "#/definitions/DataFlowSink" + } + }, + "transformations": { + "type": "array", + "description": "List of transformations in data flow.", + "items": { + "$ref": "#/definitions/Transformation" + } + }, + "script": { + "type": "string", + "description": "DataFlow script." + } + } + }, + "Transformation": { + "description": "A data flow transformation.", + "type": "object", + "properties": { + "name": { + "description": "Transformation name.", + "type": "string" + }, + "description": { + "description": "Transformation description.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "DataFlowSource": { + "description": "Transformation for data flow source.", + "allOf": [ + { + "$ref": "#/definitions/Transformation" + } + ], + "properties": { + "dataset": { + "description": "Dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + }, + "DataFlowSink": { + "description": "Transformation for data flow sink.", + "allOf": [ + { + "$ref": "#/definitions/Transformation" + } + ], + "properties": { + "dataset": { + "description": "Dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json new file mode 100644 index 000000000000..29f8b205d98f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json @@ -0,0 +1,2793 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Dataset": { + "description": "The Azure Data Factory nested object which identifies data within different data stores, such as tables, files, folders, and documents.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset." + }, + "description": { + "description": "Dataset description.", + "type": "string" + }, + "structure": { + "type": "object", + "description": "Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement." + }, + "schema": { + "type": "object", + "description": "Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array), itemType: DatasetSchemaDataElement." + }, + "linkedServiceName": { + "description": "Linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "Parameters for dataset." + }, + "annotations": { + "description": "List of tags that can be used for describing the Dataset.", + "type": "array", + "items": { + "type": "object" + } + }, + "folder": { + "description": "The folder that this Dataset is in. If not specified, Dataset will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this Dataset is in.", + "type": "string" + } + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type", + "linkedServiceName" + ] + }, + "DatasetLocation": { + "description": "Dataset location.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset storage location." + }, + "folderPath": { + "type": "object", + "description": "Specify the folder path of dataset. Type: string (or Expression with resultType string)" + }, + "fileName": { + "type": "object", + "description": "Specify the file name of dataset. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageLocation": { + "description": "The location of azure blob dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "container": { + "type": "object", + "description": "Specify the container of azure blob. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobFSLocation": { + "description": "The location of azure blobFS dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "fileSystem": { + "type": "object", + "description": "Specify the fileSystem of azure blobFS. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreLocation": { + "description": "The location of azure data lake store dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "AmazonS3Location": { + "description": "The location of amazon S3 dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "bucketName": { + "type": "object", + "description": "Specify the bucketName of amazon S3. Type: string (or Expression with resultType string)" + }, + "version": { + "type": "object", + "description": "Specify the version of amazon S3. Type: string (or Expression with resultType string)." + } + } + }, + "FileServerLocation": { + "description": "The location of file server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "AzureFileStorageLocation": { + "description": "The location of file server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "GoogleCloudStorageLocation": { + "description": "The location of Google Cloud Storage dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "bucketName": { + "type": "object", + "description": "Specify the bucketName of Google Cloud Storage. Type: string (or Expression with resultType string)" + }, + "version": { + "type": "object", + "description": "Specify the version of Google Cloud Storage. Type: string (or Expression with resultType string)." + } + } + }, + "FtpServerLocation": { + "description": "The location of ftp server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "SftpLocation": { + "description": "The location of SFTP dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "HttpServerLocation": { + "description": "The location of http server.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "relativeUrl": { + "type": "object", + "description": "Specify the relativeUrl of http server. Type: string (or Expression with resultType string)" + } + } + }, + "HdfsLocation": { + "description": "The location of HDFS.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "DatasetDataElement": { + "description": "Columns that define the structure of the dataset.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Name of the column. Type: string (or Expression with resultType string)." + }, + "type": { + "type": "object", + "description": "Type of the column. Type: string (or Expression with resultType string)." + } + } + }, + "DatasetSchemaDataElement": { + "description": "Columns that define the physical type schema of the dataset.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Name of the schema column. Type: string (or Expression with resultType string)." + }, + "type": { + "type": "object", + "description": "Type of the schema column. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "DatasetStorageFormat": { + "discriminator": "type", + "description": "The format definition of a storage.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset storage format." + }, + "serializer": { + "type": "object", + "description": "Serializer. Type: string (or Expression with resultType string)." + }, + "deserializer": { + "type": "object", + "description": "Deserializer. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TextFormat": { + "description": "The data stored in text format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ], + "properties": { + "columnDelimiter": { + "type": "object", + "description": "The column delimiter. Type: string (or Expression with resultType string)." + }, + "rowDelimiter": { + "type": "object", + "description": "The row delimiter. Type: string (or Expression with resultType string)." + }, + "escapeChar": { + "type": "object", + "description": "The escape character. Type: string (or Expression with resultType string)." + }, + "quoteChar": { + "type": "object", + "description": "The quote character. Type: string (or Expression with resultType string)." + }, + "nullValue": { + "type": "object", + "description": "The null value string. Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If miss, the default value is ΓÇ£utf-8ΓÇ¥, unless BOM denotes another Unicode encoding. Refer to the ΓÇ£NameΓÇ¥ column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty column values in the text file as null. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "skipLineCount": { + "type": "object", + "description": "The number of lines/rows to be skipped when parsing text files. The default value is 0. Type: integer (or Expression with resultType integer)." + }, + "firstRowAsHeader": { + "type": "object", + "description": "When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "JsonFormat": { + "description": "The data stored in JSON format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ], + "properties": { + "filePattern": { + "description": "File pattern of JSON. To be more specific, the way of separating a collection of JSON objects. The default value is 'setOfObjects'. It is case-sensitive.", + "$ref": "#/definitions/JsonFormatFilePattern" + }, + "nestingSeparator": { + "type": "object", + "description": "The character used to separate nesting levels. Default value is '.' (dot). Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If not provided, the default value is 'utf-8', unless the byte order mark (BOM) denotes another Unicode encoding. The full list of supported values can be found in the 'Name' column of the table of encodings in the following reference: https://go.microsoft.com/fwlink/?linkid=861078. Type: string (or Expression with resultType string)." + }, + "jsonNodeReference": { + "type": "object", + "description": "The JSONPath of the JSON array element to be flattened. Example: \"$.ArrayPath\". Type: string (or Expression with resultType string)." + }, + "jsonPathDefinition": { + "type": "object", + "description": "The JSONPath definition for each column mapping with a customized column name to extract data from JSON file. For fields under root object, start with \"$\"; for fields inside the array chosen by jsonNodeReference property, start from the array element. Example: {\"Column1\": \"$.Column1Path\", \"Column2\": \"Column2PathInArray\"}. Type: object (or Expression with resultType object)." + } + } + }, + "JsonFormatFilePattern": { + "description": "JSON format file pattern. A property of JsonFormat.", + "type": "string", + "enum": [ + "setOfObjects", + "arrayOfObjects" + ], + "x-ms-enum": { + "name": "JsonFormatFilePattern", + "modelAsString": true + } + }, + "AvroFormat": { + "description": "The data stored in Avro format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "OrcFormat": { + "description": "The data stored in Optimized Row Columnar (ORC) format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "ParquetFormat": { + "description": "The data stored in Parquet format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "DatasetCompression": { + "discriminator": "type", + "description": "The compression method used on a dataset.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset compression." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "DatasetBZip2Compression": { + "x-ms-discriminator-value": "BZip2", + "description": "The BZip2 compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": {} + }, + "DatasetGZipCompression": { + "x-ms-discriminator-value": "GZip", + "description": "The GZip compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The GZip compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "DatasetDeflateCompression": { + "x-ms-discriminator-value": "Deflate", + "description": "The Deflate compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The Deflate compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "DatasetZipDeflateCompression": { + "x-ms-discriminator-value": "ZipDeflate", + "description": "The ZipDeflate compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The ZipDeflate compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "CompressionLevel": { + "title": "Microsoft.Azure.Management.DataFactories.Models.CompressionLevel", + "description": "All available compression levels.", + "type": "string", + "enum": [ + "Optimal", + "Fastest" + ], + "x-ms-enum": { + "name": "DatasetCompressionLevel", + "modelAsString": true + } + }, + "AvroDataset": { + "x-ms-discriminator-value": "Avro", + "description": "Avro dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Avro dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvroDatasetTypeProperties" + } + } + }, + "AvroDatasetTypeProperties": { + "description": "Avro dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the avro storage." + }, + "avroCompressionCodec": { + "type": "string", + "enum": [ + "none", + "deflate", + "snappy", + "xz", + "bzip2" + ], + "x-ms-enum": { + "name": "AvroCompressionCodec", + "modelAsString": true + } + }, + "avroCompressionLevel": { + "type": "integer", + "minimum": 1, + "maximum": 9 + } + }, + "required": [ + "location" + ] + }, + "ParquetDataset": { + "x-ms-discriminator-value": "Parquet", + "description": "Parquet dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Parquet dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ParquetDatasetTypeProperties" + } + } + }, + "ParquetDatasetTypeProperties": { + "description": "Parquet dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the parquet storage." + }, + "compressionCodec": { + "type": "string", + "enum": [ + "none", + "gzip", + "snappy", + "lzo" + ], + "x-ms-enum": { + "name": "ParquetCompressionCodec", + "modelAsString": true + } + } + }, + "required": [ + "location" + ] + }, + "DelimitedTextDataset": { + "x-ms-discriminator-value": "DelimitedText", + "description": "Delimited text dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Delimited text dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DelimitedTextDatasetTypeProperties" + } + } + }, + "DelimitedTextDatasetTypeProperties": { + "description": "DelimitedText dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the delimited text storage." + }, + "columnDelimiter": { + "type": "object", + "description": "The column delimiter. Type: string (or Expression with resultType string)." + }, + "rowDelimiter": { + "type": "object", + "description": "The row delimiter. Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If miss, the default value is UTF-8, unless BOM denotes another Unicode encoding. Refer to the name column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "compressionCodec": { + "type": "string", + "enum": [ + "bzip2", + "gzip", + "deflate", + "zipDeflate", + "snappy", + "lz4" + ], + "x-ms-enum": { + "name": "DelimitedTextCompressionCodec", + "modelAsString": true + } + }, + "compressionLevel": { + "description": "The data compression method used for DelimitedText.", + "$ref": "#/definitions/CompressionLevel" + }, + "quoteChar": { + "type": "object", + "description": "The quote character. Type: string (or Expression with resultType string)." + }, + "escapeChar": { + "type": "object", + "description": "The escape character. Type: string (or Expression with resultType string)." + }, + "firstRowAsHeader": { + "type": "object", + "description": "When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "nullValue": { + "type": "object", + "description": "The null value string. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "location" + ] + }, + "JsonDataset": { + "x-ms-discriminator-value": "Json", + "description": "Json dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Json dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/JsonDatasetTypeProperties" + } + } + }, + "JsonDatasetTypeProperties": { + "description": "Json dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the json data storage." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If not specified, the default value is UTF-8, unless BOM denotes another Unicode encoding. Refer to the name column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "compression": { + "description": "The data compression method used for the json dataset.", + "$ref": "#/definitions/DatasetCompression" + } + }, + "required": [ + "location" + ] + }, + "OrcDataset": { + "x-ms-discriminator-value": "Orc", + "description": "ORC dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "ORC dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OrcDatasetTypeProperties" + } + } + }, + "OrcDatasetTypeProperties": { + "description": "ORC dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the ORC data storage." + }, + "orcCompressionCodec": { + "type": "string", + "enum": [ + "none", + "zlib", + "snappy" + ], + "x-ms-enum": { + "name": "OrcCompressionCodec", + "modelAsString": true + } + } + }, + "required": [ + "location" + ] + }, + "BinaryDataset": { + "x-ms-discriminator-value": "Binary", + "description": "Binary dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Binary dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BinaryDatasetTypeProperties" + } + } + }, + "BinaryDatasetTypeProperties": { + "description": "Binary dataset properties.", + "type": "object", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the Binary storage." + }, + "compression": { + "description": "The data compression method used for the binary dataset.", + "$ref": "#/definitions/DatasetCompression" + } + }, + "required": [ + "location" + ] + }, + "AzureTableDataset": { + "x-ms-discriminator-value": "AzureTable", + "description": "The Azure Table storage dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureTableDatasetTypeProperties": { + "description": "Azure Table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Azure Table storage. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "AzureSqlTableDataset": { + "x-ms-discriminator-value": "AzureSqlTable", + "description": "The Azure SQL Server database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlTableDatasetTypeProperties" + } + } + }, + "AzureSqlTableDatasetTypeProperties": { + "description": "Azure SQL dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL database. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlMITableDataset": { + "x-ms-discriminator-value": "AzureSqlMITable", + "description": "The Azure SQL Managed Instance dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Managed Instance dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlMITableDatasetTypeProperties" + } + } + }, + "AzureSqlMITableDatasetTypeProperties": { + "description": "Azure SQL Managed Instance dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL Managed Instance. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL Managed Instance dataset. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlDWTableDataset": { + "x-ms-discriminator-value": "AzureSqlDWTable", + "description": "The Azure SQL Data Warehouse dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Data Warehouse dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDWTableDatasetTypeProperties" + } + } + }, + "AzureSqlDWTableDatasetTypeProperties": { + "description": "Azure SQL Data Warehouse dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + } + } + }, + "CassandraTableDataset": { + "x-ms-discriminator-value": "CassandraTable", + "description": "The Cassandra database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Cassandra dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CassandraTableDatasetTypeProperties" + } + } + }, + "CassandraTableDatasetTypeProperties": { + "description": "Cassandra dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Cassandra database. Type: string (or Expression with resultType string)." + }, + "keyspace": { + "type": "object", + "description": "The keyspace of the Cassandra database. Type: string (or Expression with resultType string)." + } + } + }, + "CustomDataset": { + "description": "The custom dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Custom dataset properties.", + "x-ms-client-flatten": true, + "type": "object" + } + } + }, + "CosmosDbSqlApiCollectionDataset": { + "x-ms-discriminator-value": "CosmosDbSqlApiCollection", + "description": "Microsoft Azure CosmosDB (SQL API) Collection dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (SQL API) Collection dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbSqlApiCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbSqlApiCollectionDatasetTypeProperties": { + "description": "CosmosDB (SQL API) Collection dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "CosmosDB (SQL API) collection name. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "DocumentDbCollectionDataset": { + "x-ms-discriminator-value": "DocumentDbCollection", + "description": "Microsoft Azure Document Database Collection dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "DocumentDB Collection dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DocumentDbCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DocumentDbCollectionDatasetTypeProperties": { + "description": "DocumentDB Collection dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "Document Database collection name. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "DynamicsEntityDataset": { + "x-ms-discriminator-value": "DynamicsEntity", + "description": "The Dynamics entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsEntityDatasetTypeProperties" + } + } + }, + "DynamicsEntityDatasetTypeProperties": { + "description": "Dynamics entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsCrmEntityDataset": { + "x-ms-discriminator-value": "DynamicsCrmEntity", + "description": "The Dynamics CRM entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics CRM entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsCrmEntityDatasetTypeProperties" + } + } + }, + "DynamicsCrmEntityDatasetTypeProperties": { + "description": "Dynamics CRM entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "CommonDataServiceForAppsEntityDataset": { + "x-ms-discriminator-value": "CommonDataServiceForAppsEntity", + "description": "The Common Data Service for Apps entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Common Data Service for Apps entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommonDataServiceForAppsEntityDatasetTypeProperties" + } + } + }, + "CommonDataServiceForAppsEntityDatasetTypeProperties": { + "description": "Common Data Service for Apps entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "Office365Dataset": { + "x-ms-discriminator-value": "Office365Table", + "description": "The Office365 account.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Office365 dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Office365DatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Office365DatasetTypeProperties": { + "description": "Office365 dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "Name of the dataset to extract from Office 365. Type: string (or Expression with resultType string)." + }, + "predicate": { + "type": "object", + "description": "A predicate expression that can be used to filter the specific rows to extract from Office 365. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "MongoDbCollectionDataset": { + "x-ms-discriminator-value": "MongoDbCollection", + "description": "The MongoDB database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbCollectionDatasetTypeProperties": { + "description": "MongoDB database dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "The table name of the MongoDB database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "MongoDbV2CollectionDataset": { + "x-ms-discriminator-value": "MongoDbV2Collection", + "description": "The MongoDB database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbV2CollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbV2CollectionDatasetTypeProperties": { + "description": "MongoDB database dataset properties.", + "properties": { + "collection": { + "type": "object", + "description": "The collection name of the MongoDB database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collection" + ] + }, + "CosmosDbMongoDbApiCollectionDataset": { + "x-ms-discriminator-value": "CosmosDbMongoDbApiCollection", + "description": "The CosmosDB (MongoDB API) database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (MongoDB API) database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbMongoDbApiCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbMongoDbApiCollectionDatasetTypeProperties": { + "description": "CosmosDB (MongoDB API) database dataset properties.", + "properties": { + "collection": { + "type": "object", + "description": "The collection name of the CosmosDB (MongoDB API) database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collection" + ] + }, + "ODataResourceDataset": { + "x-ms-discriminator-value": "ODataResource", + "description": "The Open Data Protocol (OData) resource dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "OData dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ODataResourceDatasetTypeProperties" + } + } + }, + "ODataResourceDatasetTypeProperties": { + "description": "OData dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The OData resource path. Type: string (or Expression with resultType string)." + } + } + }, + "OracleTableDataset": { + "x-ms-discriminator-value": "OracleTable", + "description": "The on-premises Oracle database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "On-premises Oracle dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleTableDatasetTypeProperties" + } + } + }, + "OracleTableDatasetTypeProperties": { + "description": "On-premises Oracle dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the on-premises Oracle database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the on-premises Oracle database. Type: string (or Expression with resultType string)." + } + } + }, + "TeradataTableDataset": { + "x-ms-discriminator-value": "TeradataTable", + "description": "The Teradata database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Teradata dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TeradataTableDatasetTypeProperties" + } + } + }, + "TeradataTableDatasetTypeProperties": { + "description": "Teradata dataset properties.", + "properties": { + "database": { + "type": "object", + "description": "The database name of Teradata. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of Teradata. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMySqlTableDataset": { + "x-ms-discriminator-value": "AzureMySqlTable", + "description": "The Azure MySQL database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure MySQL database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMySqlTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMySqlTableDatasetTypeProperties": { + "description": "Azure MySQL database dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Azure MySQL database table name. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The name of Azure MySQL database table. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonRedshiftTableDataset": { + "x-ms-discriminator-value": "AmazonRedshiftTable", + "description": "The Amazon Redshift table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Redshift table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonRedshiftTableDatasetTypeProperties" + } + } + }, + "AmazonRedshiftTableDatasetTypeProperties": { + "description": "Amazon Redshift table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The Amazon Redshift table name. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The Amazon Redshift schema name. Type: string (or Expression with resultType string)." + } + } + }, + "Db2TableDataset": { + "x-ms-discriminator-value": "Db2Table", + "description": "The Db2 table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Db2 table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Db2TableDatasetTypeProperties" + } + } + }, + "Db2TableDatasetTypeProperties": { + "description": "Db2 table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The Db2 schema name. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The Db2 table name. Type: string (or Expression with resultType string)." + } + } + }, + "RelationalTableDataset": { + "x-ms-discriminator-value": "RelationalTable", + "description": "The relational table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Relational table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelationalTableDatasetTypeProperties" + } + } + }, + "RelationalTableDatasetTypeProperties": { + "description": "Relational table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The relational table name. Type: string (or Expression with resultType string)." + } + } + }, + "InformixTableDataset": { + "x-ms-discriminator-value": "InformixTable", + "description": "The Informix table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Informix table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InformixTableDatasetTypeProperties" + } + } + }, + "InformixTableDatasetTypeProperties": { + "description": "Informix table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Informix table name. Type: string (or Expression with resultType string)." + } + } + }, + "OdbcTableDataset": { + "x-ms-discriminator-value": "OdbcTable", + "description": "The ODBC table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "ODBC table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OdbcTableDatasetTypeProperties" + } + } + }, + "OdbcTableDatasetTypeProperties": { + "description": "ODBC table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The ODBC table name. Type: string (or Expression with resultType string)." + } + } + }, + "MySqlTableDataset": { + "x-ms-discriminator-value": "MySqlTable", + "description": "The MySQL table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MySQL table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MySqlTableDatasetTypeProperties" + } + } + }, + "MySqlTableDatasetTypeProperties": { + "description": "MySql table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The MySQL table name. Type: string (or Expression with resultType string)." + } + } + }, + "PostgreSqlTableDataset": { + "x-ms-discriminator-value": "PostgreSqlTable", + "description": "The PostgreSQL table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "PostgreSQL table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PostgreSqlTableDatasetTypeProperties" + } + } + }, + "PostgreSqlTableDatasetTypeProperties": { + "description": "PostgreSQL table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The PostgreSQL table name. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The PostgreSQL schema name. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessTableDataset": { + "x-ms-discriminator-value": "MicrosoftAccessTable", + "description": "The Microsoft Access table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Microsoft Access table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MicrosoftAccessTableDatasetTypeProperties" + } + } + }, + "MicrosoftAccessTableDatasetTypeProperties": { + "description": "Microsoft Access table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Microsoft Access table name. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceObjectDataset": { + "x-ms-discriminator-value": "SalesforceObject", + "description": "The Salesforce object dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce object dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceObjectDatasetTypeProperties" + } + } + }, + "SalesforceObjectDatasetTypeProperties": { + "description": "Salesforce object dataset properties.", + "properties": { + "objectApiName": { + "type": "object", + "description": "The Salesforce object API name. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceServiceCloudObjectDataset": { + "x-ms-discriminator-value": "SalesforceServiceCloudObject", + "description": "The Salesforce Service Cloud object dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Service Cloud object dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceServiceCloudObjectDatasetTypeProperties" + } + } + }, + "SalesforceServiceCloudObjectDatasetTypeProperties": { + "description": "Salesforce Service Cloud object dataset properties.", + "properties": { + "objectApiName": { + "type": "object", + "description": "The Salesforce Service Cloud object API name. Type: string (or Expression with resultType string)." + } + } + }, + "SybaseTableDataset": { + "x-ms-discriminator-value": "SybaseTable", + "description": "The Sybase table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sybase table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SybaseTableDatasetTypeProperties" + } + } + }, + "SybaseTableDatasetTypeProperties": { + "description": "Sybase table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Sybase table name. Type: string (or Expression with resultType string)." + } + } + }, + "SapBwCubeDataset": { + "x-ms-discriminator-value": "SapBwCube", + "description": "The SAP BW cube dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": {} + }, + "SapCloudForCustomerResourceDataset": { + "x-ms-discriminator-value": "SapCloudForCustomerResource", + "description": "The path of the SAP Cloud for Customer OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Cloud For Customer OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapCloudForCustomerResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapCloudForCustomerResourceDatasetTypeProperties": { + "description": "Sap Cloud For Customer OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the SAP Cloud for Customer OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "SapEccResourceDataset": { + "x-ms-discriminator-value": "SapEccResource", + "description": "The path of the SAP ECC OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP ECC OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapEccResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapEccResourceDatasetTypeProperties": { + "description": "Sap ECC OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the SAP ECC OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "SapHanaTableDataset": { + "x-ms-discriminator-value": "SapHanaTable", + "description": "SAP HANA Table properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP HANA Table properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapHanaTableDatasetTypeProperties" + } + } + }, + "SapHanaTableDatasetTypeProperties": { + "description": "SAP HANA Table properties.", + "properties": { + "schema": { + "type": "object", + "description": "The schema name of SAP HANA. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of SAP HANA. Type: string (or Expression with resultType string)." + } + } + }, + "SapOpenHubTableDataset": { + "x-ms-discriminator-value": "SapOpenHubTable", + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapOpenHubTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapOpenHubTableDatasetTypeProperties": { + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "properties": { + "openHubDestinationName": { + "type": "object", + "description": "The name of the Open Hub Destination with destination type as Database Table. Type: string (or Expression with resultType string)." + }, + "excludeLastRequest": { + "type": "object", + "description": "Whether to exclude the records of the last request. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "baseRequestId": { + "type": "object", + "description": "The ID of request for delta loading. Once it is set, only data with requestId larger than the value of this property will be retrieved. The default value is 0. Type: integer (or Expression with resultType integer )." + } + }, + "required": [ + "openHubDestinationName" + ] + }, + "SqlServerTableDataset": { + "x-ms-discriminator-value": "SqlServerTable", + "description": "The on-premises SQL Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "On-premises SQL Server dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlServerTableDatasetTypeProperties" + } + } + }, + "SqlServerTableDatasetTypeProperties": { + "description": "On-premises SQL Server dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the SQL Server dataset. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the SQL Server dataset. Type: string (or Expression with resultType string)." + } + } + }, + "RestResourceDataset": { + "x-ms-discriminator-value": "RestResource", + "description": "A Rest service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestResourceDatasetTypeProperties" + } + } + }, + "RestResourceDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "relativeUrl": { + "type": "object", + "description": "The relative URL to the resource that the RESTful API provides. Type: string (or Expression with resultType string)." + }, + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "paginationRules": { + "type": "object", + "description": "The pagination rules to compose next page requests. Type: string (or Expression with resultType string)." + } + } + }, + "SapTableResourceDataset": { + "x-ms-discriminator-value": "SapTableResource", + "description": "SAP Table Resource properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Table Resource properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapTableResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapTableResourceDatasetTypeProperties": { + "description": "SAP Table Resource properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The name of the SAP Table. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "WebTableDataset": { + "x-ms-discriminator-value": "WebTable", + "description": "The dataset points to a HTML table in the web page.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Web table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebTableDatasetTypeProperties": { + "description": "Web table dataset properties.", + "properties": { + "index": { + "type": "object", + "description": "The zero-based index of the table in the web page. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "path": { + "type": "object", + "description": "The relative URL to the web page from the linked service URL. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "index" + ] + }, + "AzureSearchIndexDataset": { + "x-ms-discriminator-value": "AzureSearchIndex", + "description": "The Azure Search Index.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSearchIndexDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchIndexDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "indexName": { + "type": "object", + "description": "The name of the Azure Search Index. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "indexName" + ] + }, + "GenericDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonMWSObjectDataset": { + "x-ms-discriminator-value": "AmazonMWSObject", + "description": "Amazon Marketplace Web Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzurePostgreSqlTableDataset": { + "x-ms-discriminator-value": "AzurePostgreSqlTable", + "description": "Azure PostgreSQL dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzurePostgreSqlTableDatasetTypeProperties" + } + } + }, + "AzurePostgreSqlTableDatasetTypeProperties": { + "description": "Azure PostgreSQL dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Azure PostgreSQL database which includes both schema and table. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure PostgreSQL database. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure PostgreSQL database. Type: string (or Expression with resultType string)." + } + } + }, + "ConcurObjectDataset": { + "x-ms-discriminator-value": "ConcurObject", + "description": "Concur Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "CouchbaseTableDataset": { + "x-ms-discriminator-value": "CouchbaseTable", + "description": "Couchbase server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "DrillTableDataset": { + "x-ms-discriminator-value": "DrillTable", + "description": "Drill server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DrillDatasetTypeProperties" + } + } + }, + "DrillDatasetTypeProperties": { + "description": "Drill Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Drill. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Drill. Type: string (or Expression with resultType string)." + } + } + }, + "EloquaObjectDataset": { + "x-ms-discriminator-value": "EloquaObject", + "description": "Eloqua server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "GoogleBigQueryObjectDataset": { + "x-ms-discriminator-value": "GoogleBigQueryObject", + "description": "Google BigQuery service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleBigQueryDatasetTypeProperties" + } + } + }, + "GoogleBigQueryDatasetTypeProperties": { + "description": "Google BigQuery Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using database + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Google BigQuery. Type: string (or Expression with resultType string)." + }, + "dataset": { + "type": "object", + "description": "The database name of the Google BigQuery. Type: string (or Expression with resultType string)." + } + } + }, + "GreenplumTableDataset": { + "x-ms-discriminator-value": "GreenplumTable", + "description": "Greenplum Database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GreenplumDatasetTypeProperties" + } + } + }, + "GreenplumDatasetTypeProperties": { + "description": "Greenplum Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of Greenplum. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of Greenplum. Type: string (or Expression with resultType string)." + } + } + }, + "HBaseObjectDataset": { + "x-ms-discriminator-value": "HBaseObject", + "description": "HBase server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "HiveObjectDataset": { + "x-ms-discriminator-value": "HiveObject", + "description": "Hive Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HiveDatasetTypeProperties" + } + } + }, + "HiveDatasetTypeProperties": { + "description": "Hive Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Hive. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Hive. Type: string (or Expression with resultType string)." + } + } + }, + "HubspotObjectDataset": { + "x-ms-discriminator-value": "HubspotObject", + "description": "Hubspot Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ImpalaObjectDataset": { + "x-ms-discriminator-value": "ImpalaObject", + "description": "Impala server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImpalaDatasetTypeProperties" + } + } + }, + "ImpalaDatasetTypeProperties": { + "description": "Impala Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Impala. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Impala. Type: string (or Expression with resultType string)." + } + } + }, + "JiraObjectDataset": { + "x-ms-discriminator-value": "JiraObject", + "description": "Jira Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MagentoObjectDataset": { + "x-ms-discriminator-value": "MagentoObject", + "description": "Magento server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MariaDBTableDataset": { + "x-ms-discriminator-value": "MariaDBTable", + "description": "MariaDB server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzureMariaDBTableDataset": { + "x-ms-discriminator-value": "AzureMariaDBTable", + "description": "Azure Database for MariaDB dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MarketoObjectDataset": { + "x-ms-discriminator-value": "MarketoObject", + "description": "Marketo server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "PaypalObjectDataset": { + "x-ms-discriminator-value": "PaypalObject", + "description": "Paypal Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "PhoenixObjectDataset": { + "x-ms-discriminator-value": "PhoenixObject", + "description": "Phoenix server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PhoenixDatasetTypeProperties" + } + } + }, + "PhoenixDatasetTypeProperties": { + "description": "Phoenix Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Phoenix. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Phoenix. Type: string (or Expression with resultType string)." + } + } + }, + "PrestoObjectDataset": { + "x-ms-discriminator-value": "PrestoObject", + "description": "Presto server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrestoDatasetTypeProperties" + } + } + }, + "PrestoDatasetTypeProperties": { + "description": "Presto Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Presto. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Presto. Type: string (or Expression with resultType string)." + } + } + }, + "QuickBooksObjectDataset": { + "x-ms-discriminator-value": "QuickBooksObject", + "description": "QuickBooks server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ServiceNowObjectDataset": { + "x-ms-discriminator-value": "ServiceNowObject", + "description": "ServiceNow server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ShopifyObjectDataset": { + "x-ms-discriminator-value": "ShopifyObject", + "description": "Shopify Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "SparkObjectDataset": { + "x-ms-discriminator-value": "SparkObject", + "description": "Spark Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SparkDatasetTypeProperties" + } + } + }, + "SparkDatasetTypeProperties": { + "description": "Spark Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Spark. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Spark. Type: string (or Expression with resultType string)." + } + } + }, + "SquareObjectDataset": { + "x-ms-discriminator-value": "SquareObject", + "description": "Square Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "XeroObjectDataset": { + "x-ms-discriminator-value": "XeroObject", + "description": "Xero Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ZohoObjectDataset": { + "x-ms-discriminator-value": "ZohoObject", + "description": "Zoho server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "NetezzaTableDataset": { + "x-ms-discriminator-value": "NetezzaTable", + "description": "Netezza dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetezzaTableDatasetTypeProperties" + } + } + }, + "NetezzaTableDatasetTypeProperties": { + "description": "Netezza dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Netezza. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Netezza. Type: string (or Expression with resultType string)." + } + } + }, + "VerticaTableDataset": { + "x-ms-discriminator-value": "VerticaTable", + "description": "Vertica dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/VerticaDatasetTypeProperties" + } + } + }, + "VerticaDatasetTypeProperties": { + "description": "Vertica Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Vertica. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Vertica. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceMarketingCloudObjectDataset": { + "x-ms-discriminator-value": "SalesforceMarketingCloudObject", + "description": "Salesforce Marketing Cloud dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ResponsysObjectDataset": { + "x-ms-discriminator-value": "ResponsysObject", + "description": "Responsys dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "DynamicsAXResourceDataset": { + "x-ms-discriminator-value": "DynamicsAXResource", + "description": "The path of the Dynamics AX OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics AX OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsAXResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsAXResourceDatasetTypeProperties": { + "description": "Dynamics AX OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the Dynamics AX OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "OracleServiceCloudObjectDataset": { + "x-ms-discriminator-value": "OracleServiceCloudObject", + "description": "Oracle Service Cloud dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzureDataExplorerTableDataset": { + "x-ms-discriminator-value": "AzureDataExplorerTable", + "description": "The Azure Data Explorer (Kusto) dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer (Kusto) dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerDatasetTypeProperties": { + "description": "Azure Data Explorer (Kusto) dataset properties.", + "properties": { + "table": { + "type": "object", + "description": "The table name of the Azure Data Explorer database. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleAdWordsObjectDataset": { + "x-ms-discriminator-value": "GoogleAdWordsObject", + "description": "Google AdWords service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json new file mode 100644 index 000000000000..bbee397ae546 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json @@ -0,0 +1,5689 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "LinkedService": { + "description": "The Azure Synapse nested object which contains the information and credential which can be used to connect with related store or compute resource.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of linked service." + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "description": { + "description": "Linked service description.", + "type": "string" + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "Parameters for linked service." + }, + "annotations": { + "description": "List of tags that can be used for describing the linked service.", + "type": "array", + "items": { + "type": "object" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureStorageLinkedService": { + "x-ms-discriminator-value": "AzureStorage", + "description": "The storage account linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBlobStorageLinkedService": { + "x-ms-discriminator-value": "AzureBlobStorage", + "description": "The azure blob storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Blob Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBlobStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureTableStorageLinkedService": { + "x-ms-discriminator-value": "AzureTableStorage", + "description": "The azure table storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Table Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureStorageLinkedServiceTypeProperties": { + "description": "Azure Storage linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. It is mutually exclusive with sasUri property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure Storage resource. It is mutually exclusive with connectionString property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobStorageLinkedServiceTypeProperties": { + "description": "Azure Blob Storage linked service properties.", + "properties": { + "connectionString": { + "type": "object", + "description": "The connection string. It is mutually exclusive with sasUri, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure Blob Storage resource. It is mutually exclusive with connectionString, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "serviceEndpoint": { + "type": "string", + "description": "Blob service endpoint of the Azure Blob Storage resource. It is mutually exclusive with connectionString, sasUri property." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Data Warehouse." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlDWLinkedService": { + "x-ms-discriminator-value": "AzureSqlDW", + "description": "Azure SQL Data Warehouse linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Data Warehouse linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDWLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlDWLinkedServiceTypeProperties": { + "description": "Azure SQL Data Warehouse linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Data Warehouse." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "SqlServerLinkedService": { + "x-ms-discriminator-value": "SqlServer", + "description": "SQL Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SQL Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SqlServerLinkedServiceTypeProperties": { + "description": "SQL Server linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "userName": { + "type": "object", + "description": "The on-premises Windows authentication user name. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The on-premises Windows authentication password.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "AzureSqlDatabaseLinkedService": { + "x-ms-discriminator-value": "AzureSqlDatabase", + "description": "Microsoft Azure SQL Database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDatabaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlDatabaseLinkedServiceTypeProperties": { + "description": "Azure SQL Database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Database. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Database." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "AzureSqlMILinkedService": { + "x-ms-discriminator-value": "AzureSqlMI", + "description": "Azure SQL Managed Instance linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Managed Instance linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlMILinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlMILinkedServiceTypeProperties": { + "description": "Azure SQL Managed Instance linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Managed Instance. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Managed Instance." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "AzureBatchLinkedService": { + "x-ms-discriminator-value": "AzureBatch", + "description": "Azure Batch linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Batch linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBatchLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBatchLinkedServiceTypeProperties": { + "description": "Azure Batch linked service properties.", + "properties": { + "accountName": { + "type": "object", + "description": "The Azure Batch account name. Type: string (or Expression with resultType string)." + }, + "accessKey": { + "description": "The Azure Batch account access key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "batchUri": { + "type": "object", + "description": "The Azure Batch URI. Type: string (or Expression with resultType string)." + }, + "poolName": { + "type": "object", + "description": "The Azure Batch pool name. Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "accountName", + "batchUri", + "poolName", + "linkedServiceName" + ] + }, + "AzureKeyVaultLinkedService": { + "x-ms-discriminator-value": "AzureKeyVault", + "description": "Azure Key Vault linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Key Vault linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureKeyVaultLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureKeyVaultLinkedServiceTypeProperties": { + "description": "Azure Key Vault linked service properties.", + "properties": { + "baseUrl": { + "type": "object", + "description": "The base URL of the Azure Key Vault. e.g. https://myakv.vault.azure.net Type: string (or Expression with resultType string)." + } + }, + "required": [ + "baseUrl" + ] + }, + "CosmosDbLinkedService": { + "x-ms-discriminator-value": "CosmosDb", + "description": "Microsoft Azure Cosmos Database (CosmosDB) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbLinkedServiceTypeProperties": { + "description": "CosmosDB linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "accountEndpoint": { + "description": "The endpoint of the Azure CosmosDB account. Type: string (or Expression with resultType string)", + "type": "object" + }, + "database": { + "description": "The name of the database. Type: string (or Expression with resultType string)", + "type": "object" + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The account key of the Azure CosmosDB account. Type: SecureString or AzureKeyVaultSecretReference." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsLinkedService": { + "x-ms-discriminator-value": "Dynamics", + "description": "Dynamics linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsLinkedServiceTypeProperties": { + "description": "Dynamics linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Dynamics instance. 'Online' for Dynamics Online and 'OnPremisesWithIfd' for Dynamics on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "string", + "description": "The host name of the on-premises Dynamics server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "string", + "description": "The port of on-premises Dynamics server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "string", + "description": "The URL to the Microsoft Dynamics server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "string", + "description": "The organization name of the Dynamics instance. The property is required for on-prem and required for online when there are more than one Dynamics instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Dynamics instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Dynamics instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "deploymentType", + "authenticationType" + ] + }, + "DynamicsCrmLinkedService": { + "x-ms-discriminator-value": "DynamicsCrm", + "description": "Dynamics CRM linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics CRM linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsCrmLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsCrmLinkedServiceTypeProperties": { + "description": "Dynamics CRM linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Dynamics CRM instance. 'Online' for Dynamics CRM Online and 'OnPremisesWithIfd' for Dynamics CRM on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "object", + "description": "The host name of the on-premises Dynamics CRM server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port of on-premises Dynamics CRM server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "object", + "description": "The URL to the Microsoft Dynamics CRM server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "object", + "description": "The organization name of the Dynamics CRM instance. The property is required for on-prem and required for online when there are more than one Dynamics CRM instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Dynamics CRM server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Dynamics CRM instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Dynamics CRM instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "deploymentType", + "authenticationType" + ] + }, + "CommonDataServiceForAppsLinkedService": { + "x-ms-discriminator-value": "CommonDataServiceForApps", + "description": "Common Data Service for Apps linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Common Data Service for Apps linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommonDataServiceForAppsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CommonDataServiceForAppsLinkedServiceTypeProperties": { + "description": "Common Data Service for Apps linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Common Data Service for Apps instance. 'Online' for Common Data Service for Apps Online and 'OnPremisesWithIfd' for Common Data Service for Apps on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "object", + "description": "The host name of the on-premises Common Data Service for Apps server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port of on-premises Common Data Service for Apps server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "object", + "description": "The URL to the Microsoft Common Data Service for Apps server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "object", + "description": "The organization name of the Common Data Service for Apps instance. The property is required for on-prem and required for online when there are more than one Common Data Service for Apps instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Common Data Service for Apps server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Common Data Service for Apps instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Common Data Service for Apps instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "deploymentType", + "authenticationType" + ] + }, + "HDInsightLinkedService": { + "x-ms-discriminator-value": "HDInsight", + "description": "HDInsight linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDInsight linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HDInsightLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightLinkedServiceTypeProperties": { + "description": "HDInsight linked service properties.", + "properties": { + "clusterUri": { + "type": "object", + "description": "HDInsight cluster URI. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "HDInsight cluster user name. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "HDInsight cluster password.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "linkedServiceName": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "hcatalogLinkedServiceName": { + "description": "A reference to the Azure SQL linked service that points to the HCatalog database.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "isEspEnabled": { + "type": "object", + "description": "Specify if the HDInsight is created with ESP (Enterprise Security Package). Type: Boolean." + }, + "fileSystem": { + "type": "object", + "description": "Specify the FileSystem if the main storage for the HDInsight is ADLS Gen2. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "clusterUri" + ] + }, + "FileServerLinkedService": { + "x-ms-discriminator-value": "FileServer", + "description": "File system linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "File system linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FileServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FileServerLinkedServiceTypeProperties": { + "description": "File system linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the server. Type: string (or Expression with resultType string)." + }, + "userId": { + "type": "object", + "description": "User ID to logon the server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "host" + ] + }, + "AzureFileStorageLinkedService": { + "x-ms-discriminator-value": "AzureFileStorage", + "description": "Azure File Storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure File Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFileStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFileStorageLinkedServiceTypeProperties": { + "description": "Azure File Storage linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the server. Type: string (or Expression with resultType string)." + }, + "userId": { + "type": "object", + "description": "User ID to logon the server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "host" + ] + }, + "GoogleCloudStorageLinkedService": { + "x-ms-discriminator-value": "GoogleCloudStorage", + "description": "Linked service for Google Cloud Storage.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google Cloud Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleCloudStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleCloudStorageLinkedServiceTypeProperties": { + "description": "Google Cloud Storage linked service properties.", + "properties": { + "accessKeyId": { + "type": "object", + "description": "The access key identifier of the Google Cloud Storage Identity and Access Management (IAM) user. Type: string (or Expression with resultType string)." + }, + "secretAccessKey": { + "description": "The secret access key of the Google Cloud Storage Identity and Access Management (IAM) user.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "serviceUrl": { + "type": "object", + "description": "This value specifies the endpoint to access with the Google Cloud Storage Connector. This is an optional property; change it only if you want to try a different service endpoint or want to switch between https and http. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "OracleLinkedService": { + "x-ms-discriminator-value": "Oracle", + "description": "Oracle database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Oracle database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OracleLinkedServiceTypeProperties": { + "description": "Oracle database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "AzureMySqlLinkedService": { + "x-ms-discriminator-value": "AzureMySql", + "description": "Azure MySQL database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure MySQL database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMySqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMySqlLinkedServiceTypeProperties": { + "description": "Azure MySQL database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "MySqlLinkedService": { + "x-ms-discriminator-value": "MySql", + "description": "Linked service for MySQL data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MySQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MySqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MySqlLinkedServiceTypeProperties": { + "description": "MySQL linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "PostgreSqlLinkedService": { + "x-ms-discriminator-value": "PostgreSql", + "description": "Linked service for PostgreSQL data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "PostgreSQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PostgreSqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PostgreSqlLinkedServiceTypeProperties": { + "description": "PostgreSQL linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "SybaseLinkedService": { + "x-ms-discriminator-value": "Sybase", + "description": "Linked service for Sybase data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Sybase linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SybaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SybaseLinkedServiceTypeProperties": { + "description": "Sybase linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "Schema name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "SybaseAuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "database" + ] + }, + "Db2LinkedService": { + "x-ms-discriminator-value": "Db2", + "description": "Linked service for DB2 data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "DB2 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Db2LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Db2LinkedServiceTypeProperties": { + "description": "DB2 linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic" + ], + "x-ms-enum": { + "name": "Db2AuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "packageCollection": { + "type": "object", + "description": "Under where packages are created when querying database. Type: string (or Expression with resultType string)." + }, + "certificateCommonName": { + "type": "object", + "description": "Certificate Common Name when TLS is enabled. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "database" + ] + }, + "TeradataLinkedService": { + "x-ms-discriminator-value": "Teradata", + "description": "Linked service for Teradata data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Teradata linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TeradataLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "TeradataLinkedServiceTypeProperties": { + "description": "Teradata linked service properties.", + "properties": { + "connectionString": { + "description": "Teradata ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "TeradataAuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMLLinkedService": { + "x-ms-discriminator-value": "AzureML", + "description": "Azure ML Studio Web Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure ML Studio Web Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMLLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLLinkedServiceTypeProperties": { + "description": "Azure ML Studio Web Service linked service properties.", + "properties": { + "mlEndpoint": { + "type": "object", + "description": "The Batch Execution REST URL for an Azure ML Studio Web Service endpoint. Type: string (or Expression with resultType string)." + }, + "apiKey": { + "description": "The API key for accessing the Azure ML model endpoint.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "updateResourceEndpoint": { + "type": "object", + "description": "The Update Resource REST URL for an Azure ML Studio Web Service endpoint. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML Studio web service. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML Studio web service." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "mlEndpoint", + "apiKey" + ] + }, + "AzureMLServiceLinkedService": { + "x-ms-discriminator-value": "AzureMLService", + "description": "Azure ML Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure ML Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMLServiceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLServiceLinkedServiceTypeProperties": { + "description": "Azure ML Service linked service properties.", + "properties": { + "subscriptionId": { + "type": "object", + "description": "Azure ML Service workspace subscription ID. Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Azure ML Service workspace resource group name. Type: string (or Expression with resultType string)." + }, + "mlWorkspaceName": { + "type": "object", + "description": "Azure ML Service workspace name. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against the endpoint of a published Azure ML Service pipeline. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against the endpoint of a published Azure ML Service pipeline." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "subscriptionId", + "resourceGroupName", + "mlWorkspaceName" + ] + }, + "OdbcLinkedService": { + "x-ms-discriminator-value": "Odbc", + "description": "Open Database Connectivity (ODBC) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "ODBC linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OdbcLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OdbcLinkedServiceTypeProperties": { + "description": "ODBC linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "InformixLinkedService": { + "x-ms-discriminator-value": "Informix", + "description": "Informix linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Informix linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InformixLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "InformixLinkedServiceTypeProperties": { + "description": "Informix linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the Informix as ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "MicrosoftAccessLinkedService": { + "x-ms-discriminator-value": "MicrosoftAccess", + "description": "Microsoft Access linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Microsoft Access linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MicrosoftAccessLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MicrosoftAccessLinkedServiceTypeProperties": { + "description": "Microsoft Access linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the Microsoft Access as ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString" + ] + }, + "HdfsLinkedService": { + "x-ms-discriminator-value": "Hdfs", + "description": "Hadoop Distributed File System (HDFS) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDFS linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HdfsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HdfsLinkedServiceTypeProperties": { + "description": "HDFS linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of the HDFS service endpoint, e.g. http://myhostname:50070/webhdfs/v1 . Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the HDFS. Possible values are: Anonymous and Windows. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "User name for Windows authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Windows authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "url" + ] + }, + "ODataLinkedService": { + "x-ms-discriminator-value": "OData", + "description": "Open Data Protocol (OData) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "OData linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ODataLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ODataLinkedServiceTypeProperties": { + "description": "OData linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of the OData service endpoint. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the OData service.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "Windows", + "AadServicePrincipal", + "ManagedServiceIdentity" + ], + "x-ms-enum": { + "name": "ODataAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "User name of the OData service. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password of the OData service.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "Specify the tenant information (domain name or tenant ID) under which your application resides. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "Specify the application id of your application registered in Azure Active Directory. Type: string (or Expression with resultType string)." + }, + "aadResourceId": { + "type": "object", + "description": "Specify the resource you are requesting authorization to use Directory. Type: string (or Expression with resultType string)." + }, + "aadServicePrincipalCredentialType": { + "description": "Specify the credential type (key or cert) is used for service principal.", + "type": "string", + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "x-ms-enum": { + "name": "ODataAadServicePrincipalCredentialType", + "modelAsString": true + } + }, + "servicePrincipalKey": { + "description": "Specify the secret of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCert": { + "description": "Specify the base64 encoded certificate of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCertPassword": { + "description": "Specify the password of your certificate if your certificate has a password and you are using AadServicePrincipal authentication. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "WebLinkedService": { + "x-ms-discriminator-value": "Web", + "description": "Web linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Web linked service properties.", + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebLinkedServiceTypeProperties": { + "description": "Base definition of WebLinkedServiceTypeProperties, this typeProperties is polymorphic based on authenticationType, so not flattened in SDK models.", + "discriminator": "authenticationType", + "type": "object", + "properties": { + "url": { + "type": "object", + "description": "The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the web table source.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "ClientCertificate" + ], + "x-ms-enum": { + "name": "WebAuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "authenticationType", + "url" + ] + }, + "WebAnonymousAuthentication": { + "description": "A WebLinkedService that uses anonymous authentication to communicate with an HTTP endpoint.", + "x-ms-discriminator-value": "Anonymous", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ] + }, + "WebBasicAuthentication": { + "description": "A WebLinkedService that uses basic authentication to communicate with an HTTP endpoint.", + "x-ms-discriminator-value": "Basic", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ], + "properties": { + "username": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "username", + "password" + ] + }, + "WebClientCertificateAuthentication": { + "description": "A WebLinkedService that uses client certificate based authentication to communicate with an HTTP endpoint. This scheme follows mutual authentication; the server must also provide valid credentials to the client.", + "x-ms-discriminator-value": "ClientCertificate", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ], + "properties": { + "pfx": { + "description": "Base64-encoded contents of a PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "password": { + "description": "Password for the PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "pfx", + "password" + ] + }, + "CassandraLinkedService": { + "x-ms-discriminator-value": "Cassandra", + "description": "Linked service for Cassandra data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Cassandra linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CassandraLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CassandraLinkedServiceTypeProperties": { + "description": "Cassandra linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "type": "object", + "description": "AuthenticationType to be used for connection. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port for the connection. Type: integer (or Expression with resultType integer)." + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "host" + ] + }, + "MongoDbLinkedService": { + "x-ms-discriminator-value": "MongoDb", + "description": "Linked service for MongoDb data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbLinkedServiceTypeProperties": { + "description": "MongoDB linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "The IP address or server name of the MongoDB server. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the MongoDB database.", + "type": "string", + "enum": [ + "Basic", + "Anonymous" + ], + "x-ms-enum": { + "name": "MongoDbAuthenticationType", + "modelAsString": true + } + }, + "databaseName": { + "type": "object", + "description": "The name of the MongoDB database that you want to access. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "authSource": { + "type": "object", + "description": "Database to verify the username and password. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the MongoDB server uses to listen for client connections. The default value is 27017. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "enableSsl": { + "type": "object", + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "allowSelfSignedServerCert": { + "type": "object", + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "databaseName" + ] + }, + "MongoDbV2LinkedService": { + "x-ms-discriminator-value": "MongoDbV2", + "description": "Linked service for MongoDB data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbV2LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbV2LinkedServiceTypeProperties": { + "description": "MongoDB linked service properties.", + "properties": { + "connectionString": { + "description": "The MongoDB connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "database": { + "type": "object", + "description": "The name of the MongoDB database that you want to access. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString", + "database" + ] + }, + "CosmosDbMongoDbApiLinkedService": { + "x-ms-discriminator-value": "CosmosDbMongoDbApi", + "description": "Linked service for CosmosDB (MongoDB API) data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (MongoDB API) linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbMongoDbApiLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbMongoDbApiLinkedServiceTypeProperties": { + "description": "CosmosDB (MongoDB API) linked service properties.", + "properties": { + "connectionString": { + "description": "The CosmosDB (MongoDB API) connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "database": { + "type": "object", + "description": "The name of the CosmosDB (MongoDB API) database that you want to access. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString", + "database" + ] + }, + "AzureDataLakeStoreLinkedService": { + "x-ms-discriminator-value": "AzureDataLakeStore", + "description": "Azure Data Lake Store linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Store linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataLakeStoreLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataLakeStoreLinkedServiceTypeProperties": { + "description": "Azure Data Lake Store linked service properties.", + "properties": { + "dataLakeStoreUri": { + "type": "object", + "description": "Data Lake Store service URI. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Store account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Store account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "accountName": { + "type": "object", + "description": "Data Lake Store account name. Type: string (or Expression with resultType string)." + }, + "subscriptionId": { + "type": "object", + "description": "Data Lake Store account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Data Lake Store account resource group name (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "dataLakeStoreUri" + ] + }, + "AzureBlobFSLinkedService": { + "x-ms-discriminator-value": "AzureBlobFS", + "description": "Azure Data Lake Storage Gen2 linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Storage Gen2 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBlobFSLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBlobFSLinkedServiceTypeProperties": { + "description": "Azure Data Lake Storage Gen2 linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "Endpoint for the Azure Data Lake Storage Gen2 service. Type: string (or Expression with resultType string)." + }, + "accountKey": { + "type": "object", + "description": "Account key for the Azure Data Lake Storage Gen2 service. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Storage Gen2 account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Storage Gen2 account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "Office365LinkedService": { + "x-ms-discriminator-value": "Office365", + "description": "Office365 linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Office365 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Office365LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Office365LinkedServiceTypeProperties": { + "description": "Office365 linked service properties.", + "properties": { + "office365TenantId": { + "type": "object", + "description": "Azure tenant ID to which the Office 365 account belongs. Type: string (or Expression with resultType string)." + }, + "servicePrincipalTenantId": { + "type": "object", + "description": "Specify the tenant information under which your Azure AD web application resides. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "Specify the application's client ID. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "Specify the application's key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "office365TenantId", + "servicePrincipalTenantId", + "servicePrincipalId", + "servicePrincipalKey" + ] + }, + "SalesforceLinkedService": { + "x-ms-discriminator-value": "Salesforce", + "description": "Linked service for Salesforce.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceLinkedServiceTypeProperties": { + "description": "Salesforce linked service properties.", + "properties": { + "environmentUrl": { + "type": "object", + "description": "The URL of Salesforce instance. Default is 'https://login.salesforce.com'. To copy data from sandbox, specify 'https://test.salesforce.com'. To copy data from custom domain, specify, for example, 'https://[domain].my.salesforce.com'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication of the Salesforce instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication of the Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "securityToken": { + "description": "The security token is required to remotely access Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceServiceCloudLinkedService": { + "x-ms-discriminator-value": "SalesforceServiceCloud", + "description": "Linked service for Salesforce Service Cloud.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Service Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceServiceCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceServiceCloudLinkedServiceTypeProperties": { + "description": "Salesforce Service Cloud linked service properties.", + "properties": { + "environmentUrl": { + "type": "object", + "description": "The URL of Salesforce Service Cloud instance. Default is 'https://login.salesforce.com'. To copy data from sandbox, specify 'https://test.salesforce.com'. To copy data from custom domain, specify, for example, 'https://[domain].my.salesforce.com'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication of the Salesforce instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication of the Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "securityToken": { + "description": "The security token is required to remotely access Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "extendedProperties": { + "type": "object", + "description": "Extended properties appended to the connection string. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "SapCloudForCustomerLinkedService": { + "x-ms-discriminator-value": "SapCloudForCustomer", + "description": "Linked service for SAP Cloud for Customer.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Cloud for Customer linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapCloudForCustomerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapCloudForCustomerLinkedServiceTypeProperties": { + "description": "SAP Cloud for Customer linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of SAP Cloud for Customer OData API. For example, '[https://[tenantname].crm.ondemand.com/sap/c4c/odata/v1]'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "SapEccLinkedService": { + "x-ms-discriminator-value": "SapEcc", + "description": "Linked service for SAP ERP Central Component(SAP ECC).", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SAP ECC linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapEccLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapEccLinkedServiceTypeProperties": { + "description": "SAP ECC linked service properties.", + "properties": { + "url": { + "type": "string", + "description": "The URL of SAP ECC OData API. For example, '[https://hostname:port/sap/opu/odata/sap/servicename/]'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "string", + "description": "The username for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "SapOpenHubLinkedService": { + "x-ms-discriminator-value": "SapOpenHub", + "description": "SAP Business Warehouse Open Hub Destination Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to SAP Business Warehouse Open Hub Destination linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapOpenHubLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapOpenHubLinkedServiceTypeProperties": { + "description": "Properties specific to SAP Business Warehouse Open Hub Destination linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP BW instance where the open hub destination is located. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the BW system where the open hub destination is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the BW system where the open hub destination is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "language": { + "type": "object", + "description": "Language of the BW system where the open hub destination is located. The default value is EN. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP BW server where the open hub destination is located. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP BW server where the open hub destination is located.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "systemNumber", + "clientId" + ] + }, + "RestServiceLinkedService": { + "x-ms-discriminator-value": "RestService", + "description": "Rest Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Rest Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestServiceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "RestServiceLinkedServiceTypeProperties": { + "description": "Rest Service linked service properties.", + "properties": { + "url": { + "description": "The base URL of the REST service.", + "type": "object" + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "Whether to validate server side SSL certificate when connecting to the endpoint.The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the REST service.", + "type": "string", + "enum": [ + "Anonymous", + "Basic", + "AadServicePrincipal", + "ManagedServiceIdentity" + ], + "x-ms-enum": { + "name": "RestServiceAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "description": "The user name used in Basic authentication type.", + "type": "object" + }, + "password": { + "description": "The password used in Basic authentication type.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "description": "The application's client ID used in AadServicePrincipal authentication type.", + "type": "object" + }, + "servicePrincipalKey": { + "description": "The application's key used in AadServicePrincipal authentication type.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "description": "The tenant information (domain name or tenant ID) used in AadServicePrincipal authentication type under which your application resides.", + "type": "object" + }, + "aadResourceId": { + "description": "The resource you are requesting authorization to use.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "url", + "authenticationType" + ] + }, + "AmazonS3LinkedService": { + "x-ms-discriminator-value": "AmazonS3", + "description": "Linked service for Amazon S3.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon S3 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonS3LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonS3LinkedServiceTypeProperties": { + "description": "Amazon S3 linked service properties.", + "properties": { + "accessKeyId": { + "type": "object", + "description": "The access key identifier of the Amazon S3 Identity and Access Management (IAM) user. Type: string (or Expression with resultType string)." + }, + "secretAccessKey": { + "description": "The secret access key of the Amazon S3 Identity and Access Management (IAM) user.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "serviceUrl": { + "type": "object", + "description": "This value specifies the endpoint to access with the S3 Connector. This is an optional property; change it only if you want to try a different service endpoint or want to switch between https and http. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonRedshiftLinkedService": { + "x-ms-discriminator-value": "AmazonRedshift", + "description": "Linked service for Amazon Redshift.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Redshift linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonRedshiftLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonRedshiftLinkedServiceTypeProperties": { + "description": "Amazon Redshift linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "The name of the Amazon Redshift server. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username of the Amazon Redshift source. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password of the Amazon Redshift source.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "database": { + "type": "object", + "description": "The database name of the Amazon Redshift source. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the Amazon Redshift server uses to listen for client connections. The default value is 5439. Type: integer (or Expression with resultType integer)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "database" + ] + }, + "CustomDataSourceLinkedService": { + "x-ms-discriminator-value": "CustomDataSource", + "description": "Custom linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Custom linked service properties.", + "x-ms-client-flatten": true, + "type": "object" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchLinkedService": { + "x-ms-discriminator-value": "AzureSearch", + "description": "Linked service for Windows Azure Search Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Windows Azure Search Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSearchLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchLinkedServiceTypeProperties": { + "description": "Windows Azure Search Service linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "URL for Azure Search service. Type: string (or Expression with resultType string)." + }, + "key": { + "description": "Admin Key for Azure Search service", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "HttpLinkedService": { + "x-ms-discriminator-value": "HttpServer", + "description": "Linked service for an HTTP source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HttpLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HttpLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "url": { + "type": "object", + "description": "The base URL of the HTTP endpoint, e.g. http://www.microsoft.com. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the HTTP server.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "Digest", + "Windows", + "ClientCertificate" + ], + "x-ms-enum": { + "name": "HttpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "User name for Basic, Digest, or Windows authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic, Digest, Windows, or ClientCertificate with EmbeddedCertData authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "embeddedCertData": { + "type": "object", + "description": "Base64 encoded certificate data for ClientCertificate authentication. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. Type: string (or Expression with resultType string)." + }, + "certThumbprint": { + "type": "object", + "description": "Thumbprint of certificate for ClientCertificate authentication. Only valid for on-premises copy. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "If true, validate the HTTPS server SSL certificate. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "url" + ] + }, + "FtpServerLinkedService": { + "x-ms-discriminator-value": "FtpServer", + "description": "A FTP server Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FtpServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FtpServerLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the FTP server. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the FTP server uses to listen for client connections. Default value is 21. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the FTP server.", + "type": "string", + "enum": [ + "Basic", + "Anonymous" + ], + "x-ms-enum": { + "name": "FtpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "Username to logon the FTP server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the FTP server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "enableSsl": { + "type": "object", + "description": "If true, connect to the FTP server over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "If true, validate the FTP server SSL certificate when connect over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "host" + ] + }, + "SftpServerLinkedService": { + "x-ms-discriminator-value": "Sftp", + "description": "A linked service for an SSH File Transfer Protocol (SFTP) server. ", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SftpServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SftpServerLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "host": { + "type": "object", + "description": "The SFTP server host name. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the SFTP server uses to listen for client connections. Default value is 22. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the FTP server.", + "type": "string", + "enum": [ + "Basic", + "SshPublicKey" + ], + "x-ms-enum": { + "name": "SftpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "The username used to log on to the SFTP server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the SFTP server for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "privateKeyPath": { + "type": "object", + "description": "The SSH private key file path for SshPublicKey authentication. Only valid for on-premises copy. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format. Type: string (or Expression with resultType string)." + }, + "privateKeyContent": { + "description": "Base64 encoded SSH private key content for SshPublicKey authentication. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "passPhrase": { + "description": "The password to decrypt the SSH private key if the SSH private key is encrypted.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "skipHostKeyValidation": { + "type": "object", + "description": "If true, skip the SSH host key validation. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "hostKeyFingerprint": { + "type": "object", + "description": "The host key finger-print of the SFTP server. When SkipHostKeyValidation is false, HostKeyFingerprint should be specified. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "host" + ] + }, + "SapBWLinkedService": { + "x-ms-discriminator-value": "SapBW", + "description": "SAP Business Warehouse Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapBWLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapBWLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP BW instance. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the BW system. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the BW system. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP BW server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP BW server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server", + "systemNumber", + "clientId" + ] + }, + "SapHanaLinkedService": { + "x-ms-discriminator-value": "SapHana", + "description": "SAP HANA Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapHanaLinkedServiceProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapHanaLinkedServiceProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "connectionString": { + "type": "object", + "description": "SAP HANA ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "server": { + "type": "object", + "description": "Host name of the SAP HANA server. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the SAP HANA server.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "SapHanaAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "Username to access the SAP HANA server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP HANA server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "server" + ] + }, + "AmazonMWSLinkedService": { + "x-ms-discriminator-value": "AmazonMWS", + "description": "Amazon Marketplace Web Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Marketplace Web Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonMWSLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonMWSLinkedServiceTypeProperties": { + "description": "Amazon Marketplace Web Service linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Amazon MWS server, (i.e. mws.amazonservices.com)", + "type": "object" + }, + "marketplaceID": { + "description": "The Amazon Marketplace ID you want to retrieve data from. To retrieve data from multiple Marketplace IDs, separate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", + "type": "object" + }, + "sellerID": { + "description": "The Amazon seller ID.", + "type": "object" + }, + "mwsAuthToken": { + "description": "The Amazon MWS authentication token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessKeyId": { + "description": "The access key id used to access data.", + "type": "object" + }, + "secretKey": { + "description": "The secret key used to access data.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "marketplaceID", + "sellerID", + "accessKeyId" + ] + }, + "AzurePostgreSqlLinkedService": { + "x-ms-discriminator-value": "AzurePostgreSql", + "description": "Azure PostgreSQL linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure PostgreSQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzurePostgreSqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzurePostgreSqlLinkedServiceTypeProperties": { + "description": "Azure PostgreSQL linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "ConcurLinkedService": { + "x-ms-discriminator-value": "Concur", + "description": "Concur Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Concur Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConcurLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ConcurLinkedServiceTypeProperties": { + "description": "Concur Service linked service properties.", + "properties": { + "clientId": { + "description": "Application client_id supplied by Concur App Management.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Concur Service.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username field.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId", + "username" + ] + }, + "CouchbaseLinkedService": { + "x-ms-discriminator-value": "Couchbase", + "description": "Couchbase server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Couchbase server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CouchbaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CouchbaseLinkedServiceTypeProperties": { + "description": "Couchbase server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "credString": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of credString in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "DrillLinkedService": { + "x-ms-discriminator-value": "Drill", + "description": "Drill server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Drill server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DrillLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DrillLinkedServiceTypeProperties": { + "description": "Drill server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "EloquaLinkedService": { + "x-ms-discriminator-value": "Eloqua", + "description": "Eloqua server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Eloqua server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EloquaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EloquaLinkedServiceTypeProperties": { + "description": "Eloqua server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Eloqua server. (i.e. eloqua.example.com)", + "type": "object" + }, + "username": { + "description": "The site name and user name of your Eloqua account in the form: sitename/username. (i.e. Eloqua/Alice)", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "username" + ] + }, + "GoogleBigQueryLinkedService": { + "x-ms-discriminator-value": "GoogleBigQuery", + "description": "Google BigQuery service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google BigQuery service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleBigQueryLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleBigQueryLinkedServiceTypeProperties": { + "description": "Google BigQuery service linked service properties.", + "properties": { + "project": { + "description": "The default BigQuery project to query against.", + "type": "object" + }, + "additionalProjects": { + "description": "A comma-separated list of public BigQuery projects to access.", + "type": "object" + }, + "requestGoogleDriveScope": { + "description": "Whether to request access to Google Drive. Allowing Google Drive access enables support for federated tables that combine BigQuery data with data from Google Drive. The default value is false.", + "type": "object" + }, + "authenticationType": { + "description": "The OAuth 2.0 authentication mechanism used for authentication. ServiceAuthentication can only be used on self-hosted IR.", + "type": "string", + "enum": [ + "ServiceAuthentication", + "UserAuthentication" + ], + "x-ms-enum": { + "name": "GoogleBigQueryAuthenticationType", + "modelAsString": true + } + }, + "refreshToken": { + "description": "The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of the google application used to acquire the refresh token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "email": { + "description": "The service account email ID that is used for ServiceAuthentication and can only be used on self-hosted IR.", + "type": "object" + }, + "keyFilePath": { + "description": "The full path to the .p12 key file that is used to authenticate the service account email address and can only be used on self-hosted IR.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "project", + "authenticationType" + ] + }, + "GreenplumLinkedService": { + "x-ms-discriminator-value": "Greenplum", + "description": "Greenplum Database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Greenplum Database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GreenplumLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GreenplumLinkedServiceTypeProperties": { + "description": "Greenplum Database linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "HBaseLinkedService": { + "x-ms-discriminator-value": "HBase", + "description": "HBase server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HBase server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HBaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HBaseLinkedServiceTypeProperties": { + "description": "HBase server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the HBase server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the HBase instance uses to listen for client connections. The default value is 9090.", + "type": "object" + }, + "httpPath": { + "description": "The partial URL corresponding to the HBase server. (i.e. /gateway/sandbox/hbase/version)", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism to use to connect to the HBase server.", + "type": "string", + "enum": [ + "Anonymous", + "Basic" + ], + "x-ms-enum": { + "name": "HBaseAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the HBase instance.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "HiveLinkedService": { + "x-ms-discriminator-value": "Hive", + "description": "Hive Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Hive Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HiveLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HiveLinkedServiceTypeProperties": { + "description": "Hive Server linked service properties.", + "properties": { + "host": { + "description": "IP address or host name of the Hive server, separated by ';' for multiple hosts (only when serviceDiscoveryMode is enable).", + "type": "object" + }, + "port": { + "description": "The TCP port that the Hive server uses to listen for client connections.", + "type": "object" + }, + "serverType": { + "description": "The type of Hive server.", + "type": "string", + "enum": [ + "HiveServer1", + "HiveServer2", + "HiveThriftServer" + ], + "x-ms-enum": { + "name": "HiveServerType", + "modelAsString": true + } + }, + "thriftTransportProtocol": { + "description": "The transport protocol to use in the Thrift layer.", + "type": "string", + "enum": [ + "Binary", + "SASL", + "HTTP " + ], + "x-ms-enum": { + "name": "HiveThriftTransportProtocol", + "modelAsString": true + } + }, + "authenticationType": { + "description": "The authentication method used to access the Hive server.", + "type": "string", + "enum": [ + "Anonymous", + "Username", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "HiveAuthenticationType", + "modelAsString": true + } + }, + "serviceDiscoveryMode": { + "description": "true to indicate using the ZooKeeper service, false not.", + "type": "object" + }, + "zooKeeperNameSpace": { + "description": "The namespace on ZooKeeper under which Hive Server 2 nodes are added.", + "type": "object" + }, + "useNativeQuery": { + "description": "Specifies whether the driver uses native HiveQL queries,or converts them into an equivalent form in HiveQL.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Hive Server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the Username field", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "httpPath": { + "description": "The partial URL corresponding to the Hive server.", + "type": "object" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "HubspotLinkedService": { + "x-ms-discriminator-value": "Hubspot", + "description": "Hubspot Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Hubspot Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubspotLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HubspotLinkedServiceTypeProperties": { + "description": "Hubspot Service linked service properties.", + "properties": { + "clientId": { + "description": "The client ID associated with your Hubspot application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your Hubspot application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessToken": { + "description": "The access token obtained when initially authenticating your OAuth integration.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "refreshToken": { + "description": "The refresh token obtained when initially authenticating your OAuth integration.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId" + ] + }, + "ImpalaLinkedService": { + "x-ms-discriminator-value": "Impala", + "description": "Impala server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Impala server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImpalaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ImpalaLinkedServiceTypeProperties": { + "description": "Impala server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Impala server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Impala server uses to listen for client connections. The default value is 21050.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication type to use.", + "type": "string", + "enum": [ + "Anonymous", + "SASLUsername", + "UsernameAndPassword" + ], + "x-ms-enum": { + "name": "ImpalaAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to access the Impala server. The default value is anonymous when using SASLUsername.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name when using UsernameAndPassword.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "JiraLinkedService": { + "x-ms-discriminator-value": "Jira", + "description": "Jira Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Jira Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/JiraLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "JiraLinkedServiceTypeProperties": { + "description": "Jira Service linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Jira service. (e.g. jira.example.com)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Jira server uses to listen for client connections. The default value is 443 if connecting through HTTPS, or 8080 if connecting through HTTP.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Jira Service.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username field.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "username" + ] + }, + "MagentoLinkedService": { + "x-ms-discriminator-value": "Magento", + "description": "Magento server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Magento server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MagentoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MagentoLinkedServiceTypeProperties": { + "description": "Magento server linked service properties.", + "properties": { + "host": { + "description": "The URL of the Magento instance. (i.e. 192.168.222.110/magento3)", + "type": "object" + }, + "accessToken": { + "description": "The access token from Magento.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "MariaDBLinkedService": { + "x-ms-discriminator-value": "MariaDB", + "description": "MariaDB server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MariaDB server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MariaDBLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MariaDBLinkedServiceTypeProperties": { + "description": "MariaDB server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "AzureMariaDBLinkedService": { + "x-ms-discriminator-value": "AzureMariaDB", + "description": "Azure Database for MariaDB linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Database for MariaDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMariaDBLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMariaDBLinkedServiceTypeProperties": { + "description": "Azure Database for MariaDB linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "MarketoLinkedService": { + "x-ms-discriminator-value": "Marketo", + "description": "Marketo server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Marketo server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MarketoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MarketoLinkedServiceTypeProperties": { + "description": "Marketo server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Marketo server. (i.e. 123-ABC-321.mktorest.com)", + "type": "object" + }, + "clientId": { + "description": "The client Id of your Marketo service.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of your Marketo service.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "clientId" + ] + }, + "PaypalLinkedService": { + "x-ms-discriminator-value": "Paypal", + "description": "Paypal Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Paypal Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PaypalLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PaypalLinkedServiceTypeProperties": { + "description": "Paypal Service linked service properties.", + "properties": { + "host": { + "description": "The URL of the PayPal instance. (i.e. api.sandbox.paypal.com)", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with your PayPal application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your PayPal application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "clientId" + ] + }, + "PhoenixLinkedService": { + "x-ms-discriminator-value": "Phoenix", + "description": "Phoenix server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Phoenix server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PhoenixLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PhoenixLinkedServiceTypeProperties": { + "description": "Phoenix server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Phoenix server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Phoenix server uses to listen for client connections. The default value is 8765.", + "type": "object" + }, + "httpPath": { + "description": "The partial URL corresponding to the Phoenix server. (i.e. /gateway/sandbox/phoenix/version). The default value is hbasephoenix if using WindowsAzureHDInsightService.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism used to connect to the Phoenix server.", + "type": "string", + "enum": [ + "Anonymous", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "PhoenixAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the Phoenix server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "PrestoLinkedService": { + "x-ms-discriminator-value": "Presto", + "description": "Presto server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Presto server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrestoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PrestoLinkedServiceTypeProperties": { + "description": "Presto server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Presto server. (i.e. 192.168.222.160)", + "type": "object" + }, + "serverVersion": { + "description": "The version of the Presto server. (i.e. 0.148-t)", + "type": "object" + }, + "catalog": { + "description": "The catalog context for all request against the server.", + "type": "object" + }, + "port": { + "description": "The TCP port that the Presto server uses to listen for client connections. The default value is 8080.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism used to connect to the Presto server.", + "type": "string", + "enum": [ + "Anonymous", + "LDAP" + ], + "x-ms-enum": { + "name": "PrestoAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the Presto server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "timeZoneID": { + "description": "The local time zone used by the connection. Valid values for this option are specified in the IANA Time Zone Database. The default value is the system time zone.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "serverVersion", + "catalog", + "authenticationType" + ] + }, + "QuickBooksLinkedService": { + "x-ms-discriminator-value": "QuickBooks", + "description": "QuickBooks server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "QuickBooks server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuickBooksLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "QuickBooksLinkedServiceTypeProperties": { + "description": "QuickBooks server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the QuickBooks server. (i.e. quickbooks.api.intuit.com)", + "type": "object" + }, + "companyId": { + "description": "The company ID of the QuickBooks company to authorize.", + "type": "object" + }, + "consumerKey": { + "description": "The consumer key for OAuth 1.0 authentication.", + "type": "object" + }, + "consumerSecret": { + "description": "The consumer secret for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessToken": { + "description": "The access token for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessTokenSecret": { + "description": "The access token secret for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "companyId", + "consumerKey", + "consumerSecret", + "accessToken", + "accessTokenSecret" + ] + }, + "ServiceNowLinkedService": { + "x-ms-discriminator-value": "ServiceNow", + "description": "ServiceNow server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "ServiceNow server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceNowLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ServiceNowLinkedServiceTypeProperties": { + "description": "ServiceNow server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the ServiceNow server. (i.e. .service-now.com)", + "type": "object" + }, + "authenticationType": { + "description": "The authentication type to use.", + "type": "string", + "enum": [ + "Basic", + "OAuth2" + ], + "x-ms-enum": { + "name": "ServiceNowAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the ServiceNow server for Basic and OAuth2 authentication.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name for Basic and OAuth2 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id for OAuth2 authentication.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret for OAuth2 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "authenticationType" + ] + }, + "ShopifyLinkedService": { + "x-ms-discriminator-value": "Shopify", + "description": "Shopify Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Shopify Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ShopifyLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ShopifyLinkedServiceTypeProperties": { + "description": "Shopify Service linked service properties.", + "properties": { + "host": { + "description": "The endpoint of the Shopify server. (i.e. mystore.myshopify.com)", + "type": "object" + }, + "accessToken": { + "description": "The API access token that can be used to access Shopify’s data. The token won't expire if it is offline mode.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "SparkLinkedService": { + "x-ms-discriminator-value": "Spark", + "description": "Spark Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Spark Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SparkLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SparkLinkedServiceTypeProperties": { + "description": "Spark Server linked service properties.", + "properties": { + "host": { + "description": "IP address or host name of the Spark server", + "type": "object" + }, + "port": { + "description": "The TCP port that the Spark server uses to listen for client connections.", + "type": "object" + }, + "serverType": { + "description": "The type of Spark server.", + "type": "string", + "enum": [ + "SharkServer", + "SharkServer2", + "SparkThriftServer" + ], + "x-ms-enum": { + "name": "SparkServerType", + "modelAsString": true + } + }, + "thriftTransportProtocol": { + "description": "The transport protocol to use in the Thrift layer.", + "type": "string", + "enum": [ + "Binary", + "SASL", + "HTTP " + ], + "x-ms-enum": { + "name": "SparkThriftTransportProtocol", + "modelAsString": true + } + }, + "authenticationType": { + "description": "The authentication method used to access the Spark server.", + "type": "string", + "enum": [ + "Anonymous", + "Username", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "SparkAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name that you use to access Spark Server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the Username field", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "httpPath": { + "description": "The partial URL corresponding to the Spark server.", + "type": "object" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "port", + "authenticationType" + ] + }, + "SquareLinkedService": { + "x-ms-discriminator-value": "Square", + "description": "Square Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Square Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SquareLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SquareLinkedServiceTypeProperties": { + "description": "Square Service linked service properties.", + "properties": { + "host": { + "description": "The URL of the Square instance. (i.e. mystore.mysquare.com)", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with your Square application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your Square application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "redirectUri": { + "description": "The redirect URL assigned in the Square application dashboard. (i.e. http://localhost:2500)", + "type": "object" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "clientId", + "redirectUri" + ] + }, + "XeroLinkedService": { + "x-ms-discriminator-value": "Xero", + "description": "Xero Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Xero Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/XeroLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "XeroLinkedServiceTypeProperties": { + "description": "Xero Service linked service properties.", + "properties": { + "host": { + "description": "The endpoint of the Xero server. (i.e. api.xero.com)", + "type": "object" + }, + "consumerKey": { + "description": "The consumer key associated with the Xero application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "privateKey": { + "description": "The private key from the .pem file that was generated for your Xero private application. You must include all the text from the .pem file, including the Unix line endings(\n).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "ZohoLinkedService": { + "x-ms-discriminator-value": "Zoho", + "description": "Zoho server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Zoho server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ZohoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ZohoLinkedServiceTypeProperties": { + "description": "Zoho server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Zoho server. (i.e. crm.zoho.com/crm/private)", + "type": "object" + }, + "accessToken": { + "description": "The access token for Zoho authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint" + ] + }, + "VerticaLinkedService": { + "x-ms-discriminator-value": "Vertica", + "description": "Vertica linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Vertica linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/VerticaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "VerticaLinkedServiceTypeProperties": { + "description": "Vertica linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "NetezzaLinkedService": { + "x-ms-discriminator-value": "Netezza", + "description": "Netezza linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Netezza linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetezzaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "NetezzaLinkedServiceTypeProperties": { + "description": "Netezza linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "SalesforceMarketingCloudLinkedService": { + "x-ms-discriminator-value": "SalesforceMarketingCloud", + "description": "Salesforce Marketing Cloud linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Marketing Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceMarketingCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceMarketingCloudLinkedServiceTypeProperties": { + "description": "Salesforce Marketing Cloud linked service properties.", + "properties": { + "clientId": { + "description": "The client ID associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId" + ] + }, + "HDInsightOnDemandLinkedService": { + "x-ms-discriminator-value": "HDInsightOnDemand", + "description": "HDInsight ondemand linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDInsight ondemand linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HDInsightOnDemandLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightOnDemandLinkedServiceTypeProperties": { + "description": "HDInsight ondemand linked service properties.", + "properties": { + "clusterSize": { + "type": "object", + "description": "Number of worker/data nodes in the cluster. Suggestion value: 4. Type: string (or Expression with resultType string)." + }, + "timeToLive": { + "type": "object", + "description": "The allowed idle time for the on-demand HDInsight cluster. Specifies how long the on-demand HDInsight cluster stays alive after completion of an activity run if there are no other active jobs in the cluster. The minimum value is 5 mins. Type: string (or Expression with resultType string)." + }, + "version": { + "type": "object", + "description": "Version of the HDInsight cluster.  Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "Azure Storage linked service to be used by the on-demand cluster for storing and processing data.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "hostSubscriptionId": { + "type": "object", + "description": "The customer’s subscription to host the cluster. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The service principal id for the hostSubscriptionId. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The key for the service principal id.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The Tenant id/name to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "clusterResourceGroup": { + "type": "object", + "description": "The resource group where the cluster belongs. Type: string (or Expression with resultType string)." + }, + "clusterNamePrefix": { + "type": "object", + "description": "The prefix of cluster name, postfix will be distinct with timestamp. Type: string (or Expression with resultType string)." + }, + "clusterUserName": { + "type": "object", + "description": "The username to access the cluster. Type: string (or Expression with resultType string)." + }, + "clusterPassword": { + "description": "The password to access the cluster.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clusterSshUserName": { + "type": "object", + "description": "The username to SSH remotely connect to cluster’s node (for Linux). Type: string (or Expression with resultType string)." + }, + "clusterSshPassword": { + "description": "The password to SSH remotely connect cluster’s node (for Linux).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "additionalLinkedServiceNames": { + "description": "Specifies additional storage accounts for the HDInsight linked service so that the Data Factory service can register them on your behalf.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "hcatalogLinkedServiceName": { + "description": "The name of Azure SQL linked service that point to the HCatalog database. The on-demand HDInsight cluster is created by using the Azure SQL database as the metastore.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "clusterType": { + "type": "object", + "description": "The cluster type. Type: string (or Expression with resultType string)." + }, + "sparkVersion": { + "type": "object", + "description": "The version of spark if the cluster type is 'spark'. Type: string (or Expression with resultType string)." + }, + "coreConfiguration": { + "description": "Specifies the core configuration parameters (as in core-site.xml) for the HDInsight cluster to be created.", + "type": "object" + }, + "hBaseConfiguration": { + "description": "Specifies the HBase configuration parameters (hbase-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "hdfsConfiguration": { + "description": "Specifies the HDFS configuration parameters (hdfs-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "hiveConfiguration": { + "description": "Specifies the hive configuration parameters (hive-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "mapReduceConfiguration": { + "description": "Specifies the MapReduce configuration parameters (mapred-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "oozieConfiguration": { + "description": "Specifies the Oozie configuration parameters (oozie-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "stormConfiguration": { + "description": "Specifies the Storm configuration parameters (storm-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "yarnConfiguration": { + "description": "Specifies the Yarn configuration parameters (yarn-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + }, + "headNodeSize": { + "type": "object", + "description": "Specifies the size of the head node for the HDInsight cluster." + }, + "dataNodeSize": { + "type": "object", + "description": "Specifies the size of the data node for the HDInsight cluster." + }, + "zookeeperNodeSize": { + "type": "object", + "description": "Specifies the size of the Zoo Keeper node for the HDInsight cluster." + }, + "scriptActions": { + "description": "Custom script actions to run on HDI ondemand cluster once it's up. Please refer to https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-hadoop-customize-cluster-linux?toc=%2Fen-us%2Fazure%2Fhdinsight%2Fr-server%2FTOC.json&bc=%2Fen-us%2Fazure%2Fbread%2Ftoc.json#understanding-script-actions.", + "type": "array", + "items": { + "$ref": "#/definitions/ScriptAction" + } + }, + "virtualNetworkId": { + "type": "object", + "description": "The ARM resource ID for the vNet to which the cluster should be joined after creation. Type: string (or Expression with resultType string)." + }, + "subnetName": { + "type": "object", + "description": "The ARM resource ID for the subnet in the vNet. If virtualNetworkId was specified, then this property is required. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "clusterSize", + "timeToLive", + "version", + "linkedServiceName", + "hostSubscriptionId", + "tenant", + "clusterResourceGroup" + ] + }, + "ScriptAction": { + "description": "Custom script action to run on HDI ondemand cluster once it's up.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The user provided name of the script action." + }, + "uri": { + "type": "string", + "description": "The URI for the script action." + }, + "roles": { + "x-ms-enum": { + "name": "HdiNodeTypes", + "modelAsString": true + }, + "enum": [ + "Headnode", + "Workernode", + "Zookeeper" + ], + "type": "string", + "description": "The node types on which the script action should be executed." + }, + "parameters": { + "type": "string", + "description": "The parameters for the script action." + } + }, + "required": [ + "name", + "uri", + "roles" + ] + }, + "AzureDataLakeAnalyticsLinkedService": { + "x-ms-discriminator-value": "AzureDataLakeAnalytics", + "description": "Azure Data Lake Analytics linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Analytics linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataLakeAnalyticsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataLakeAnalyticsLinkedServiceTypeProperties": { + "description": "Azure Data Lake Analytics linked service properties.", + "properties": { + "accountName": { + "type": "object", + "description": "The Azure Data Lake Analytics account name. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Analytics account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Analytics account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "subscriptionId": { + "type": "object", + "description": "Data Lake Analytics account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Data Lake Analytics account resource group name (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "dataLakeAnalyticsUri": { + "type": "object", + "description": "Azure Data Lake Analytics URI Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "accountName", + "tenant" + ] + }, + "AzureDatabricksLinkedService": { + "x-ms-discriminator-value": "AzureDatabricks", + "description": "Azure Databricks linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Databricks linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDatabricksLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDatabricksLinkedServiceTypeProperties": { + "description": "Azure Databricks linked service properties.", + "properties": { + "domain": { + "type": "object", + "description": ".azuredatabricks.net, domain name of your Databricks deployment. Type: string (or Expression with resultType string)." + }, + "accessToken": { + "description": "Access token for databricks REST API. Refer to https://docs.azuredatabricks.net/api/latest/authentication.html. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "existingClusterId": { + "type": "object", + "description": "The id of an existing interactive cluster that will be used for all runs of this activity. Type: string (or Expression with resultType string)." + }, + "instancePoolId": { + "type": "object", + "description": "The id of an existing instance pool that will be used for all runs of this activity. Type: string (or Expression with resultType string)." + }, + "newClusterVersion": { + "type": "object", + "description": "If not using an existing interactive cluster, this specifies the Spark version of a new job cluster or instance pool nodes created for each run of this activity. Required if instancePoolId is specified. Type: string (or Expression with resultType string)." + }, + "newClusterNumOfWorker": { + "type": "object", + "description": "If not using an existing interactive cluster, this specifies the number of worker nodes to use for the new job cluster or instance pool. For new job clusters, this a string-formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 (min) to 10 (max). For instance pools, this is a string-formatted Int32, and can only specify a fixed number of worker nodes, such as '2'. Required if newClusterVersion is specified. Type: string (or Expression with resultType string)." + }, + "newClusterNodeType": { + "type": "object", + "description": "The node type of the new job cluster. This property is required if newClusterVersion is specified and instancePoolId is not specified. If instancePoolId is specified, this property is ignored. Type: string (or Expression with resultType string)." + }, + "newClusterSparkConf": { + "description": "A set of optional, user-specified Spark configuration key-value pairs.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterSparkEnvVars": { + "description": "A set of optional, user-specified Spark environment variables key-value pairs.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterCustomTags": { + "description": "Additional tags for cluster resources. This property is ignored in instance pool configurations.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterDriverNodeType": { + "type": "object", + "description": "The driver node type for the new job cluster. This property is ignored in instance pool configurations. Type: string (or Expression with resultType string)." + }, + "newClusterInitScripts": { + "type": "object", + "description": "User-defined initialization scripts for the new cluster. Type: array of strings (or Expression with resultType array of strings)." + }, + "newClusterEnableElasticDisk": { + "type": "object", + "description": "Enable the elastic disk on the new cluster. This property is now ignored, and takes the default elastic disk behavior in Databricks (elastic disks are always enabled). Type: boolean (or Expression with resultType boolean)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "domain", + "accessToken" + ] + }, + "ResponsysLinkedService": { + "x-ms-discriminator-value": "Responsys", + "description": "Responsys linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Responsys linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResponsysLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ResponsysLinkedServiceTypeProperties": { + "description": "Responsys linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Responsys server.", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with the Responsys application. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with the Responsys application. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "clientId" + ] + }, + "DynamicsAXLinkedService": { + "x-ms-discriminator-value": "DynamicsAX", + "description": "Dynamics AX linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics AX linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsAXLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsAXLinkedServiceTypeProperties": { + "description": "Dynamics AX linked service properties.", + "properties": { + "url": { + "description": "The Dynamics AX (or Dynamics 365 Finance and Operations) instance OData endpoint.", + "type": "object" + }, + "servicePrincipalId": { + "description": "Specify the application's client ID. Type: string (or Expression with resultType string).", + "type": "object" + }, + "servicePrincipalKey": { + "description": "Specify the application's key. Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "description": "Specify the tenant information (domain name or tenant ID) under which your application resides. Retrieve it by hovering the mouse in the top-right corner of the Azure portal. Type: string (or Expression with resultType string).", + "type": "object" + }, + "aadResourceId": { + "description": "Specify the resource you are requesting authorization. Type: string (or Expression with resultType string).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "url", + "servicePrincipalId", + "servicePrincipalKey", + "tenant", + "aadResourceId" + ] + }, + "OracleServiceCloudLinkedService": { + "x-ms-discriminator-value": "OracleServiceCloud", + "description": "Oracle Service Cloud linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Oracle Service Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleServiceCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OracleServiceCloudLinkedServiceTypeProperties": { + "description": "Oracle Service Cloud linked service properties.", + "properties": { + "host": { + "description": "The URL of the Oracle Service Cloud instance.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Oracle Service Cloud server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "username", + "password" + ] + }, + "GoogleAdWordsLinkedService": { + "x-ms-discriminator-value": "GoogleAdWords", + "description": "Google AdWords service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google AdWords service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleAdWordsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleAdWordsLinkedServiceTypeProperties": { + "description": "Google AdWords service linked service properties.", + "properties": { + "clientCustomerID": { + "description": "The Client customer ID of the AdWords account that you want to fetch report data for.", + "type": "object" + }, + "developerToken": { + "description": "The developer token associated with the manager account that you use to grant access to the AdWords API.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "authenticationType": { + "description": "The OAuth 2.0 authentication mechanism used for authentication. ServiceAuthentication can only be used on self-hosted IR.", + "type": "string", + "enum": [ + "ServiceAuthentication", + "UserAuthentication" + ], + "x-ms-enum": { + "name": "GoogleAdWordsAuthenticationType", + "modelAsString": true + } + }, + "refreshToken": { + "description": "The refresh token obtained from Google for authorizing access to AdWords for UserAuthentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of the google application used to acquire the refresh token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "email": { + "description": "The service account email ID that is used for ServiceAuthentication and can only be used on self-hosted IR.", + "type": "object" + }, + "keyFilePath": { + "description": "The full path to the .p12 key file that is used to authenticate the service account email address and can only be used on self-hosted IR.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientCustomerID", + "developerToken", + "authenticationType" + ] + }, + "SapTableLinkedService": { + "x-ms-discriminator-value": "SapTable", + "description": "SAP Table Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapTableLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapTableLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP instance where the table is located. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the SAP system where the table is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the SAP system where the table is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "language": { + "type": "object", + "description": "Language of the SAP system where the table is located. The default value is EN. Type: string (or Expression with resultType string)." + }, + "systemId": { + "type": "object", + "description": "SystemID of the SAP system where the table is located. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP server where the table is located.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "messageServer": { + "type": "object", + "description": "The hostname of the SAP Message Server. Type: string (or Expression with resultType string)." + }, + "messageServerService": { + "type": "object", + "description": "The service name or port number of the Message Server. Type: string (or Expression with resultType string)." + }, + "sncMode": { + "type": "object", + "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)." + }, + "sncMyName": { + "type": "object", + "description": "Initiator's SNC name to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncPartnerName": { + "type": "object", + "description": "Communication partner's SNC name to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncLibraryPath": { + "type": "object", + "description": "External security product's library to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncQop": { + "type": "object", + "description": "SNC Quality of Protection. Allowed value include: 1, 2, 3, 8, 9. Type: string (or Expression with resultType string)." + }, + "logonGroup": { + "type": "object", + "description": "The Logon Group for the SAP System. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataExplorerLinkedService": { + "x-ms-discriminator-value": "AzureDataExplorer", + "description": "Azure Data Explorer (Kusto) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer (Kusto) linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerLinkedServiceTypeProperties": { + "description": "Azure Data Explorer (Kusto) linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of Azure Data Explorer (the engine's endpoint). URL will be in the format https://..kusto.windows.net. Type: string (or Expression with resultType string)", + "type": "object" + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure Data Explorer. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Kusto." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "endpoint", + "servicePrincipalId", + "servicePrincipalKey", + "database", + "tenant" + ] + }, + "AzureFunctionLinkedService": { + "x-ms-discriminator-value": "AzureFunction", + "description": "Azure Function linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Function linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFunctionLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFunctionLinkedServiceTypeProperties": { + "description": "Azure Function linked service properties.", + "properties": { + "functionAppUrl": { + "description": "The endpoint of the Azure Function App. URL will be in the format https://.azurewebsites.net.", + "type": "object" + }, + "functionKey": { + "description": "Function or Host key for Azure Function App.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "functionAppUrl" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json new file mode 100644 index 000000000000..1958284c390e --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json @@ -0,0 +1,251 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "NoteBook": { + "description": "Notebook.", + "type": "object", + "properties": { + "description": { + "description": "The description of the notebook.", + "type": "string" + }, + "bigDataPool": { + "description": "Big data pool reference.", + "$ref": "#/definitions/BigDataPoolReference" + }, + "sessionProperties": { + "description": "Session properties.", + "$ref": "#/definitions/NotebookSessionProperties" + }, + "metadata": { + "description": "Notebook root-level metadata.", + "$ref": "#/definitions/NotebookMetadata" + }, + "nbformat": { + "description": "Notebook format (major number). Incremented between backwards incompatible changes to the notebook format.", + "type": "integer" + }, + "nbformat_minor": { + "description": "Notebook format (minor number). Incremented for backward compatible changes to the notebook format.", + "type": "integer" + }, + "cells": { + "description": "Array of cells of the current notebook.", + "type": "array", + "items": { + "$ref": "#/definitions/NotebookCell" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "metadata", + "nbformat_minor", + "nbformat", + "cells" + ] + }, + "BigDataPoolReference": { + "description": "Big data pool reference.", + "properties": { + "type": { + "description": "Big data pool reference type.", + "type": "string", + "enum": [ + "BigDataPoolReference" + ], + "x-ms-enum": { + "name": "BigDataPoolReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "Reference big data pool name.", + "type": "string" + } + }, + "required": [ + "type", + "referenceName" + ] + }, + "NotebookMetadata": { + "description": "Notebook root-level metadata.", + "type": "object", + "properties": { + "kernelspec": { + "description": "Kernel information.", + "$ref": "#/definitions/NotebookKernelSpec" + }, + "language_info": { + "description": "Language info.", + "$ref": "#/definitions/NotebookLanguageInfo" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "NotebookKernelSpec": { + "description": "Kernel information.", + "type": "object", + "properties": { + "name": { + "description": "Name of the kernel specification.", + "type": "string" + }, + "display_name": { + "description": "Name to display in UI.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name", + "display_name" + ] + }, + "NotebookLanguageInfo": { + "description": "Language info.", + "type": "object", + "properties": { + "name": { + "description": "The programming language which this kernel runs.", + "type": "string" + }, + "codemirror_mode": { + "description": "The codemirror mode to use for code in this language.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name" + ] + }, + "NotebookCell": { + "description": "Notebook cell.", + "type": "object", + "properties": { + "cell_type": { + "description": "String identifying the type of cell.", + "type": "string" + }, + "metadata": { + "description": "Cell-level metadata.", + "type": "object" + }, + "source": { + "description": "Contents of the cell, represented as an array of lines.", + "type": "array", + "items": { + "type": "string" + } + }, + "attachments": { + "description": "Attachments associated with the cell.", + "type": "object" + }, + "outputs": { + "description": "Cell-level output items.", + "type": "array", + "items": { + "$ref": "#/definitions/NotebookCellOutputItem" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "cell_type", + "metadata", + "source" + ] + }, + "NotebookSessionProperties": { + "description": "Session properties.", + "properties": { + "driverMemory": { + "description": "Amount of memory to use for the driver process.", + "type": "string" + }, + "driverCores": { + "description": "Number of cores to use for the driver.", + "type": "integer" + }, + "executorMemory": { + "description": "Amount of memory to use per executor process.", + "type": "string" + }, + "executorCores": { + "description": "Number of cores to use for each executor.", + "type": "integer" + }, + "numExecutors": { + "description": "Number of executors to launch for this session.", + "type": "integer" + } + }, + "required": [ + "driverMemory", + "driverCores", + "executorMemory", + "executorCores", + "numExecutors" + ] + }, + "NotebookCellOutputItem": { + "description": "An item of the notebook cell execution output.", + "properties": { + "name": { + "description": "For output_type=stream, determines the name of stream (stdout / stderr).", + "type": "string" + }, + "execution_count": { + "description": "Execution sequence number.", + "type": "integer" + }, + "output_type": { + "description": "Execution, display, or stream outputs.", + "type": "string", + "enum": [ + "execute_result", + "display_data", + "stream", + "error" + ], + "x-ms-enum": { + "name": "CellOutputType", + "modelAsString": true + } + }, + "text": { + "description": "For output_type=stream, the stream's text output, represented as a string or an array of strings." + }, + "data": { + "description": "Output data. Use MIME type as key, and content as value.", + "type": "object" + }, + "metadata": { + "description": "Metadata for the output item.", + "type": "object" + } + }, + "required": [ + "output_type" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json new file mode 100644 index 000000000000..a2f4d1c618bb --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json @@ -0,0 +1,5836 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Pipeline": { + "description": "A workspace pipeline.", + "type": "object", + "properties": { + "description": { + "description": "The description of the pipeline.", + "type": "string" + }, + "activities": { + "type": "array", + "description": "List of activities in pipeline.", + "items": { + "$ref": "#/definitions/Activity" + } + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "List of parameters for pipeline." + }, + "variables": { + "$ref": "../datafactory.json#/definitions/VariableDefinitionSpecification", + "description": "List of variables for pipeline." + }, + "concurrency": { + "type": "integer", + "minimum": 1, + "description": "The max number of concurrent runs for the pipeline." + }, + "annotations": { + "description": "List of tags that can be used for describing the Pipeline.", + "type": "array", + "items": { + "type": "object" + } + }, + "runDimensions": { + "description": "Dimensions emitted by Pipeline.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "folder": { + "description": "The folder that this Pipeline is in. If not specified, Pipeline will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this Pipeline is in.", + "type": "string" + } + } + } + } + }, + "Activity": { + "discriminator": "type", + "description": "A pipeline activity.", + "type": "object", + "properties": { + "name": { + "description": "Activity name.", + "type": "string" + }, + "type": { + "type": "string", + "description": "Type of activity." + }, + "description": { + "description": "Activity description.", + "type": "string" + }, + "dependsOn": { + "type": "array", + "description": "Activity depends on condition.", + "items": { + "$ref": "#/definitions/ActivityDependency" + } + }, + "userProperties": { + "type": "array", + "description": "Activity user properties.", + "items": { + "$ref": "#/definitions/UserProperty" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name", + "type" + ] + }, + "UserProperty": { + "description": "User property.", + "type": "object", + "properties": { + "name": { + "description": "User property name.", + "type": "string" + }, + "value": { + "description": "User property value. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "name", + "value" + ] + }, + "ActivityDependency": { + "description": "Activity dependency information.", + "type": "object", + "properties": { + "activity": { + "description": "Activity name.", + "type": "string" + }, + "dependencyConditions": { + "type": "array", + "description": "Match-Condition for the dependency.", + "items": { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Skipped", + "Completed" + ], + "x-ms-enum": { + "name": "DependencyCondition", + "modelAsString": true + } + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "activity", + "dependencyConditions" + ] + }, + "ControlActivity": { + "x-ms-discriminator-value": "Container", + "description": "Base class for all control activities like IfCondition, ForEach , Until.", + "allOf": [ + { + "$ref": "#/definitions/Activity" + } + ], + "properties": {} + }, + "ExecutionActivity": { + "x-ms-discriminator-value": "Execution", + "description": "Base class for all execution activities.", + "allOf": [ + { + "$ref": "#/definitions/Activity" + } + ], + "properties": { + "linkedServiceName": { + "description": "Linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "policy": { + "$ref": "#/definitions/ActivityPolicy", + "description": "Activity policy." + } + } + }, + "ActivityPolicy": { + "description": "Execution policy for an activity.", + "type": "object", + "properties": { + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. The default timeout is 7 days. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "retry": { + "type": "object", + "description": "Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "retryIntervalInSeconds": { + "type": "integer", + "description": "Interval between each retry attempt (in seconds). The default is 30 sec.", + "minimum": 30, + "maximum": 86400 + }, + "secureInput": { + "type": "boolean", + "description": "When set to true, Input from activity is considered as secure and will not be logged to monitoring." + }, + "secureOutput": { + "type": "boolean", + "description": "When set to true, Output from activity is considered as secure and will not be logged to monitoring." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "StoreReadSettings": { + "description": "Connector read setting.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The read setting type." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageReadSettings": { + "description": "Azure blob read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure blob wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure blob wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Azure Blob name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobFSReadSettings": { + "description": "Azure blobFS read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure blobFS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure blobFS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreReadSettings": { + "description": "Azure data lake store read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "ADLS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "ADLS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonS3ReadSettings": { + "description": "Azure data lake store read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "AmazonS3 wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "AmazonS3 wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the S3 object name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "FileServerReadSettings": { + "description": "File server read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "FileServer wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "FileServer wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureFileStorageReadSettings": { + "description": "Azure File Storage read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure File Storage wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure File Storage wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "SftpWriteSettings": { + "description": "Sftp write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "operationTimeout": { + "description": "Specifies the timeout for writing each chunk to SFTP server. Default value: 01:00:00 (one hour). Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "GoogleCloudStorageReadSettings": { + "description": "Google Cloud Storage read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Google Cloud Storage wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Google Cloud Storage wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Google Cloud Storage object name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "FtpReadSettings": { + "description": "Ftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Ftp wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Ftp wildcardFileName. Type: string (or Expression with resultType string)." + }, + "useBinaryTransfer": { + "type": "boolean", + "description": "Specify whether to use binary transfer mode for FTP stores." + } + } + }, + "SftpReadSettings": { + "description": "Sftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Sftp wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Sftp wildcardFileName. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "HttpReadSettings": { + "description": "Sftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "requestTimeout": { + "type": "object", + "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server." + } + } + }, + "HdfsReadSettings": { + "description": "HDFS read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "HDFS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "HDFS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "distcpSettings": { + "description": "Specifies Distcp-related settings.", + "$ref": "#/definitions/DistcpSettings" + } + } + }, + "StoreWriteSettings": { + "description": "Connector write settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The write setting type." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + }, + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageWriteSettings": { + "description": "Azure blob write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "blockSizeInMB": { + "description": "Indicates the block size(MB) when writing data to blob. Type: integer (or Expression with resultType integer).", + "type": "object" + } + } + }, + "AzureBlobFSWriteSettings": { + "description": "Azure blobFS write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "blockSizeInMB": { + "description": "Indicates the block size(MB) when writing data to blob. Type: integer (or Expression with resultType integer).", + "type": "object" + } + } + }, + "AzureDataLakeStoreWriteSettings": { + "description": "Azure data lake store write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ] + }, + "FileServerWriteSettings": { + "description": "File server write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ] + }, + "FormatReadSettings": { + "description": "Format read settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The read setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "DelimitedTextReadSettings": { + "description": "Delimited text read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "skipLineCount": { + "type": "object", + "description": "Indicates the number of non-empty rows to skip when reading data from input files. Type: integer (or Expression with resultType integer)." + } + } + }, + "FormatWriteSettings": { + "description": "Format write settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The write setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AvroWriteSettings": { + "description": "Avro write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "recordName": { + "type": "string", + "description": "Top level record name in write result, which is required in AVRO spec." + }, + "recordNamespace": { + "type": "string", + "description": "Record namespace in the write result." + } + } + }, + "DelimitedTextWriteSettings": { + "description": "Delimited text write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "quoteAllText": { + "type": "object", + "description": "Indicates whether string values should always be enclosed with quotes. Type: boolean (or Expression with resultType boolean)." + }, + "fileExtension": { + "type": "object", + "description": "The file extension used to create the files. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "fileExtension" + ] + }, + "JsonWriteSettings": { + "description": "Json write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "filePattern": { + "description": "File pattern of JSON. This setting controls the way a collection of JSON objects will be treated. The default value is 'setOfObjects'. It is case-sensitive.", + "type": "string", + "enum": [ + "setOfObjects", + "arrayOfObjects" + ], + "x-ms-enum": { + "name": "JsonWriteFilePattern", + "modelAsString": true + } + } + } + }, + "AvroSource": { + "description": "A copy activity Avro source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Avro store settings." + } + } + }, + "ParquetSource": { + "description": "A copy activity Parquet source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Parquet store settings." + } + } + }, + "DelimitedTextSource": { + "description": "A copy activity DelimitedText source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "DelimitedText store settings." + }, + "formatSettings": { + "$ref": "#/definitions/DelimitedTextReadSettings", + "description": "DelimitedText format settings." + } + } + }, + "JsonSource": { + "description": "A copy activity Json source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Json store settings." + } + } + }, + "OrcSource": { + "description": "A copy activity ORC source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "ORC store settings." + } + } + }, + "DelimitedTextSink": { + "description": "A copy activity DelimitedText sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "DelimitedText store settings." + }, + "formatSettings": { + "$ref": "#/definitions/DelimitedTextWriteSettings", + "description": "DelimitedText format settings." + } + } + }, + "JsonSink": { + "description": "A copy activity Json sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Json store settings." + }, + "formatSettings": { + "$ref": "#/definitions/JsonWriteSettings", + "description": "Json format settings." + } + } + }, + "OrcSink": { + "description": "A copy activity ORC sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "ORC store settings." + } + } + }, + "CopyActivity": { + "x-ms-discriminator-value": "Copy", + "description": "Copy activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Copy activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CopyActivityTypeProperties" + }, + "inputs": { + "type": "array", + "description": "List of inputs for the activity.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "outputs": { + "type": "array", + "description": "List of outputs for the activity.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + }, + "required": [ + "typeProperties" + ] + }, + "CopyActivityTypeProperties": { + "description": "Copy activity properties.", + "properties": { + "source": { + "description": "Copy activity source.", + "$ref": "#/definitions/CopySource" + }, + "sink": { + "description": "Copy activity sink.", + "$ref": "#/definitions/CopySink" + }, + "translator": { + "description": "Copy activity translator. If not specified, tabular translator is used.", + "type": "object" + }, + "enableStaging": { + "type": "object", + "description": "Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "stagingSettings": { + "description": "Specifies interim staging settings when EnableStaging is true.", + "$ref": "#/definitions/StagingSettings" + }, + "parallelCopies": { + "type": "object", + "description": "Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "dataIntegrationUnits": { + "type": "object", + "description": "Maximum number of data integration units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "enableSkipIncompatibleRow": { + "type": "object", + "description": "Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "redirectIncompatibleRowSettings": { + "description": "Redirect incompatible row settings when EnableSkipIncompatibleRow is true.", + "$ref": "#/definitions/RedirectIncompatibleRowSettings" + }, + "preserveRules": { + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Preserve Rules." + }, + "preserve": { + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Preserve rules." + } + }, + "required": [ + "source", + "sink" + ] + }, + "CopySource": { + "discriminator": "type", + "description": "A copy activity source.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy source type." + }, + "sourceRetryCount": { + "type": "object", + "description": "Source retry count. Type: integer (or Expression with resultType integer)." + }, + "sourceRetryWait": { + "type": "object", + "description": "Source retry wait. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "BinarySource": { + "description": "A copy activity Binary source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Binary store settings." + } + } + }, + "TabularSource": { + "description": "Copy activity sources of tabular type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "AzureTableSource": { + "description": "A copy activity Azure Table source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "azureTableSourceQuery": { + "type": "object", + "description": "Azure Table source query. Type: string (or Expression with resultType string)." + }, + "azureTableSourceIgnoreTableNotFound": { + "type": "object", + "description": "Azure Table source ignore table not found. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "BlobSource": { + "description": "A copy activity Azure Blob source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty as null. Type: boolean (or Expression with resultType boolean)." + }, + "skipHeaderLineCount": { + "type": "object", + "description": "Number of header lines to skip from each blob. Type: integer (or Expression with resultType integer)." + }, + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "DocumentDbCollectionSource": { + "description": "A copy activity Document Database Collection source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Documents query. Type: string (or Expression with resultType string)." + }, + "nestingSeparator": { + "type": "object", + "description": "Nested properties separator. Type: string (or Expression with resultType string)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CosmosDbSqlApiSource": { + "description": "A copy activity Azure CosmosDB (SQL API) Collection source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SQL API query. Type: string (or Expression with resultType string)." + }, + "pageSize": { + "type": "object", + "description": "Page size of the result. Type: integer (or Expression with resultType integer)." + }, + "preferredRegions": { + "type": "object", + "description": "Preferred regions. Type: array of strings (or Expression with resultType array of strings)." + } + } + }, + "DynamicsSource": { + "description": "A copy activity Dynamics source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsCrmSource": { + "description": "A copy activity Dynamics CRM source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics CRM (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "CommonDataServiceForAppsSource": { + "description": "A copy activity Common Data Service for Apps source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Common Data Service for Apps (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "RelationalSource": { + "description": "A copy activity source for various relational databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "InformixSource": { + "description": "A copy activity source for Informix.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessSource": { + "description": "A copy activity source for Microsoft Access.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "Db2Source": { + "description": "A copy activity source for Db2 databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "OdbcSource": { + "description": "A copy activity source for ODBC databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "MySqlSource": { + "description": "A copy activity source for MySQL databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "PostgreSqlSource": { + "description": "A copy activity source for PostgreSQL databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "SybaseSource": { + "description": "A copy activity source for Sybase databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "SapBwSource": { + "description": "A copy activity source for SapBW server via MDX.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "MDX query. Type: string (or Expression with resultType string)." + } + } + }, + "ODataSource": { + "description": "A copy activity source for OData source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceSource": { + "description": "A copy activity Salesforce source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "readBehavior": { + "description": "The read behavior for the operation. Default is Query.", + "type": "string", + "enum": [ + "Query", + "QueryAll" + ], + "x-ms-enum": { + "name": "SalesforceSourceReadBehavior", + "modelAsString": true + } + } + } + }, + "SalesforceServiceCloudSource": { + "description": "A copy activity Salesforce Service Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "readBehavior": { + "description": "The read behavior for the operation. Default is Query.", + "type": "string", + "enum": [ + "Query", + "QueryAll" + ], + "x-ms-enum": { + "name": "SalesforceSourceReadBehavior", + "modelAsString": true + } + } + } + }, + "SapCloudForCustomerSource": { + "description": "A copy activity source for SAP Cloud for Customer source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP Cloud for Customer OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SapEccSource": { + "description": "A copy activity source for SAP ECC source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP ECC OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SapHanaSource": { + "description": "A copy activity source for SAP HANA source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP HANA Sql query. Type: string (or Expression with resultType string)." + }, + "packetSize": { + "type": "object", + "description": "The packet size of data read from SAP HANA. Type: integer(or Expression with resultType integer)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for SAP HANA read in parallel.", + "type": "string", + "enum": [ + "None", + "PhysicalPartitionsOfTable", + "SapHanaDynamicRange" + ], + "x-ms-enum": { + "name": "SapHanaPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for SAP HANA source partitioning.", + "$ref": "#/definitions/SapHanaPartitionSettings" + } + } + }, + "SapHanaPartitionSettings": { + "description": "The settings that will be leveraged for SAP HANA source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "SapOpenHubSource": { + "description": "A copy activity source for SAP Business Warehouse Open Hub Destination source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "excludeLastRequest": { + "type": "object", + "description": "Whether to exclude the records of the last request. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "baseRequestId": { + "type": "object", + "description": "The ID of request for delta loading. Once it is set, only data with requestId larger than the value of this property will be retrieved. The default value is 0. Type: integer (or Expression with resultType integer )." + } + } + }, + "SapTableSource": { + "description": "A copy activity source for SAP Table source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "rowCount": { + "type": "object", + "description": "The number of rows to be retrieved. Type: integer(or Expression with resultType integer)." + }, + "rowSkips": { + "type": "object", + "description": "The number of rows that will be skipped. Type: integer (or Expression with resultType integer)." + }, + "rfcTableFields": { + "type": "object", + "description": "The fields of the SAP table that will be retrieved. For example, column0, column1. Type: string (or Expression with resultType string)." + }, + "rfcTableOptions": { + "type": "object", + "description": "The options for the filtering of the SAP Table. For example, COLUMN0 EQ SOME VALUE. Type: string (or Expression with resultType string)." + }, + "batchSize": { + "type": "object", + "description": "Specifies the maximum number of rows that will be retrieved at a time when retrieving data from SAP Table. Type: integer (or Expression with resultType integer)." + }, + "customRfcReadTableFunctionModule": { + "type": "object", + "description": "Specifies the custom RFC function module that will be used to read data from SAP Table. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for SAP table read in parallel.", + "type": "string", + "enum": [ + "None", + "PartitionOnInt", + "PartitionOnCalendarYear", + "PartitionOnCalendarMonth", + "PartitionOnCalendarDate", + "PartitionOnTime" + ], + "x-ms-enum": { + "name": "SapTablePartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for SAP table source partitioning.", + "$ref": "#/definitions/SapTablePartitionSettings" + } + } + }, + "SapTablePartitionSettings": { + "description": "The settings that will be leveraged for SAP table source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "maxPartitionsNumber": { + "type": "object", + "description": "The maximum value of partitions the table will be split into. Type: integer (or Expression with resultType string)." + } + } + }, + "RestSource": { + "description": "A copy activity Rest service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "paginationRules": { + "type": "object", + "description": "The pagination rules to compose next page requests. Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:01:40. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "requestInterval": { + "type": "object", + "description": "The time to await before sending next page request. " + } + } + }, + "SqlSource": { + "description": "A copy activity SQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + } + } + }, + "SqlServerSource": { + "description": "A copy activity SQL server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "AzureSqlSource": { + "description": "A copy activity Azure SQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "SqlMISource": { + "description": "A copy activity Azure SQL Managed Instance source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a Azure SQL Managed Instance source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "SqlDWSource": { + "description": "A copy activity SQL Data Warehouse source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL Data Warehouse reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "type": "object", + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter." + } + } + }, + "FileSystemSource": { + "description": "A copy activity file system source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "HdfsSource": { + "description": "A copy activity HDFS source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "distcpSettings": { + "description": "Specifies Distcp-related settings.", + "$ref": "#/definitions/DistcpSettings" + } + } + }, + "DistcpSettings": { + "description": "Distcp settings.", + "type": "object", + "properties": { + "resourceManagerEndpoint": { + "type": "object", + "description": "Specifies the Yarn ResourceManager endpoint. Type: string (or Expression with resultType string)." + }, + "tempScriptPath": { + "type": "object", + "description": "Specifies an existing folder path which will be used to store temp Distcp command script. The script file is generated by ADF and will be removed after Copy job finished. Type: string (or Expression with resultType string)." + }, + "distcpOptions": { + "type": "object", + "description": "Specifies the Distcp options. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "resourceManagerEndpoint", + "tempScriptPath" + ] + }, + "AzureMySqlSource": { + "description": "A copy activity Azure MySQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataExplorerSource": { + "description": "A copy activity Azure Data Explorer (Kusto) source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a Kusto Query Language (KQL) query. Type: string (or Expression with resultType string)." + }, + "noTruncation": { + "type": "object", + "description": "The name of the Boolean option that controls whether truncation is applied to result-sets that go beyond a certain row-count limit." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9])).." + } + }, + "required": [ + "query" + ] + }, + "OracleSource": { + "description": "A copy activity Oracle source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "oracleReaderQuery": { + "type": "object", + "description": "Oracle reader query. Type: string (or Expression with resultType string)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Oracle read in parallel.", + "type": "string", + "enum": [ + "None", + "PhysicalPartitionsOfTable", + "DynamicRange" + ], + "x-ms-enum": { + "name": "OraclePartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Oracle source partitioning.", + "$ref": "#/definitions/OraclePartitionSettings" + } + } + }, + "OraclePartitionSettings": { + "description": "The settings that will be leveraged for Oracle source partitioning.", + "type": "object", + "properties": { + "partitionNames": { + "type": "object", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Names of the physical partitions of Oracle table. " + }, + "partitionColumnName": { + "type": "object", + "description": "The name of the column in integer type that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "TeradataSource": { + "description": "A copy activity Teradata source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Teradata query. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for teradata read in parallel.", + "type": "string", + "enum": [ + "None", + "Hash", + "DynamicRange" + ], + "x-ms-enum": { + "name": "TeradataPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for teradata source partitioning.", + "$ref": "#/definitions/TeradataPartitionSettings" + } + } + }, + "TeradataPartitionSettings": { + "description": "The settings that will be leveraged for teradata source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range or hash partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "WebSource": { + "description": "A copy activity source for web page table.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": {} + }, + "CassandraSource": { + "description": "A copy activity source for a Cassandra database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a SQL-92 query expression or Cassandra Query Language (CQL) command. Type: string (or Expression with resultType string)." + }, + "consistencyLevel": { + "description": "The consistency level specifies how many Cassandra servers must respond to a read request before returning data to the client application. Cassandra checks the specified number of Cassandra servers for data to satisfy the read request. Must be one of cassandraSourceReadConsistencyLevels. The default value is 'ONE'. It is case-insensitive.", + "type": "string", + "enum": [ + "ALL", + "EACH_QUORUM", + "QUORUM", + "LOCAL_QUORUM", + "ONE", + "TWO", + "THREE", + "LOCAL_ONE", + "SERIAL", + "LOCAL_SERIAL" + ], + "x-ms-enum": { + "name": "CassandraSourceReadConsistencyLevels", + "modelAsString": true + } + } + } + }, + "MongoDbSource": { + "description": "A copy activity source for a MongoDB database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a SQL-92 query expression. Type: string (or Expression with resultType string)." + } + } + }, + "MongoDbV2Source": { + "description": "A copy activity source for a MongoDB database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "filter": { + "type": "object", + "description": "Specifies selection filter using query operators. To return all documents in a collection, omit this parameter or pass an empty document ({}). Type: string (or Expression with resultType string)." + }, + "cursorMethods": { + "description": "Cursor methods for Mongodb query", + "$ref": "#/definitions/MongoDbCursorMethodsProperties" + }, + "batchSize": { + "type": "object", + "description": "Specifies the number of documents to return in each batch of the response from MongoDB instance. In most cases, modifying the batch size will not affect the user or the application. This property's main purpose is to avoid hit the limitation of response size. Type: integer (or Expression with resultType integer)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CosmosDbMongoDbApiSource": { + "description": "A copy activity source for a CosmosDB (MongoDB API) database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "filter": { + "type": "object", + "description": "Specifies selection filter using query operators. To return all documents in a collection, omit this parameter or pass an empty document ({}). Type: string (or Expression with resultType string)." + }, + "cursorMethods": { + "description": "Cursor methods for Mongodb query.", + "$ref": "#/definitions/MongoDbCursorMethodsProperties" + }, + "batchSize": { + "type": "object", + "description": "Specifies the number of documents to return in each batch of the response from MongoDB instance. In most cases, modifying the batch size will not affect the user or the application. This property's main purpose is to avoid hit the limitation of response size. Type: integer (or Expression with resultType integer)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "MongoDbCursorMethodsProperties": { + "description": "Cursor methods for Mongodb query", + "type": "object", + "properties": { + "project": { + "type": "object", + "description": "Specifies the fields to return in the documents that match the query filter. To return all fields in the matching documents, omit this parameter. Type: string (or Expression with resultType string)." + }, + "sort": { + "type": "object", + "description": "Specifies the order in which the query returns matching documents. Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + }, + "skip": { + "type": "object", + "description": "Specifies the how many documents skipped and where MongoDB begins returning results. This approach may be useful in implementing paginated results. Type: integer (or Expression with resultType integer)." + }, + "limit": { + "type": "object", + "description": "Specifies the maximum number of documents the server returns. limit() is analogous to the LIMIT statement in a SQL database. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "Office365Source": { + "description": "A copy activity source for an Office 365 service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "allowedGroups": { + "type": "object", + "description": "The groups containing all the users. Type: array of strings (or Expression with resultType array of strings)." + }, + "userScopeFilterUri": { + "type": "object", + "description": "The user scope uri. Type: string (or Expression with resultType string)." + }, + "dateFilterColumn": { + "type": "object", + "description": "The Column to apply the and . Type: string (or Expression with resultType string)." + }, + "startTime": { + "type": "object", + "description": "Start time of the requested range for this dataset. Type: string (or Expression with resultType string)." + }, + "endTime": { + "type": "object", + "description": "End time of the requested range for this dataset. Type: string (or Expression with resultType string)." + }, + "outputColumns": { + "type": "object", + "description": "The columns to be read out from the Office 365 table. Type: array of objects (or Expression with resultType array of objects). Example: [ { \"name\": \"Id\" }, { \"name\": \"CreatedDateTime\" } ]" + } + } + }, + "AzureDataLakeStoreSource": { + "description": "A copy activity Azure Data Lake source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "AzureBlobFSSource": { + "description": "A copy activity Azure BlobFS source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty as null. Type: boolean (or Expression with resultType boolean)." + }, + "skipHeaderLineCount": { + "type": "object", + "description": "Number of header lines to skip from each blob. Type: integer (or Expression with resultType integer)." + }, + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "HttpSource": { + "description": "A copy activity source for an HTTP file.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "httpRequestTimeout": { + "type": "object", + "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server. The default value is equivalent to System.Net.HttpWebRequest.Timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "AmazonMWSSource": { + "description": "A copy activity Amazon Marketplace Web Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzurePostgreSqlSource": { + "description": "A copy activity Azure PostgreSQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzurePostgreSqlSink": { + "description": "A copy activity Azure PostgreSQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMySqlSink": { + "description": "A copy activity Azure MySql sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "ConcurSource": { + "description": "A copy activity Concur Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "CouchbaseSource": { + "description": "A copy activity Couchbase server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "DrillSource": { + "description": "A copy activity Drill server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "EloquaSource": { + "description": "A copy activity Eloqua server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleBigQuerySource": { + "description": "A copy activity Google BigQuery service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GreenplumSource": { + "description": "A copy activity Greenplum Database source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HBaseSource": { + "description": "A copy activity HBase server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HiveSource": { + "description": "A copy activity Hive Server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HubspotSource": { + "description": "A copy activity Hubspot Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ImpalaSource": { + "description": "A copy activity Impala server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "JiraSource": { + "description": "A copy activity Jira Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MagentoSource": { + "description": "A copy activity Magento server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MariaDBSource": { + "description": "A copy activity MariaDB server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMariaDBSource": { + "description": "A copy activity Azure MariaDB source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MarketoSource": { + "description": "A copy activity Marketo server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PaypalSource": { + "description": "A copy activity Paypal Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PhoenixSource": { + "description": "A copy activity Phoenix server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PrestoSource": { + "description": "A copy activity Presto server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "QuickBooksSource": { + "description": "A copy activity QuickBooks server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ServiceNowSource": { + "description": "A copy activity ServiceNow server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ShopifySource": { + "description": "A copy activity Shopify Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SparkSource": { + "description": "A copy activity Spark Server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SquareSource": { + "description": "A copy activity Square Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "XeroSource": { + "description": "A copy activity Xero Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ZohoSource": { + "description": "A copy activity Zoho server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "NetezzaSource": { + "description": "A copy activity Netezza source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Netezza read in parallel.", + "type": "string", + "enum": [ + "None", + "DataSlice", + "DynamicRange" + ], + "x-ms-enum": { + "name": "NetezzaPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Netezza source partitioning.", + "$ref": "#/definitions/NetezzaPartitionSettings" + } + } + }, + "NetezzaPartitionSettings": { + "description": "The settings that will be leveraged for Netezza source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column in integer type that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "VerticaSource": { + "description": "A copy activity Vertica source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceMarketingCloudSource": { + "description": "A copy activity Salesforce Marketing Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ResponsysSource": { + "description": "A copy activity Responsys source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsAXSource": { + "description": "A copy activity Dynamics AX source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "OracleServiceCloudSource": { + "description": "A copy activity Oracle Service Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleAdWordsSource": { + "description": "A copy activity Google AdWords service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonRedshiftSource": { + "description": "A copy activity source for Amazon Redshift Source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "redshiftUnloadSettings": { + "description": "The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.", + "$ref": "#/definitions/RedshiftUnloadSettings" + } + } + }, + "RedshiftUnloadSettings": { + "description": "The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.", + "type": "object", + "properties": { + "s3LinkedServiceName": { + "description": "The name of the Amazon S3 linked service which will be used for the unload operation when copying from the Amazon Redshift source.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "bucketName": { + "type": "object", + "description": "The bucket of the interim Amazon S3 which will be used to store the unloaded data from Amazon Redshift source. The bucket must be in the same region as the Amazon Redshift source. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "s3LinkedServiceName", + "bucketName" + ] + }, + "StoredProcedureParameter": { + "description": "SQL stored procedure parameter.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "Stored procedure parameter value. Type: string (or Expression with resultType string)." + }, + "type": { + "description": "Stored procedure parameter type.", + "$ref": "#/definitions/StoredProcedureParameterType" + } + } + }, + "StoredProcedureParameterType": { + "description": "Stored procedure parameter type.", + "type": "string", + "enum": [ + "String", + "Int", + "Int64", + "Decimal", + "Guid", + "Boolean", + "Date" + ], + "x-ms-enum": { + "name": "StoredProcedureParameterType", + "modelAsString": true + } + }, + "CopySink": { + "discriminator": "type", + "description": "A copy activity sink.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy sink type." + }, + "writeBatchSize": { + "type": "object", + "description": "Write batch size. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "writeBatchTimeout": { + "type": "object", + "description": "Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "sinkRetryCount": { + "type": "object", + "description": "Sink retry count. Type: integer (or Expression with resultType integer)." + }, + "sinkRetryWait": { + "type": "object", + "description": "Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the sink data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SapCloudForCustomerSink": { + "description": "A copy activity SAP Cloud for Customer sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is 'Insert'.", + "type": "string", + "enum": [ + "Insert", + "Update" + ], + "x-ms-enum": { + "name": "SapCloudForCustomerSinkWriteBehavior", + "modelAsString": true + } + } + } + }, + "AzureQueueSink": { + "description": "A copy activity Azure Queue sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": {} + }, + "CopyBehaviorType": { + "description": "All available types of copy behavior.", + "type": "string", + "enum": [ + "PreserveHierarchy", + "FlattenHierarchy", + "MergeFiles" + ], + "x-ms-enum": { + "name": "CopyBehaviorType", + "modelAsString": true + } + }, + "AzureTableSink": { + "description": "A copy activity Azure Table sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "azureTableDefaultPartitionKeyValue": { + "type": "object", + "description": "Azure Table default partition key value. Type: string (or Expression with resultType string)." + }, + "azureTablePartitionKeyName": { + "type": "object", + "description": "Azure Table partition key name. Type: string (or Expression with resultType string)." + }, + "azureTableRowKeyName": { + "type": "object", + "description": "Azure Table row key name. Type: string (or Expression with resultType string)." + }, + "azureTableInsertType": { + "type": "object", + "description": "Azure Table insert type. Type: string (or Expression with resultType string)." + } + } + }, + "AvroSink": { + "description": "A copy activity Avro sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Avro store settings." + }, + "formatSettings": { + "$ref": "#/definitions/AvroWriteSettings", + "description": "Avro format settings." + } + } + }, + "ParquetSink": { + "description": "A copy activity Parquet sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Parquet store settings." + } + } + }, + "BinarySink": { + "description": "A copy activity Binary sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Binary store settings." + } + } + }, + "BlobSink": { + "description": "A copy activity Azure Blob sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "blobWriterOverwriteFiles": { + "type": "object", + "description": "Blob writer overwrite files. Type: boolean (or Expression with resultType boolean)." + }, + "blobWriterDateTimeFormat": { + "type": "object", + "description": "Blob writer date time format. Type: string (or Expression with resultType string)." + }, + "blobWriterAddHeader": { + "type": "object", + "description": "Blob writer add header. Type: boolean (or Expression with resultType boolean)." + }, + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "FileSystemSink": { + "description": "A copy activity file system sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "DocumentDbCollectionSink": { + "description": "A copy activity Document Database Collection sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "nestingSeparator": { + "type": "object", + "description": "Nested properties separator. Default is . (dot). Type: string (or Expression with resultType string)." + }, + "writeBehavior": { + "type": "object", + "description": "Describes how to write data to Azure Cosmos DB. Type: string (or Expression with resultType string). Allowed values: insert and upsert." + } + } + }, + "CosmosDbSqlApiSink": { + "description": "A copy activity Azure CosmosDB (SQL API) Collection sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Describes how to write data to Azure Cosmos DB. Type: string (or Expression with resultType string). Allowed values: insert and upsert." + } + } + }, + "SqlSink": { + "description": "A copy activity SQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlServerSink": { + "description": "A copy activity SQL server sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlSink": { + "description": "A copy activity Azure SQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlMISink": { + "description": "A copy activity Azure SQL Managed Instance sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlDWSink": { + "description": "A copy activity SQL Data Warehouse sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "allowPolyBase": { + "type": "object", + "description": "Indicates to use PolyBase to copy data into SQL Data Warehouse when applicable. Type: boolean (or Expression with resultType boolean)." + }, + "polyBaseSettings": { + "description": "Specifies PolyBase-related settings when allowPolyBase is true.", + "$ref": "#/definitions/PolybaseSettings" + }, + "allowCopyCommand": { + "type": "object", + "description": "Indicates to use Copy Command to copy data into SQL Data Warehouse. Type: boolean (or Expression with resultType boolean)." + }, + "copyCommandSettings": { + "description": "Specifies Copy Command related settings when allowCopyCommand is true.", + "$ref": "#/definitions/DWCopyCommandSettings" + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "PolybaseSettings": { + "description": "PolyBase settings.", + "type": "object", + "properties": { + "rejectType": { + "$ref": "#/definitions/PolybaseSettingsRejectType", + "description": "Reject type." + }, + "rejectValue": { + "type": "object", + "description": "Specifies the value or the percentage of rows that can be rejected before the query fails. Type: number (or Expression with resultType number), minimum: 0." + }, + "rejectSampleValue": { + "type": "object", + "description": "Determines the number of rows to attempt to retrieve before the PolyBase recalculates the percentage of rejected rows. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "useTypeDefault": { + "type": "object", + "description": "Specifies how to handle missing values in delimited text files when PolyBase retrieves data from the text file. Type: boolean (or Expression with resultType boolean)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "PolybaseSettingsRejectType": { + "description": "Indicates whether the RejectValue property is specified as a literal value or a percentage.", + "type": "string", + "enum": [ + "value", + "percentage" + ], + "x-ms-enum": { + "name": "PolybaseSettingsRejectType", + "modelAsString": true + } + }, + "DWCopyCommandSettings": { + "description": "DW Copy Command settings.", + "type": "object", + "properties": { + "defaultValues": { + "type": "array", + "description": "Specifies the default values for each target column in SQL DW. The default values in the property overwrite the DEFAULT constraint set in the DB, and identity column cannot have a default value. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/DWCopyCommandDefaultValue" + } + }, + "additionalOptions": { + "type": "object", + "description": "Additional options directly passed to SQL DW in Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalOptions\": { \"MAXERRORS\": \"1000\", \"DATEFORMAT\": \"'ymd'\" }", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DWCopyCommandDefaultValue": { + "description": "Default value.", + "type": "object", + "properties": { + "columnName": { + "type": "object", + "description": "Column name. Type: object (or Expression with resultType string)." + }, + "defaultValue": { + "type": "object", + "description": "The default value of the column. Type: object (or Expression with resultType string)." + } + } + }, + "LogStorageSettings": { + "description": "Log storage settings.", + "type": "object", + "properties": { + "linkedServiceName": { + "description": "Log storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "path": { + "type": "object", + "description": "The path to storage for storing detailed logs of activity execution. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "StagingSettings": { + "description": "Staging settings.", + "type": "object", + "properties": { + "linkedServiceName": { + "description": "Staging linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "path": { + "type": "object", + "description": "The path to storage for storing the interim data. Type: string (or Expression with resultType string)." + }, + "enableCompression": { + "type": "object", + "description": "Specifies whether to use compression when copying data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "RedirectIncompatibleRowSettings": { + "description": "Redirect incompatible row settings", + "type": "object", + "properties": { + "linkedServiceName": { + "type": "object", + "description": "Name of the Azure Storage, Storage SAS, or Azure Data Lake Store linked service used for redirecting incompatible row. Must be specified if redirectIncompatibleRowSettings is specified. Type: string (or Expression with resultType string)." + }, + "path": { + "type": "object", + "description": "The path for storing the redirect incompatible row data. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "OracleSink": { + "description": "A copy activity Oracle sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreSink": { + "description": "A copy activity Azure Data Lake Store sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + }, + "enableAdlsSingleFileParallel": { + "description": "Single File Parallel.", + "type": "object" + } + } + }, + "AzureBlobFSSink": { + "description": "A copy activity Azure Data Lake Storage Gen2 sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "AzureSearchIndexSink": { + "description": "A copy activity Azure Search Index sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "Specify the write behavior when upserting documents into Azure Search Index.", + "type": "string", + "enum": [ + "Merge", + "Upload" + ], + "x-ms-enum": { + "name": "AzureSearchIndexWriteBehaviorType", + "modelAsString": true + } + } + } + }, + "OdbcSink": { + "description": "A copy activity ODBC sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "InformixSink": { + "description": "A copy activity Informix sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessSink": { + "description": "A copy activity Microsoft Access sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsSink": { + "description": "A copy activity Dynamics sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "DynamicsCrmSink": { + "description": "A copy activity Dynamics CRM sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether to ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "CommonDataServiceForAppsSink": { + "description": "A copy activity Common Data Service for Apps sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether to ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "AzureDataExplorerSink": { + "description": "A copy activity Azure Data Explorer sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "ingestionMappingName": { + "type": "object", + "description": "A name of a pre-created csv mapping that was defined on the target Kusto table. Type: string." + }, + "ingestionMappingAsJson": { + "type": "object", + "description": "An explicit column mapping description provided in a json format. Type: string." + }, + "flushImmediately": { + "type": "object", + "description": "If set to true, any aggregation will be skipped. Default is false. Type: boolean." + } + } + }, + "SalesforceSink": { + "description": "A copy activity Salesforce sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is Insert.", + "type": "string", + "enum": [ + "Insert", + "Upsert" + ], + "x-ms-enum": { + "name": "SalesforceSinkWriteBehavior", + "modelAsString": true + } + }, + "externalIdFieldName": { + "type": "object", + "description": "The name of the external ID field for upsert operation. Default value is 'Id' column. Type: string (or Expression with resultType string)." + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether or not to ignore null values from input dataset (except key fields) during write operation. Default value is false. If set it to true, it means ADF will leave the data in the destination object unchanged when doing upsert/update operation and insert defined default value when doing insert operation, versus ADF will update the data in the destination object to NULL when doing upsert/update operation and insert NULL value when doing insert operation. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "SalesforceServiceCloudSink": { + "description": "A copy activity Salesforce Service Cloud sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is Insert.", + "type": "string", + "enum": [ + "Insert", + "Upsert" + ], + "x-ms-enum": { + "name": "SalesforceSinkWriteBehavior", + "modelAsString": true + } + }, + "externalIdFieldName": { + "type": "object", + "description": "The name of the external ID field for upsert operation. Default value is 'Id' column. Type: string (or Expression with resultType string)." + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether or not to ignore null values from input dataset (except key fields) during write operation. Default value is false. If set it to true, it means ADF will leave the data in the destination object unchanged when doing upsert/update operation and insert defined default value when doing insert operation, versus ADF will update the data in the destination object to NULL when doing upsert/update operation and insert NULL value when doing insert operation. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "CosmosDbMongoDbApiSink": { + "description": "A copy activity sink for a CosmosDB (MongoDB API) database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Specifies whether the document with same key to be overwritten (upsert) rather than throw exception (insert). The default value is \"insert\". Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + } + } + }, + "CopyTranslator": { + "discriminator": "type", + "description": "A copy activity translator.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy translator type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TabularTranslator": { + "description": "A copy activity tabular translator.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopyTranslator" + } + ], + "properties": { + "columnMappings": { + "type": "object", + "description": "Column mappings. Example: \"UserId: MyUserId, Group: MyGroup, Name: MyName\" Type: string (or Expression with resultType string). This property will be retired. Please use mappings property." + }, + "schemaMapping": { + "type": "object", + "description": "The schema mapping to map between tabular data and hierarchical data. Example: {\"Column1\": \"$.Column1\", \"Column2\": \"$.Column2.Property1\", \"Column3\": \"$.Column2.Property2\"}. Type: object (or Expression with resultType object). This property will be retired. Please use mappings property." + }, + "collectionReference": { + "type": "object", + "description": "The JSON Path of the Nested Array that is going to do cross-apply. Type: object (or Expression with resultType object)." + }, + "mapComplexValuesToString": { + "type": "object", + "description": "Whether to map complex (array and object) values to simple strings in json format. Type: boolean (or Expression with resultType boolean)." + }, + "mappings": { + "type": "object", + "description": "Column mappings with logical types. Tabular->tabular example: [{\"source\":{\"name\":\"CustomerName\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientName\",\"type\":\"String\"}},{\"source\":{\"name\":\"CustomerAddress\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientAddress\",\"type\":\"String\"}}]. Hierarchical->tabular example: [{\"source\":{\"path\":\"$.CustomerName\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientName\",\"type\":\"String\"}},{\"source\":{\"path\":\"$.CustomerAddress\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientAddress\",\"type\":\"String\"}}]. Type: object (or Expression with resultType object)." + } + } + }, + "HDInsightHiveActivity": { + "description": "HDInsight Hive activity type.", + "x-ms-discriminator-value": "HDInsightHive", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight Hive activity properties.", + "$ref": "#/definitions/HDInsightHiveActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightHiveActivityTypeProperties": { + "description": "HDInsight Hive activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "scriptPath": { + "type": "object", + "description": "Script path. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "defines": { + "description": "Allows user to specify defines for Hive job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "variables": { + "description": "User specified arguments under hivevar namespace.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "queryTimeout": { + "type": "integer", + "description": "Query timeout value (in minutes). Effective when the HDInsight cluster is with ESP (Enterprise Security Package)" + } + } + }, + "HDInsightActivityDebugInfoOption": { + "description": "The HDInsightActivityDebugInfoOption settings to use.", + "type": "string", + "enum": [ + "None", + "Always", + "Failure" + ], + "x-ms-enum": { + "name": "HDInsightActivityDebugInfoOption", + "modelAsString": true + } + }, + "HDInsightPigActivity": { + "description": "HDInsight Pig activity type.", + "x-ms-discriminator-value": "HDInsightPig", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight Pig activity properties.", + "$ref": "#/definitions/HDInsightPigActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightPigActivityTypeProperties": { + "description": "HDInsight Pig activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "type": "object", + "description": "User specified arguments to HDInsightActivity. Type: array (or Expression with resultType array)." + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "scriptPath": { + "type": "object", + "description": "Script path. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "defines": { + "description": "Allows user to specify defines for Pig job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + } + }, + "HDInsightMapReduceActivity": { + "description": "HDInsight MapReduce activity type.", + "x-ms-discriminator-value": "HDInsightMapReduce", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight MapReduce activity properties.", + "$ref": "#/definitions/HDInsightMapReduceActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightMapReduceActivityTypeProperties": { + "description": "HDInsight MapReduce activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "className": { + "type": "object", + "description": "Class name. Type: string (or Expression with resultType string)." + }, + "jarFilePath": { + "type": "object", + "description": "Jar path. Type: string (or Expression with resultType string)." + }, + "jarLinkedService": { + "description": "Jar linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "jarLibs": { + "description": "Jar libs.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "defines": { + "description": "Allows user to specify defines for the MapReduce job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "className", + "jarFilePath" + ] + }, + "HDInsightStreamingActivity": { + "description": "HDInsight streaming activity type.", + "x-ms-discriminator-value": "HDInsightStreaming", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight streaming activity properties.", + "$ref": "#/definitions/HDInsightStreamingActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightStreamingActivityTypeProperties": { + "description": "HDInsight streaming activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "mapper": { + "type": "object", + "description": "Mapper executable name. Type: string (or Expression with resultType string)." + }, + "reducer": { + "type": "object", + "description": "Reducer executable name. Type: string (or Expression with resultType string)." + }, + "input": { + "type": "object", + "description": "Input blob path. Type: string (or Expression with resultType string)." + }, + "output": { + "type": "object", + "description": "Output blob path. Type: string (or Expression with resultType string)." + }, + "filePaths": { + "description": "Paths to streaming job files. Can be directories.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "fileLinkedService": { + "description": "Linked service reference where the files are located.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "combiner": { + "type": "object", + "description": "Combiner executable name. Type: string (or Expression with resultType string)." + }, + "commandEnvironment": { + "description": "Command line environment values.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "defines": { + "description": "Allows user to specify defines for streaming job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "mapper", + "reducer", + "input", + "output", + "filePaths" + ] + }, + "HDInsightSparkActivity": { + "description": "HDInsight Spark activity.", + "x-ms-discriminator-value": "HDInsightSpark", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight spark activity properties.", + "$ref": "#/definitions/HDInsightSparkActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightSparkActivityTypeProperties": { + "description": "HDInsight spark activity properties.", + "properties": { + "rootPath": { + "type": "object", + "description": "The root path in 'sparkJobLinkedService' for all the job’s files. Type: string (or Expression with resultType string)." + }, + "entryFilePath": { + "type": "object", + "description": "The relative path to the root folder of the code/package to be executed. Type: string (or Expression with resultType string)." + }, + "arguments": { + "description": "The user-specified arguments to HDInsightSparkActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "sparkJobLinkedService": { + "description": "The storage linked service for uploading the entry file and dependencies, and for receiving logs.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "className": { + "description": "The application's Java/Spark main class.", + "type": "string" + }, + "proxyUser": { + "type": "object", + "description": "The user to impersonate that will execute the job. Type: string (or Expression with resultType string)." + }, + "sparkConfig": { + "description": "Spark configuration property.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "rootPath", + "entryFilePath" + ] + }, + "ExecuteSSISPackageActivity": { + "description": "Execute SSIS package activity.", + "x-ms-discriminator-value": "ExecuteSSISPackage", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Execute SSIS package activity properties.", + "$ref": "#/definitions/ExecuteSSISPackageActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecuteSSISPackageActivityTypeProperties": { + "description": "Execute SSIS package activity properties.", + "properties": { + "packageLocation": { + "description": "SSIS package location.", + "$ref": "#/definitions/SSISPackageLocation" + }, + "runtime": { + "description": "Specifies the runtime to execute SSIS package. The value should be \"x86\" or \"x64\". Type: string (or Expression with resultType string).", + "type": "object" + }, + "loggingLevel": { + "description": "The logging level of SSIS package execution. Type: string (or Expression with resultType string).", + "type": "object" + }, + "environmentPath": { + "description": "The environment path to execute the SSIS package. Type: string (or Expression with resultType string).", + "type": "object" + }, + "executionCredential": { + "description": "The package execution credential.", + "$ref": "#/definitions/SSISExecutionCredential" + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "projectParameters": { + "description": "The project level parameters to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "packageParameters": { + "description": "The package level parameters to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "projectConnectionManagers": { + "description": "The project level connection managers to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISConnectionManager" + } + }, + "packageConnectionManagers": { + "description": "The package level connection managers to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISConnectionManager" + } + }, + "propertyOverrides": { + "description": "The property overrides to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISPropertyOverride" + } + }, + "logLocation": { + "description": "SSIS package execution log location.", + "$ref": "#/definitions/SSISLogLocation" + } + }, + "required": [ + "packageLocation", + "connectVia" + ] + }, + "SSISPackageLocation": { + "description": "SSIS package location.", + "type": "object", + "properties": { + "packagePath": { + "description": "The SSIS package path. Type: string (or Expression with resultType string).", + "type": "object" + }, + "type": { + "description": "The type of SSIS package location.", + "type": "string", + "enum": [ + "SSISDB", + "File", + "InlinePackage" + ], + "x-ms-enum": { + "name": "SsisPackageLocationType", + "modelAsString": true + } + }, + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SSIS package location properties.", + "$ref": "#/definitions/SSISPackageLocationTypeProperties" + } + } + }, + "SSISPackageLocationTypeProperties": { + "description": "SSIS package location properties.", + "type": "object", + "properties": { + "packagePassword": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "Password of the package." + }, + "accessCredential": { + "description": "The package access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, + "configurationPath": { + "description": "The configuration file of the package execution. Type: string (or Expression with resultType string).", + "type": "object" + }, + "packageName": { + "description": "The package name.", + "type": "string" + }, + "packageContent": { + "description": "The embedded package content. Type: string (or Expression with resultType string).", + "type": "object" + }, + "packageLastModifiedDate": { + "description": "The embedded package last modified date.", + "type": "string" + }, + "childPackages": { + "description": "The embedded child package list.", + "type": "array", + "items": { + "$ref": "#/definitions/SSISChildPackage" + } + } + } + }, + "SSISConnectionManager": { + "description": "SSIS Connection Manager.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "SSISExecutionParameter": { + "description": "SSIS execution parameter.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "SSIS package execution parameter value. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "value" + ] + }, + "SSISPropertyOverride": { + "description": "SSIS property override.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "SSIS package property override value. Type: string (or Expression with resultType string)." + }, + "isSensitive": { + "type": "boolean", + "description": "Whether SSIS package property override value is sensitive data. Value will be encrypted in SSISDB if it is true" + } + }, + "required": [ + "value" + ] + }, + "SSISExecutionCredential": { + "description": "SSIS package execution credential.", + "type": "object", + "properties": { + "domain": { + "type": "object", + "description": "Domain for windows authentication." + }, + "userName": { + "type": "object", + "description": "UseName for windows authentication." + }, + "password": { + "$ref": "../datafactory.json#/definitions/SecureString", + "description": "Password for windows authentication." + } + }, + "required": [ + "domain", + "userName", + "password" + ] + }, + "SSISAccessCredential": { + "description": "SSIS access credential.", + "type": "object", + "properties": { + "domain": { + "type": "object", + "description": "Domain for windows authentication." + }, + "userName": { + "type": "object", + "description": "UseName for windows authentication." + }, + "password": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "Password for windows authentication." + } + }, + "required": [ + "domain", + "userName", + "password" + ] + }, + "SSISChildPackage": { + "description": "SSIS embedded child package.", + "type": "object", + "properties": { + "packagePath": { + "type": "object", + "description": "Path for embedded child package. Type: string (or Expression with resultType string)." + }, + "packageName": { + "type": "string", + "description": "Name for embedded child package." + }, + "packageContent": { + "type": "object", + "description": "Content for embedded child package. Type: string (or Expression with resultType string)." + }, + "packageLastModifiedDate": { + "type": "string", + "description": "Last modified date for embedded child package." + } + }, + "required": [ + "packagePath", + "packageContent" + ] + }, + "SSISLogLocation": { + "description": "SSIS package execution log location", + "type": "object", + "properties": { + "logPath": { + "description": "The SSIS package execution log path. Type: string (or Expression with resultType string).", + "type": "object" + }, + "type": { + "description": "The type of SSIS log location.", + "type": "string", + "enum": [ + "File" + ], + "x-ms-enum": { + "name": "SsisLogLocationType", + "modelAsString": true + } + }, + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SSIS package execution log location properties.", + "$ref": "#/definitions/SSISLogLocationTypeProperties" + } + }, + "required": [ + "logPath", + "type", + "typeProperties" + ] + }, + "SSISLogLocationTypeProperties": { + "description": "SSIS package execution log location properties.", + "type": "object", + "properties": { + "accessCredential": { + "description": "The package execution log access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, + "logRefreshInterval": { + "type": "object", + "description": "Specifies the interval to refresh log. The default interval is 5 minutes. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CustomActivity": { + "description": "Custom activity type.", + "x-ms-discriminator-value": "Custom", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Custom activity properties.", + "$ref": "#/definitions/CustomActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CustomActivityTypeProperties": { + "description": "Custom activity properties.", + "properties": { + "command": { + "type": "object", + "description": "Command for custom activity Type: string (or Expression with resultType string)." + }, + "resourceLinkedService": { + "description": "Resource linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "folderPath": { + "type": "object", + "description": "Folder path for resource files Type: string (or Expression with resultType string)." + }, + "referenceObjects": { + "description": "Reference objects", + "$ref": "#/definitions/CustomActivityReferenceObject" + }, + "extendedProperties": { + "description": "User defined property bag. There is no restriction on the keys or values that can be used. The user specified custom activity has the full responsibility to consume and interpret the content defined.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "retentionTimeInDays": { + "type": "object", + "description": "The retention time for the files submitted for custom activity. Type: double (or Expression with resultType double)." + } + }, + "required": [ + "command" + ] + }, + "CustomActivityReferenceObject": { + "description": "Reference objects for custom activity", + "properties": { + "linkedServices": { + "description": "Linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "datasets": { + "description": "Dataset references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + } + }, + "SqlServerStoredProcedureActivity": { + "description": "SQL stored procedure activity type.", + "x-ms-discriminator-value": "SqlServerStoredProcedure", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SQL stored procedure activity properties.", + "$ref": "#/definitions/SqlServerStoredProcedureActivityTypeProperties" + } + }, + "required": [ + "typeProperties", + "linkedServiceName" + ] + }, + "SqlServerStoredProcedureActivityTypeProperties": { + "description": "SQL stored procedure activity properties.", + "properties": { + "storedProcedureName": { + "type": "object", + "description": "Stored procedure name. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + } + }, + "required": [ + "storedProcedureName" + ] + }, + "ExecutePipelineActivity": { + "x-ms-discriminator-value": "ExecutePipeline", + "description": "Execute pipeline activity.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Execute pipeline activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExecutePipelineActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecutePipelineActivityTypeProperties": { + "description": "Execute pipeline activity properties.", + "properties": { + "pipeline": { + "description": "Pipeline reference.", + "$ref": "../datafactory.json#/definitions/PipelineReference" + }, + "parameters": { + "description": "Pipeline parameters.", + "$ref": "../datafactory.json#/definitions/ParameterValueSpecification" + }, + "waitOnCompletion": { + "description": "Defines whether activity execution will wait for the dependent pipeline execution to finish. Default is false.", + "type": "boolean" + } + }, + "required": [ + "pipeline" + ] + }, + "DeleteActivity": { + "x-ms-discriminator-value": "Delete", + "description": "Delete activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Delete activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeleteActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DeleteActivityTypeProperties": { + "description": "Delete activity properties.", + "properties": { + "recursive": { + "type": "object", + "description": "If true, files or sub-folders under current folder path will be deleted recursively. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "maxConcurrentConnections": { + "type": "integer", + "minimum": 1, + "description": "The max concurrent connections to connect data source at the same time." + }, + "enableLogging": { + "type": "object", + "description": "Whether to record detailed logs of delete-activity execution. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "logStorageSettings": { + "description": "Log storage settings customer need to provide when enableLogging is true.", + "$ref": "#/definitions/LogStorageSettings" + }, + "dataset": { + "description": "Delete activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "required": [ + "dataset" + ] + }, + "AzureDataExplorerCommandActivity": { + "x-ms-discriminator-value": "AzureDataExplorerCommand", + "description": "Azure Data Explorer command activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer command activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerCommandActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerCommandActivityTypeProperties": { + "description": "Azure Data Explorer command activity properties.", + "properties": { + "command": { + "type": "object", + "description": "A control command, according to the Azure Data Explorer command syntax. Type: string (or Expression with resultType string)." + }, + "commandTimeout": { + "type": "object", + "description": "Control command timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..)" + } + }, + "required": [ + "command" + ] + }, + "LookupActivity": { + "x-ms-discriminator-value": "Lookup", + "description": "Lookup activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Lookup activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LookupActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LookupActivityTypeProperties": { + "description": "Lookup activity properties.", + "properties": { + "source": { + "description": "Dataset-specific source properties, same as copy activity source.", + "$ref": "#/definitions/CopySource" + }, + "dataset": { + "description": "Lookup activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + }, + "firstRowOnly": { + "type": "object", + "description": "Whether to return first row or all rows. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "source", + "dataset" + ] + }, + "WebActivityMethod": { + "description": "The list of HTTP methods supported by a WebActivity.", + "type": "string", + "enum": [ + "GET", + "POST", + "PUT", + "DELETE" + ], + "x-ms-enum": { + "name": "WebActivityMethod", + "modelAsString": true + } + }, + "WebActivity": { + "x-ms-discriminator-value": "WebActivity", + "description": "Web activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Web activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebActivityAuthentication": { + "description": "Web activity authentication properties.", + "properties": { + "type": { + "description": "Web activity authentication (Basic/ClientCertificate/MSI)", + "type": "string" + }, + "pfx": { + "description": "Base64-encoded contents of a PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "username": { + "description": "Web activity authentication user name for basic authentication.", + "type": "string" + }, + "password": { + "description": "Password for the PFX file or basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "resource": { + "description": "Resource for which Azure Auth token will be requested when using MSI Authentication.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "WebActivityTypeProperties": { + "description": "Web activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/WebActivityMethod" + }, + "url": { + "type": "object", + "description": "Web activity target endpoint and path. Type: string (or Expression with resultType string)." + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + }, + "authentication": { + "description": "Authentication method used for calling the endpoint.", + "$ref": "#/definitions/WebActivityAuthentication" + }, + "datasets": { + "type": "array", + "description": "List of datasets passed to web endpoint.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "linkedServices": { + "type": "array", + "description": "List of linked services passed to web endpoint.", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + } + }, + "required": [ + "method", + "url" + ] + }, + "GetMetadataActivity": { + "x-ms-discriminator-value": "GetMetadata", + "description": "Activity to get metadata of dataset", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "GetMetadata activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GetMetadataActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GetMetadataActivityTypeProperties": { + "description": "GetMetadata activity properties.", + "properties": { + "dataset": { + "description": "GetMetadata activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + }, + "fieldList": { + "description": "Fields of metadata to get from dataset.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "dataset" + ] + }, + "IfConditionActivity": { + "x-ms-discriminator-value": "IfCondition", + "description": "This activity evaluates a boolean expression and executes either the activities under the ifTrueActivities property or the ifFalseActivities property depending on the result of the expression.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "IfCondition activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/IfConditionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "IfConditionActivityTypeProperties": { + "description": "IfCondition activity properties.", + "properties": { + "expression": { + "description": "An expression that would evaluate to Boolean. This is used to determine the block of activities (ifTrueActivities or ifFalseActivities) that will be executed.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "ifTrueActivities": { + "type": "array", + "description": "List of activities to execute if expression is evaluated to true. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + }, + "ifFalseActivities": { + "type": "array", + "description": "List of activities to execute if expression is evaluated to false. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "expression" + ] + }, + "SwitchActivity": { + "x-ms-discriminator-value": "Switch", + "description": "This activity evaluates an expression and executes activities under the cases property that correspond to the expression evaluation expected in the equals property.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Switch activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SwitchActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SwitchActivityTypeProperties": { + "description": "Switch activity properties.", + "properties": { + "on": { + "description": "An expression that would evaluate to a string or integer. This is used to determine the block of activities in cases that will be executed.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "cases": { + "type": "array", + "description": "List of cases that correspond to expected values of the 'on' property. This is an optional property and if not provided, the activity will execute activities provided in defaultActivities.", + "items": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SwitchCase" + } + }, + "defaultActivities": { + "type": "array", + "description": "List of activities to execute if no case condition is satisfied. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "on" + ] + }, + "SwitchCase": { + "description": "Switch cases with have a value and corresponding activities.", + "properties": { + "value": { + "description": "Expected value that satisfies the expression result of the 'on' property.", + "type": "string" + }, + "activities": { + "type": "array", + "description": "List of activities to execute for satisfied case condition.", + "items": { + "$ref": "#/definitions/Activity" + } + } + } + }, + "ForEachActivity": { + "x-ms-discriminator-value": "ForEach", + "description": "This activity is used for iterating over a collection and execute given activities.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "ForEach activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ForEachActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ForEachActivityTypeProperties": { + "description": "ForEach activity properties.", + "properties": { + "isSequential": { + "description": "Should the loop be executed in sequence or in parallel (max 50)", + "type": "boolean" + }, + "batchCount": { + "description": "Batch count to be used for controlling the number of parallel execution (when isSequential is set to false).", + "type": "integer", + "maximum": 50 + }, + "items": { + "description": "Collection to iterate.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "activities": { + "type": "array", + "description": "List of activities to execute .", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "items", + "activities" + ] + }, + "AzureMLBatchExecutionActivity": { + "description": "Azure ML Batch Execution activity.", + "x-ms-discriminator-value": "AzureMLBatchExecution", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Batch Execution activity properties.", + "$ref": "#/definitions/AzureMLBatchExecutionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLBatchExecutionActivityTypeProperties": { + "description": "Azure ML Batch Execution activity properties.", + "properties": { + "globalParameters": { + "description": "Key,Value pairs to be passed to the Azure ML Batch Execution Service endpoint. Keys must match the names of web service parameters defined in the published Azure ML web service. Values will be passed in the GlobalParameters property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "webServiceOutputs": { + "description": "Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Outputs to AzureMLWebServiceFile objects specifying the output Blob locations. This information will be passed in the WebServiceOutputs property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureMLWebServiceFile" + } + }, + "webServiceInputs": { + "description": "Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Inputs to AzureMLWebServiceFile objects specifying the input Blob locations.. This information will be passed in the WebServiceInputs property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureMLWebServiceFile" + } + } + } + }, + "AzureMLWebServiceFile": { + "description": "Azure ML WebService Input/Output file", + "type": "object", + "properties": { + "filePath": { + "type": "object", + "description": "The relative file path, including container name, in the Azure Blob Storage specified by the LinkedService. Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "Reference to an Azure Storage LinkedService, where Azure ML WebService Input/Output file located.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "required": [ + "linkedServiceName", + "filePath" + ] + }, + "AzureMLUpdateResourceActivity": { + "description": "Azure ML Update Resource management activity.", + "x-ms-discriminator-value": "AzureMLUpdateResource", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Update Resource management activity properties.", + "$ref": "#/definitions/AzureMLUpdateResourceActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLUpdateResourceActivityTypeProperties": { + "description": "Azure ML Update Resource activity properties.", + "properties": { + "trainedModelName": { + "type": "object", + "description": "Name of the Trained Model module in the Web Service experiment to be updated. Type: string (or Expression with resultType string)." + }, + "trainedModelLinkedServiceName": { + "description": "Name of Azure Storage linked service holding the .ilearner file that will be uploaded by the update operation.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "trainedModelFilePath": { + "type": "object", + "description": "The relative file path in trainedModelLinkedService to represent the .ilearner file that will be uploaded by the update operation. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "trainedModelName", + "trainedModelLinkedServiceName", + "trainedModelFilePath" + ] + }, + "AzureMLExecutePipelineActivity": { + "description": "Azure ML Execute Pipeline activity.", + "x-ms-discriminator-value": "AzureMLExecutePipeline", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Execute Pipeline activity properties.", + "$ref": "#/definitions/AzureMLExecutePipelineActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLExecutePipelineActivityTypeProperties": { + "description": "Azure ML Execute Pipeline activity properties.", + "properties": { + "mlPipelineId": { + "description": "ID of the published Azure ML pipeline. Type: string (or Expression with resultType string).", + "type": "object" + }, + "experimentName": { + "description": "Run history experiment name of the pipeline run. This information will be passed in the ExperimentName property of the published pipeline execution request. Type: string (or Expression with resultType string).", + "type": "object" + }, + "mlPipelineParameters": { + "description": "Key,Value pairs to be passed to the published Azure ML pipeline endpoint. Keys must match the names of pipeline parameters defined in the published pipeline. Values will be passed in the ParameterAssignments property of the published pipeline execution request. Type: object with key value pairs (or Expression with resultType object).", + "type": "object" + }, + "mlParentRunId": { + "description": "The parent Azure ML Service pipeline run id. This information will be passed in the ParentRunId property of the published pipeline execution request. Type: string (or Expression with resultType string).", + "type": "object" + }, + "continueOnStepFailure": { + "description": "Whether to continue execution of other steps in the PipelineRun if a step fails. This information will be passed in the continueOnStepFailure property of the published pipeline execution request. Type: boolean (or Expression with resultType boolean).", + "type": "object" + } + }, + "required": [ + "mlPipelineId" + ] + }, + "AzureMLPipelineParameters": { + "description": "Key,Value pairs to be passed to the published Azure ML pipeline endpoint. Keys must match the names of pipeline parameters defined in the published pipeline. Values will be passed in the ParameterAssignments property of the published pipeline execution request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "DataLakeAnalyticsUSQLActivity": { + "description": "Data Lake Analytics U-SQL activity.", + "x-ms-discriminator-value": "DataLakeAnalyticsU-SQL", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Data Lake Analytics U-SQL activity properties.", + "$ref": "#/definitions/DataLakeAnalyticsUSQLActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DataLakeAnalyticsUSQLActivityTypeProperties": { + "description": "DataLakeAnalyticsU-SQL activity properties.", + "properties": { + "scriptPath": { + "type": "object", + "description": "Case-sensitive path to folder that contains the U-SQL script. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "degreeOfParallelism": { + "type": "object", + "description": "The maximum number of nodes simultaneously used to run the job. Default value is 1. Type: integer (or Expression with resultType integer), minimum: 1." + }, + "priority": { + "type": "object", + "description": "Determines which jobs out of all that are queued should be selected to run first. The lower the number, the higher the priority. Default value is 1000. Type: integer (or Expression with resultType integer), minimum: 1." + }, + "parameters": { + "description": "Parameters for U-SQL job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "runtimeVersion": { + "type": "object", + "description": "Runtime version of the U-SQL engine to use. Type: string (or Expression with resultType string)." + }, + "compilationMode": { + "type": "object", + "description": "Compilation mode of U-SQL. Must be one of these values : Semantic, Full and SingleBox. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "scriptPath", + "scriptLinkedService" + ] + }, + "WaitActivity": { + "x-ms-discriminator-value": "Wait", + "description": "This activity suspends pipeline execution for the specified interval.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Wait activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WaitActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WaitActivityTypeProperties": { + "description": "Wait activity properties.", + "properties": { + "waitTimeInSeconds": { + "description": "Duration in seconds.", + "type": "integer" + } + }, + "required": [ + "waitTimeInSeconds" + ] + }, + "UntilActivity": { + "x-ms-discriminator-value": "Until", + "description": "This activity executes inner activities until the specified boolean expression results to true or timeout is reached, whichever is earlier.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Until activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UntilActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "UntilActivityTypeProperties": { + "description": "Until activity properties.", + "properties": { + "expression": { + "description": "An expression that would evaluate to Boolean. The loop will continue until this expression evaluates to true", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. If there is no value specified, it takes the value of TimeSpan.FromDays(7) which is 1 week as default. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "activities": { + "type": "array", + "description": "List of activities to execute.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "expression", + "activities" + ] + }, + "ValidationActivity": { + "x-ms-discriminator-value": "Validation", + "description": "This activity verifies that an external resource exists.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Validation activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ValidationActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ValidationActivityTypeProperties": { + "description": "Validation activity properties.", + "properties": { + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. If there is no value specified, it takes the value of TimeSpan.FromDays(7) which is 1 week as default. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "sleep": { + "type": "object", + "description": "A delay in seconds between validation attempts. If no value is specified, 10 seconds will be used as the default. Type: integer (or Expression with resultType integer)." + }, + "minimumSize": { + "type": "object", + "description": "Can be used if dataset points to a file. The file must be greater than or equal in size to the value specified. Type: integer (or Expression with resultType integer)." + }, + "childItems": { + "type": "object", + "description": "Can be used if dataset points to a folder. If set to true, the folder must have at least one file. If set to false, the folder must be empty. Type: boolean (or Expression with resultType boolean)." + }, + "dataset": { + "description": "Validation activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "required": [ + "dataset" + ] + }, + "FilterActivity": { + "x-ms-discriminator-value": "Filter", + "description": "Filter and return results from input array based on the conditions.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Filter activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FilterActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FilterActivityTypeProperties": { + "description": "Filter activity properties.", + "properties": { + "items": { + "description": "Input array on which filter should be applied.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "condition": { + "description": "Condition to be used for filtering the input.", + "$ref": "../datafactory.json#/definitions/Expression" + } + }, + "required": [ + "condition", + "items" + ] + }, + "DatabricksNotebookActivity": { + "description": "DatabricksNotebook activity.", + "x-ms-discriminator-value": "DatabricksNotebook", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks Notebook activity properties.", + "$ref": "#/definitions/DatabricksNotebookActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksNotebookActivityTypeProperties": { + "description": "Databricks Notebook activity properties.", + "properties": { + "notebookPath": { + "type": "object", + "description": "The absolute path of the notebook to be run in the Databricks Workspace. This path must begin with a slash. Type: string (or Expression with resultType string)." + }, + "baseParameters": { + "description": "Base parameters to be used for each run of this job.If the notebook takes a parameter that is not specified, the default value from the notebook will be used.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "notebookPath" + ] + }, + "DatabricksSparkJarActivity": { + "description": "DatabricksSparkJar activity.", + "x-ms-discriminator-value": "DatabricksSparkJar", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks SparkJar activity properties.", + "$ref": "#/definitions/DatabricksSparkJarActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksSparkJarActivityTypeProperties": { + "description": "Databricks SparkJar activity properties.", + "properties": { + "mainClassName": { + "type": "object", + "description": "The full name of the class containing the main method to be executed. This class must be contained in a JAR provided as a library. Type: string (or Expression with resultType string)." + }, + "parameters": { + "description": "Parameters that will be passed to the main method.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "mainClassName" + ] + }, + "DatabricksSparkPythonActivity": { + "description": "DatabricksSparkPython activity.", + "x-ms-discriminator-value": "DatabricksSparkPython", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks SparkPython activity properties.", + "$ref": "#/definitions/DatabricksSparkPythonActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksSparkPythonActivityTypeProperties": { + "description": "Databricks SparkPython activity properties.", + "properties": { + "pythonFile": { + "type": "object", + "description": "The URI of the Python file to be executed. DBFS paths are supported. Type: string (or Expression with resultType string)." + }, + "parameters": { + "description": "Command line parameters that will be passed to the Python file.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "pythonFile" + ] + }, + "SetVariableActivity": { + "x-ms-discriminator-value": "SetVariable", + "description": "Set value for a Variable.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Set Variable activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SetVariableActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SetVariableActivityTypeProperties": { + "description": "SetVariable activity properties.", + "properties": { + "variableName": { + "description": "Name of the variable whose value needs to be set.", + "type": "string" + }, + "value": { + "description": "Value to be set. Could be a static value or Expression", + "type": "object" + } + } + }, + "AppendVariableActivity": { + "x-ms-discriminator-value": "AppendVariable", + "description": "Append value for a Variable of type Array.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Append Variable activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AppendVariableActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AppendVariableActivityTypeProperties": { + "description": "AppendVariable activity properties.", + "properties": { + "variableName": { + "description": "Name of the variable whose value needs to be appended to.", + "type": "string" + }, + "value": { + "description": "Value to be appended. Could be a static value or Expression", + "type": "object" + } + } + }, + "AzureFunctionActivityMethod": { + "description": "The list of HTTP methods supported by a AzureFunctionActivity.", + "type": "string", + "enum": [ + "GET", + "POST", + "PUT", + "DELETE", + "OPTIONS", + "HEAD", + "TRACE" + ], + "x-ms-enum": { + "name": "AzureFunctionActivityMethod", + "modelAsString": true + } + }, + "AzureFunctionActivity": { + "x-ms-discriminator-value": "AzureFunctionActivity", + "description": "Azure Function activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Function activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFunctionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFunctionActivityTypeProperties": { + "description": "Azure Function activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/AzureFunctionActivityMethod" + }, + "functionName": { + "type": "object", + "description": "Name of the Function that the Azure Function Activity will call. Type: string (or Expression with resultType string)" + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + } + }, + "required": [ + "method", + "functionName" + ] + }, + "WebHookActivity": { + "x-ms-discriminator-value": "WebHook", + "description": "WebHook activity.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "WebHook activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebHookActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebHookActivityMethod": { + "description": "The list of HTTP methods supported by a WebHook activity.", + "type": "string", + "enum": [ + "POST" + ], + "x-ms-enum": { + "name": "WebHookActivityMethod", + "modelAsString": true + } + }, + "WebHookActivityTypeProperties": { + "description": "WebHook activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/WebHookActivityMethod" + }, + "url": { + "type": "object", + "description": "WebHook activity target endpoint and path. Type: string (or Expression with resultType string)." + }, + "timeout": { + "type": "string", + "description": "The timeout within which the webhook should be called back. If there is no value specified, it defaults to 10 minutes. Type: string. Pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + }, + "authentication": { + "description": "Authentication method used for calling the endpoint.", + "$ref": "#/definitions/WebActivityAuthentication" + }, + "reportStatusOnCallBack": { + "type": "object", + "description": "When set to true, statusCode, output and error in callback request body will be consumed by activity. The activity can be marked as failed by setting statusCode >= 400 in callback request. Default is false. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "method", + "url" + ] + }, + "ExecuteDataFlowActivity": { + "description": "Execute data flow activity.", + "x-ms-discriminator-value": "ExecuteDataFlow", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Execute data flow activity properties.", + "$ref": "#/definitions/ExecuteDataFlowActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecuteDataFlowActivityTypeProperties": { + "description": "Execute data flow activity properties.", + "properties": { + "dataFlow": { + "description": "Data flow reference.", + "$ref": "../datafactory.json#/definitions/DataFlowReference" + }, + "staging": { + "description": "Staging info for execute data flow activity.", + "$ref": "../datafactory.json#/definitions/DataFlowStagingInfo" + }, + "integrationRuntime": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "compute": { + "description": "Compute properties for data flow activity.", + "type": "object", + "properties": { + "computeType": { + "description": "Compute type of the cluster which will execute data flow job.", + "type": "string", + "enum": [ + "General", + "MemoryOptimized", + "ComputeOptimized" + ], + "x-ms-enum": { + "name": "DataFlowComputeType", + "modelAsString": true + } + }, + "coreCount": { + "description": "Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272.", + "type": "integer" + } + } + } + }, + "required": [ + "dataFlow" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json new file mode 100644 index 000000000000..87caabcdaced --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json @@ -0,0 +1,123 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "SparkJobDefinition": { + "description": "Spark job definition.", + "type": "object", + "properties": { + "description": { + "description": "The description of the Spark job definition.", + "type": "string" + }, + "targetBigDataPool": { + "description": "Big data pool reference.", + "$ref": "./NoteBook.json#/definitions/BigDataPoolReference" + }, + "requiredSparkVersion": { + "description": "The required Spark version of the application.", + "type": "string" + }, + "language": { + "description": "The language of the Spark application.", + "type": "string" + }, + "jobProperties": { + "description": "The properties of the Spark job.", + "$ref": "#/definitions/SparkJobProperties" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "targetBigDataPool", + "jobProperties" + ] + }, + "SparkJobProperties": { + "description": "The properties of the Spark job.", + "properties": { + "name": { + "description": "The name of the job.", + "type": "string" + }, + "file": { + "description": "File containing the application to execute.", + "type": "string" + }, + "className": { + "description": "Main class for Java/Scala application.", + "type": "string" + }, + "conf": { + "description": "Spark configuration properties.", + "type": "object" + }, + "args": { + "description": "Command line arguments for the application.", + "type": "array", + "items": { + "type": "string" + } + }, + "jars": { + "description": "Jars to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "files": { + "description": "files to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "archives": { + "description": "Archives to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "driverMemory": { + "description": "Amount of memory to use for the driver process.", + "type": "string" + }, + "driverCores": { + "description": "Number of cores to use for the driver.", + "type": "integer" + }, + "executorMemory": { + "description": "Amount of memory to use per executor process.", + "type": "string" + }, + "executorCores": { + "description": "Number of cores to use for each executor.", + "type": "integer" + }, + "numExecutors": { + "description": "Number of executors to launch for this job.", + "type": "integer" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "file", + "driverMemory", + "driverCores", + "executorMemory", + "executorCores", + "numExecutors" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json new file mode 100644 index 000000000000..ba7c44589f83 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json @@ -0,0 +1,108 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "SqlScript": { + "description": "SQL script.", + "type": "object", + "properties": { + "description": { + "description": "The description of the SQL script.", + "type": "string" + }, + "type": { + "description": "The type of the SQL script.", + "type": "string", + "enum": [ + "SqlQuery" + ], + "x-ms-enum": { + "name": "SqlScriptType", + "modelAsString": true + } + }, + "content": { + "description": "The content of the SQL script.", + "$ref": "#/definitions/SqlScriptContent" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "content" + ] + }, + "SqlScriptContent": { + "description": "The content of the SQL script.", + "type": "object", + "properties": { + "query": { + "description": "SQL query to execute.", + "type": "string" + }, + "currentConnection": { + "description": "The connection used to execute the SQL script.", + "$ref": "#/definitions/SqlConnection" + }, + "metadata": { + "description": "The metadata of the SQL script.", + "$ref": "#/definitions/SqlScriptMetadata" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "query", + "currentConnection" + ] + }, + "SqlScriptMetadata": { + "description": "The metadata of the SQL script.", + "type": "object", + "properties": { + "language": { + "description": "The language of the SQL script.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SqlConnection": { + "description": "The connection used to execute the SQL script.", + "type": "object", + "properties": { + "type": { + "description": "The type of the connection.", + "type": "string", + "enum": [ + "SqlOnDemand", + "SqlPool" + ], + "x-ms-enum": { + "name": "SqlConnectionType", + "modelAsString": true + } + }, + "name": { + "description": "The identifier of the connection.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type", + "name" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json new file mode 100644 index 000000000000..f8f4ac9763e2 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json @@ -0,0 +1,638 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Trigger": { + "description": "Azure Synapse nested object which contains information about creating pipeline run", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Trigger type." + }, + "description": { + "description": "Trigger description.", + "type": "string" + }, + "runtimeState": { + "$ref": "#/definitions/TriggerRuntimeState", + "description": "Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger.", + "readOnly": true + }, + "annotations": { + "description": "List of tags that can be used for describing the trigger.", + "type": "array", + "items": { + "type": "object" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TriggerRuntimeState": { + "type": "string", + "description": "Enumerates possible state of Triggers.", + "enum": [ + "Started", + "Stopped", + "Disabled" + ], + "x-ms-enum": { + "name": "TriggerRuntimeState", + "modelAsString": true + } + }, + "MultiplePipelineTrigger": { + "x-ms-discriminator-value": "MultiplePipelineTrigger", + "description": "Base class for all triggers that support one to many model for trigger to pipeline.", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipelines": { + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference" + }, + "description": "Pipelines that need to be started." + } + } + }, + "ScheduleTrigger": { + "description": "Trigger that creates pipeline runs periodically, on schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Schedule Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "recurrence": { + "$ref": "#/definitions/ScheduleTriggerRecurrence", + "description": "Recurrence schedule configuration." + } + }, + "required": [ + "recurrence" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "ScheduleTriggerRecurrence": { + "type": "object", + "properties": { + "frequency": { + "$ref": "#/definitions/RecurrenceFrequency", + "description": "The frequency." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + }, + "schedule": { + "$ref": "#/definitions/RecurrenceSchedule", + "description": "The recurrence schedule." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The workflow trigger recurrence." + }, + "RecurrenceFrequency": { + "description": "Enumerates possible frequency option for the schedule trigger.", + "type": "string", + "enum": [ + "NotSpecified", + "Minute", + "Hour", + "Day", + "Week", + "Month", + "Year" + ], + "x-ms-enum": { + "name": "RecurrenceFrequency", + "modelAsString": true + } + }, + "RecurrenceSchedule": { + "type": "object", + "properties": { + "minutes": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The minutes." + }, + "hours": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The hours." + }, + "weekDays": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DaysOfWeek", + "modelAsString": false + } + }, + "description": "The days of the week." + }, + "monthDays": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The month days." + }, + "monthlyOccurrences": { + "type": "array", + "items": { + "$ref": "#/definitions/RecurrenceScheduleOccurrence" + }, + "description": "The monthly occurrences." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The recurrence schedule." + }, + "RecurrenceScheduleOccurrence": { + "type": "object", + "properties": { + "day": { + "$ref": "#/definitions/DayOfWeek", + "description": "The day of the week." + }, + "occurrence": { + "type": "integer", + "format": "int32", + "description": "The occurrence." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The recurrence schedule occurrence." + }, + "DayOfWeek": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + }, + "description": "The days of the week." + }, + "BlobTrigger": { + "description": "Trigger that runs every time the selected Blob container changes.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Blob Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "folderPath": { + "description": "The path of the container/folder that will trigger the pipeline.", + "type": "string" + }, + "maxConcurrency": { + "description": "The max number of parallel files to handle when it is triggered.", + "type": "integer" + }, + "linkedService": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "required": [ + "folderPath", + "maxConcurrency", + "linkedService" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "BlobEventsTrigger": { + "description": "Trigger that runs every time a Blob event occurs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Blob Events Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "blobPathBeginsWith": { + "description": "The blob path must begin with the pattern provided for trigger to fire. For example, '/records/blobs/december/' will only fire the trigger for blobs in the december folder under the records container. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith.", + "type": "string" + }, + "blobPathEndsWith": { + "description": "The blob path must end with the pattern provided for trigger to fire. For example, 'december/boxes.csv' will only fire the trigger for blobs named boxes in a december folder. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith.", + "type": "string" + }, + "ignoreEmptyBlobs": { + "description": "If set to true, blobs with zero bytes will be ignored.", + "type": "boolean" + }, + "events": { + "description": "The type of events that cause this trigger to fire.", + "$ref": "#/definitions/BlobEventTypes" + }, + "scope": { + "description": "The ARM resource ID of the Storage Account.", + "type": "string" + } + }, + "required": [ + "events", + "scope" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "BlobEventTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ], + "x-ms-enum": { + "name": "BlobEventTypes", + "modelAsString": true + } + }, + "description": "Blob event types." + }, + "TumblingWindowTrigger": { + "description": "Trigger that schedules pipeline runs for all fixed time interval windows from a start time without gaps and also supports backfill scenarios (when start time is in the past).", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipeline": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference", + "description": "Pipeline for which runs are created when an event is fired for trigger window that is ready." + }, + "typeProperties": { + "description": "Tumbling Window Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "frequency": { + "$ref": "#/definitions/TumblingWindowFrequency", + "description": "The frequency of the time windows." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval of the time windows. The minimum interval allowed is 15 Minutes." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported." + }, + "delay": { + "type": "object", + "description": "Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrency": { + "description": "The max number of parallel time windows (ready for execution) for which a new run is triggered.", + "type": "integer", + "minimum": 1, + "maximum": 50 + }, + "retryPolicy": { + "$ref": "#/definitions/RetryPolicy", + "description": "Retry policy that will be applied for failed pipeline runs." + }, + "dependsOn": { + "type": "array", + "description": "Triggers that this trigger depends on. Only tumbling window triggers are supported.", + "items": { + "$ref": "#/definitions/DependencyReference" + } + } + }, + "required": [ + "frequency", + "interval", + "startTime", + "maxConcurrency" + ] + } + }, + "required": [ + "pipeline", + "typeProperties" + ] + }, + "TumblingWindowFrequency": { + "description": "Enumerates possible frequency option for the tumbling window trigger.", + "type": "string", + "enum": [ + "Minute", + "Hour" + ], + "x-ms-enum": { + "name": "TumblingWindowFrequency", + "modelAsString": true + } + }, + "RetryPolicy": { + "description": "Execution policy for an activity.", + "properties": { + "count": { + "type": "object", + "description": "Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "intervalInSeconds": { + "description": "Interval between retries in seconds. Default is 30.", + "type": "integer", + "minimum": 30, + "maximum": 86400 + } + } + }, + "TriggerReference": { + "description": "Trigger reference type.", + "type": "object", + "properties": { + "type": { + "description": "Trigger reference type.", + "type": "string", + "enum": [ + "TriggerReference" + ], + "x-ms-enum": { + "name": "TriggerReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "Reference trigger name.", + "type": "string" + } + }, + "required": [ + "type", + "referenceName" + ] + }, + "DependencyReference": { + "description": "Referenced dependency.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of dependency reference.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "TriggerDependencyReference": { + "description": "Trigger referenced dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DependencyReference" + } + ], + "properties": { + "referenceTrigger": { + "description": "Referenced trigger.", + "$ref": "#/definitions/TriggerReference" + } + }, + "required": [ + "referenceTrigger" + ] + }, + "TumblingWindowTriggerDependencyReference": { + "description": "Referenced tumbling window trigger dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TriggerDependencyReference" + } + ], + "properties": { + "offset": { + "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + }, + "size": { + "description": "The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + } + } + }, + "SelfDependencyTumblingWindowTriggerReference": { + "description": "Self referenced tumbling window trigger dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DependencyReference" + } + ], + "properties": { + "offset": { + "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + }, + "size": { + "description": "The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + } + }, + "required": [ + "offset" + ] + }, + "RerunTumblingWindowTrigger": { + "description": "Trigger that schedules pipeline reruns for all fixed time interval windows from a requested start time to requested end time.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "typeProperties": { + "description": "Rerun Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "parentTrigger": { + "type": "object", + "description": "The parent trigger reference." + }, + "requestedStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the time period for which restatement is initiated. Only UTC time is currently supported." + }, + "requestedEndTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the time period for which restatement is initiated. Only UTC time is currently supported." + }, + "maxConcurrency": { + "description": "The max number of parallel time windows (ready for execution) for which a rerun is triggered.", + "type": "integer", + "minimum": 1, + "maximum": 50 + } + }, + "required": [ + "requestedStartTime", + "requestedEndTime", + "maxConcurrency" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "ChainingTrigger": { + "description": "Trigger that allows the referenced pipeline to depend on other pipeline runs based on runDimension Name/Value pairs. Upstream pipelines should declare the same runDimension Name and their runs should have the values for those runDimensions. The referenced pipeline run would be triggered if the values for the runDimension match for all upstream pipeline runs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipeline": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference", + "description": "Pipeline for which runs are created when all upstream pipelines complete successfully." + }, + "typeProperties": { + "description": "Chaining Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/PipelineReference" + }, + "description": "Upstream Pipelines." + }, + "runDimension": { + "description": "Run Dimension property that needs to be emitted by upstream pipelines.", + "type": "string" + } + }, + "required": [ + "runDimension", + "dependsOn" + ] + } + }, + "required": [ + "pipeline", + "typeProperties" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json new file mode 100644 index 000000000000..1d0e4bb38f62 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:13 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1187", + "x-ms-request-id": "5465cf41-2e71-4ce6-8db4-9de1b92ffda9", + "x-ms-correlation-request-id": "5465cf41-2e71-4ce6-8db4-9de1b92ffda9" + }, + "body": { + "value": [ + { + "activityRunEnd": "2018-06-16T00:38:11.5445431Z", + "activityName": "ExampleForeachActivity", + "activityRunStart": "2018-06-16T00:37:49.4804925Z", + "activityType": "ForEach", + "durationInMs": 22064, + "retryAttempt": null, + "error": { + "errorCode": "", + "message": "", + "failureType": "", + "target": "ExampleForeachActivity" + }, + "activityRunId": "f30c5514-fb85-43ed-9fa4-768d42e58680", + "input": {}, + "linkedServiceName": "", + "output": {}, + "userProperties": {}, + "pipelineName": "examplePipeline", + "pipelineRunId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "status": "Succeeded" + }, + { + "activityRunEnd": "2018-06-16T00:38:07.4188923Z", + "activityName": "ExampleCopyActivity", + "activityRunStart": "2018-06-16T00:37:50.2460952Z", + "activityType": "Copy", + "durationInMs": 17172, + "retryAttempt": null, + "error": { + "errorCode": "", + "message": "", + "failureType": "", + "target": "ExampleCopyActivity" + }, + "activityRunId": "a96678c8-7167-4f00-b629-afccfbad4e51", + "input": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "linkedServiceName": "", + "output": { + "dataRead": 142000, + "dataWritten": 142000, + "filesRead": 1, + "filesWritten": 1, + "copyDuration": 6, + "throughput": 23.112, + "errors": [], + "effectiveIntegrationRuntime": "DefaultIntegrationRuntime (East US)", + "usedCloudDataMovementUnits": 4, + "usedParallelCopies": 1, + "executionDetails": [ + { + "source": { + "type": "AzureBlob" + }, + "sink": { + "type": "AzureBlob" + }, + "status": "Succeeded", + "start": "2018-06-16T00:37:50.68834Z", + "duration": 6, + "usedCloudDataMovementUnits": 4, + "usedParallelCopies": 1, + "detailedDurations": { + "queuingDuration": 4, + "transferDuration": 2 + } + } + ] + }, + "userProperties": {}, + "pipelineName": "examplePipeline", + "pipelineRunId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "status": "Succeeded" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json new file mode 100644 index 000000000000..3fe211fe4d36 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlow": { + "name": "dataflow1", + "properties": { + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "DelimitedText2", + "type": "DatasetReference" + }, + "name": "source1" + } + ], + "sinks": [], + "transformations": [], + "script": "\n\nsource(output(\n\t\tColumn_1 as string\n\t),\n\tallowSchemaDrift: true,\n\tvalidateSchema: false) ~> source1" + } + } + }, + "datasets": [ + { + "name": "dataset1", + "properties": { + "linkedServiceName": { + "referenceName": "linkedService5", + "type": "LinkedServiceReference" + }, + "annotations": [], + "type": "DelimitedText", + "typeProperties": { + "location": { + "type": "AzureBlobStorageLocation", + "fileName": "Ansiencoding.csv", + "container": "dataflow-sample-data" + }, + "columnDelimiter": ",", + "escapeChar": "\\", + "firstRowAsHeader": true, + "quoteChar": "\"" + }, + "schema": [ + { + "type": "String" + } + ] + } + } + ], + "linkedServices": [ + { + "name": "linkedService1", + "properties": { + "type": "AzureBlobStorage", + "typeProperties": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=;EndpointSuffix=core.windows.net;", + "encryptedCredential": "" + }, + "annotations": [] + } + } + ], + "debugSettings": { + "sourceSettings": [ + { + "sourceName": "source1", + "rowLimit": 1000 + }, + { + "sourceName": "source2", + "rowLimit": 222 + } + ], + "parameters": { + "sourcePath": "Toy" + }, + "datasetParameters": { + "Movies": { + "path": "abc" + }, + "Output": { + "time": "def" + } + } + }, + "sessionId": "f06ed247-9d07-49b2-b05e-2cb4a2fc871e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "jobVersion": "e5328ee7-c524-4207-8ba4-b709010db33d" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json new file mode 100644 index 000000000000..2b8e9fb98143 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlowName": "dataflow", + "existingClusterId": "1221221", + "clusterTimeout": 50, + "newClusterName": "newClusterName", + "newClusterNodeType": "newClusterNodeType", + "dataBricksLinkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + }, + "description": "Example description" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationStatuses/dfCreateSession$$229c688c-944c-44ac-b31a-82d50f347154?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "sessionId": "229c688c-944c-44ac-b31a-82d50f347154" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json new file mode 100644 index 000000000000..be1da7df23ce --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "sessionId": "91fb57e0-8292-47be-89ff-c8f2d2bb2a7e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json new file mode 100644 index 000000000000..45e86f142046 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlowName": "dataFlowName", + "commandPayload": { + "streamName": "source1", + "rowLimits": 100 + }, + "commandName": "executePreviewQuery", + "sessionId": "f06ed247-9d07-49b2-b05e-2cb4a2fc871e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/dfCommandOutput$$f06ed247-9d07-49b2-b05e-2cb4a2fc871e$$e5328ee7-c524-4207-8ba4-b709010db33d$$ace5eaf0-3e93-45ba-ada3-bf77da321a7b?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "status": "Succeeded", + "data": "some output" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json new file mode 100644 index 000000000000..8489bf43ada4 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "value": [ + { + "userObjectId": "0a7e0d6e-f2b7-48cc-8cd8-618326f5662f", + "startTime": "2019-09-05T18:23:20.3257799+00:00", + "lastActivityTime": "2019-09-05T18:28:00.9459674+00:00", + "dataflowName": "DebugSession-0a7e0d6e-f2b7-48cc-8cd8-618326f5662f", + "sessionId": "229c688c-944c-44ac-b31a-82d50f347154", + "coreCount": 48, + "computeType": "General", + "timeToLiveInMinutes": 60 + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json new file mode 100644 index 000000000000..b7ed67fcc853 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifMatch": null, + "dataFlow": { + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2019 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1194", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0066d4-0000-0000-0000-5b245bd20000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json new file mode 100644 index 000000000000..c17410917a90 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json new file mode 100644 index 000000000000..62b69ff0b194 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifNoneMatch": "15004c4f-0000-0200-0000-5cbe090e0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:50 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11993", + "x-ms-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b", + "x-ms-correlation-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/dataflows/exampleDataFlow", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "15004c4f-0000-0200-0000-5cbe090e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json new file mode 100644 index 000000000000..822e92e95dcc --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:40 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14992", + "x-ms-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d", + "x-ms-correlation-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/dataflows/exampleDataFlow", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json new file mode 100644 index 000000000000..7dd8812dadde --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifMatch": null, + "dataFlow": { + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2019 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1193", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30002" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json new file mode 100644 index 000000000000..ac06a1b294d9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifMatch": null, + "dataset": { + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1194", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "schema": [ + { + "name": "col1", + "type": "INT_32" + }, + { + "name": "col2", + "type": "Decimal", + "precision": "38", + "scale": "2" + } + ], + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0066d4-0000-0000-0000-5b245bd20000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json new file mode 100644 index 000000000000..e82de485176e --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json new file mode 100644 index 000000000000..e144948c6a4a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifNoneMatch": "15004c4f-0000-0200-0000-5cbe090e0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:50 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11993", + "x-ms-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b", + "x-ms-correlation-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "15004c4f-0000-0200-0000-5cbe090e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json new file mode 100644 index 000000000000..f447e965203b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:40 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14992", + "x-ms-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d", + "x-ms-correlation-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json new file mode 100644 index 000000000000..bbb243a3e705 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifMatch": null, + "dataset": { + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:39 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1193", + "x-ms-request-id": "e2e7f6be-e7ee-4aae-943f-6ff799e034f2", + "x-ms-correlation-request-id": "e2e7f6be-e7ee-4aae-943f-6ff799e034f2" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json new file mode 100644 index 000000000000..a390ebc6a97a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifMatch": null, + "linkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:34 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1196", + "x-ms-request-id": "b3b336b3-b203-4654-9cb6-a3a8d3a4b5de", + "x-ms-correlation-request-id": "b3b336b3-b203-4654-9cb6-a3a8d3a4b5de" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfM2FiMTk0NjYtNWUxNi00NzU1LWJlNzktMjI2ZTVmZWU3YzY0Ig0KfQ==" + } + }, + "etag": "0a0062d4-0000-0000-0000-5b245bcf0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json new file mode 100644 index 000000000000..e4cc97bbd8e9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json new file mode 100644 index 000000000000..0febc6bb3664 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifNoneMatch": "1500474f-0000-0200-0000-5cbe090d0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:48 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11995", + "x-ms-request-id": "99e5d0d9-55e6-45a0-8bd2-cf39210f317c", + "x-ms-correlation-request-id": "99e5d0d9-55e6-45a0-8bd2-cf39210f317c" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkhWVEVTVEVYQU1QTEVTXzg5MjU1NGY0LTViNGItNDFhOS1hYWYxLTg4ZWI5ZDBjOWIzMyINCn0=" + }, + "description": "Example description" + }, + "etag": "1500474f-0000-0200-0000-5cbe090d0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json new file mode 100644 index 000000000000..2624517adc08 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:36 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14994", + "x-ms-request-id": "558d0fd8-dc1f-44b6-9ca9-59fcca8af9a5", + "x-ms-correlation-request-id": "558d0fd8-dc1f-44b6-9ca9-59fcca8af9a5" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfMGI2M2EyMmYtMGEzNC00NDg2LWIzMDktNzM0NTlkODUyY2Q1Ig0KfQ==" + }, + "description": "Example description" + }, + "etag": "0a0064d4-0000-0000-0000-5b245bd00000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json new file mode 100644 index 000000000000..a5b3f337bcf1 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifMatch": null, + "linkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + }, + "description": "Example description" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:36 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1195", + "x-ms-request-id": "53ad9761-ecdf-43ed-916f-878a5fb92cb0", + "x-ms-correlation-request-id": "53ad9761-ecdf-43ed-916f-878a5fb92cb0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfMGI2M2EyMmYtMGEzNC00NDg2LWIzMDktNzM0NTlkODUyY2Q1Ig0KfQ==" + }, + "description": "Example description" + }, + "etag": "0a0064d4-0000-0000-0000-5b245bd00000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json new file mode 100644 index 000000000000..6e096bebb3de --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifMatch": null, + "noteBook": { + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json new file mode 100644 index 000000000000..5b9d485f645f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json new file mode 100644 index 000000000000..1231f1525ebb --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + }, + "304": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json new file mode 100644 index 000000000000..b45c79479777 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json new file mode 100644 index 000000000000..b45c79479777 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json new file mode 100644 index 000000000000..3add275201f5 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifMatch": null, + "noteBook": { + "properties": { + "description": "Modified description", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "Modified description", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json new file mode 100644 index 000000000000..240fccae8866 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json new file mode 100644 index 000000000000..c70c28bcd545 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:02 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14988", + "x-ms-request-id": "6d9de9bd-a412-4a6f-8b9e-37d369323646", + "x-ms-correlation-request-id": "6d9de9bd-a412-4a6f-8b9e-37d369323646" + }, + "body": { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "80a01654a9d34ad18b3fcac5d5d76b67", + "name": "Manual" + }, + "runStart": "2018-06-16T00:37:44.6257014Z", + "runEnd": "2018-06-16T00:38:12.7314495Z", + "durationInMs": 28105, + "status": "Succeeded", + "message": "", + "lastUpdated": "2018-06-16T00:38:12.7314495Z", + "annotations": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json new file mode 100644 index 000000000000..729a2293c584 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z", + "filters": [ + { + "operand": "PipelineName", + "operator": "Equals", + "values": [ + "examplePipeline" + ] + } + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "value": [ + { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "80a01654a9d34ad18b3fcac5d5d76b67", + "name": "Manual" + }, + "runStart": "2018-06-16T00:37:44.6257014Z", + "runEnd": "2018-06-16T00:38:12.7314495Z", + "durationInMs": 28105, + "status": "Succeeded", + "message": "", + "lastUpdated": "2018-06-16T00:38:12.7314495Z", + "annotations": [], + "runDimension": { + "JobId": "79c1cc52-265f-41a5-9553-be65e736fbd3" + } + }, + { + "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "7c5fd7ef7e8a464b98b931cf15fcac66", + "name": "Manual" + }, + "runStart": "2018-06-16T00:39:49.2745128Z", + "runEnd": null, + "durationInMs": null, + "status": "Cancelled", + "message": "", + "lastUpdated": "2018-06-16T00:39:51.216097Z", + "annotations": [], + "runDimension": { + "JobId": "84a3c493-0628-4b44-852f-ef5b3a11bdab" + } + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json new file mode 100644 index 000000000000..aa5d08c13e96 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifMatch": null, + "pipeline": { + "properties": { + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + }, + "JobId": { + "type": "String" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + }, + "JobId": { + "type": "String" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } + } + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json new file mode 100644 index 000000000000..9ccab2c1f7a4 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "referencePipelineRunId": null, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:48 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1190", + "x-ms-request-id": "5c2b442b-d360-43ec-9268-f923f88f31fd", + "x-ms-correlation-request-id": "5c2b442b-d360-43ec-9268-f923f88f31fd" + }, + "body": { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json new file mode 100644 index 000000000000..cb459371f543 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json new file mode 100644 index 000000000000..5336cd82dc2b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:51 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11991", + "x-ms-request-id": "f3865c61-4888-4b91-a617-9a985d9dd0fd", + "x-ms-correlation-request-id": "f3865c61-4888-4b91-a617-9a985d9dd0fd" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json new file mode 100644 index 000000000000..d5ecfa79951a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json new file mode 100644 index 000000000000..831858484fd3 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifMatch": null, + "pipeline": { + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1191", + "x-ms-request-id": "91a763b0-d944-493f-83fc-e989c8b6e122", + "x-ms-correlation-request-id": "91a763b0-d944-493f-83fc-e989c8b6e122" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json new file mode 100644 index 000000000000..6572cbb38414 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifMatch": null, + "sparkJobDefinition": { + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json new file mode 100644 index 000000000000..e274b30ea43a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json @@ -0,0 +1,167 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionAzureResource": { + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/arcadiaSpark$$exampleBigDataPool$$batch$$1?api-version=2019-11-01-preview" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "currentState": "running", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "currentState": "running" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "currentState": "running" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "running", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + }, + "200": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "successAt": "2019-09-13T23:38:57.2737498+00:00", + "currentState": "success", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "endedAt": "2019-09-13T23:38:57.5375224+00:00", + "currentState": "Ended" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "monitoringStartedAt": "2019-09-13T23:38:09.0304334+00:00", + "cleanupStartedAt": "2019-09-13T23:38:57.3472897+00:00", + "currentState": "Ended" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "success", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json new file mode 100644 index 000000000000..5ebb9f424a2a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json new file mode 100644 index 000000000000..0c8aabb09867 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/arcadiaSpark$$exampleBigDataPool$$batch$$1?api-version=2019-11-01-preview" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "currentState": "running", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "currentState": "running" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "currentState": "running" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "running", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + }, + "200": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "successAt": "2019-09-13T23:38:57.2737498+00:00", + "currentState": "success", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "endedAt": "2019-09-13T23:38:57.5375224+00:00", + "currentState": "Ended" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "monitoringStartedAt": "2019-09-13T23:38:09.0304334+00:00", + "cleanupStartedAt": "2019-09-13T23:38:57.3472897+00:00", + "currentState": "Ended" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "success", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json new file mode 100644 index 000000000000..d36ba238c79a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + }, + "304": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json new file mode 100644 index 000000000000..f05b845f65ba --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json new file mode 100644 index 000000000000..005764c7dc47 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifMatch": null, + "sparkJobDefinition": { + "properties": { + "description": "modified description", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "modified description", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json new file mode 100644 index 000000000000..5dc6861614b9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifMatch": null, + "sqlScript": { + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json new file mode 100644 index 000000000000..e67581c0ef4d --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json new file mode 100644 index 000000000000..829447fd448f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json new file mode 100644 index 000000000000..c999df7b1828 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json new file mode 100644 index 000000000000..0c377a063cbd --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifMatch": null, + "sqlScript": { + "properties": { + "description": "modified description", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "modified description", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json new file mode 100644 index 000000000000..48c13c4038c3 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z", + "filters": [ + { + "operand": "TriggerName", + "operator": "Equals", + "values": [ + "exampleTrigger" + ] + } + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:22 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "fb328f3e-d21e-44f7-80d7-dad60c955b4d", + "x-ms-correlation-request-id": "fb328f3e-d21e-44f7-80d7-dad60c955b4d" + }, + "body": { + "value": [ + { + "triggerName": "exampleTrigger", + "triggerRunId": "08586724970898148904457116912CU27", + "triggerType": "ScheduleTrigger", + "triggerRunTimestamp": "2018-06-16T00:43:15.660141Z", + "status": "Succeeded", + "message": "", + "properties": { + "TriggerTime": "6/16/2018 12:43:15 AM", + "ScheduleTime": "6/16/2018 12:43:14 AM" + }, + "triggeredPipelines": { + "examplePipeline": "9f3ce8b3-37d7-43eb-96ac-a656c0476283" + } + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json new file mode 100644 index 000000000000..edd3551ad448 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:24 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231", + "x-ms-correlation-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json new file mode 100644 index 000000000000..d7210bda0148 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifMatch": null, + "trigger": { + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:13.8441801Z", + "endTime": "2018-06-16T00:55:13.8441801Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:14 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1186", + "x-ms-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb", + "x-ms-correlation-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:13.8441801Z", + "endTime": "2018-06-16T00:55:13.8441801Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "runtimeState": "Stopped" + }, + "etag": "0a008ad4-0000-0000-0000-5b245c6e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json new file mode 100644 index 000000000000..430e2cfba554 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json new file mode 100644 index 000000000000..bc4d1d09b735 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifNoneMatch": "1500544f-0000-0200-0000-5cbe09100000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:52 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11989", + "x-ms-request-id": "8ad1759f-24c1-46a5-aef5-edd267e18870", + "x-ms-correlation-request-id": "8ad1759f-24c1-46a5-aef5-edd267e18870" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2019-04-22T18:32:52.527912Z", + "endTime": "2019-04-22T18:48:52.5281747Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "runtimeState": "Stopped" + }, + "etag": "1500544f-0000-0200-0000-5cbe09100000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json new file mode 100644 index 000000000000..89e4b4c407c0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Enabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json new file mode 100644 index 000000000000..ec31d1d1ad90 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:20 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14986", + "x-ms-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3", + "x-ms-correlation-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description", + "runtimeState": "Started" + }, + "etag": "0a008ed4-0000-0000-0000-5b245c740000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json new file mode 100644 index 000000000000..8d61a0a08228 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json new file mode 100644 index 000000000000..8d61a0a08228 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json new file mode 100644 index 000000000000..012cdd41ae33 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger/getEventSubscriptionStatus?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Enabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json new file mode 100644 index 000000000000..c3df05a1a218 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger/getEventSubscriptionStatus?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Disabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json new file mode 100644 index 000000000000..ae377e99c8c9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifMatch": null, + "trigger": { + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:15 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1185", + "x-ms-request-id": "d5ccf096-0618-4b26-9829-db77e4c391c7", + "x-ms-correlation-request-id": "d5ccf096-0618-4b26-9829-db77e4c391c7" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description", + "runtimeState": "Stopped" + }, + "etag": "0a008dd4-0000-0000-0000-5b245c6f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json new file mode 100644 index 000000000000..97212e8071ce --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview", + "request": { + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json new file mode 100644 index 000000000000..ba09f1f27aa0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleAssignmentId": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json new file mode 100644 index 000000000000..4374be7f52ec --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleAssignmentId": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json new file mode 100644 index 000000000000..2dca414a3784 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": [ + "00000000-0000-0000-0000-000000000000", + "10000000-0000-0000-0000-000000000000" + ] + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json new file mode 100644 index 000000000000..f1af57ba8b4b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "headers": { + "x-ms-continuation": null + }, + "body": [ + { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + { + "id": "10000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "10000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + ] + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json new file mode 100644 index 000000000000..5c6f07d2e9f0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "Synapse role name", + "isBuiltIn": true + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json new file mode 100644 index 000000000000..74838831ed04 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "00000000-0000-0000-0000-000000000000", + "name": "Synapse role name 1", + "isBuiltIn": true + }, + { + "id": "10000000-0000-0000-0000-000000000000", + "name": "Synapse role name 2", + "isBuiltIn": true + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_GetAccessControlInfo.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_GetAccessControlInfo.json deleted file mode 100644 index b4eaf8e4be0a..000000000000 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_GetAccessControlInfo.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "workspaceName": "myWorkspace", - "SynapseDnsSuffix": "dev.azuresynapse.net", - "api-version": "2019-11-01-preview", - "resource": { - "artifactType": "Workspace", - "artifactName": "theWorkspaceName" - } - }, - "responses": { - "200": { - "body": { - "administrators": [ - "00000000-0000-0000-0000-000000000000" - ], - "etag": "theEtagValue", - "accessControlList": { - "00000000-0000-0000-0000-000000000000": [ - "readcatalog" - ] - } - } - } - } -} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_SetWorkspaceAdministrators.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_SetWorkspaceAdministrators.json deleted file mode 100644 index 3e1b79235c8f..000000000000 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/WorkspaceAcl_SetWorkspaceAdministrators.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "workspaceName": "myWorkspace", - "SynapseDnsSuffix": "dev.azuresynapse.net", - "api-version": "2019-11-01-preview", - "request": { - "administrators": [ - "00000000-0000-0000-0000-000000000000", - "00000000-1111-0000-2222-000000000000" - ] - } - }, - "responses": { - "200": { - "body": { - "administrators": [ - "00000000-0000-0000-0000-000000000000" - ], - "etag": "theEtagValue", - "accessControlList": { - "00000000-0000-0000-0000-000000000000": [ - "readcatalog", - "createtrigger", - "readmetadata" - ] - } - } - } - } -} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json new file mode 100644 index 000000000000..922d6074a432 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json @@ -0,0 +1,394 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/rbac/roleAssignments": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateRoleAssignment", + "description": "Create role assignment.", + "x-ms-examples": { + "Create role assignment": { + "$ref": "./examples/RoleAssignments_CreateRoleAssignment.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "request", + "in": "body", + "required": true, + "description": "Details of role id and object id.", + "schema": { + "$ref": "#/definitions/RoleAssignmentRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListRoleAssignments", + "description": "List role assignments.", + "x-ms-examples": { + "Get role assignment information": { + "$ref": "./examples/RoleAssignments_ListRoleAssignments.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleIdParameterInQuery" + }, + { + "$ref": "#/parameters/PrincipalIdParameter" + }, + { + "$ref": "#/parameters/XMsContinuationToken" + } + ], + "responses": { + "200": { + "description": "Success response.", + "headers": { + "x-ms-continuation": { + "description": "If the number of role assignments to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the role assignments.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/RoleAssignmentDetailsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/roleAssignments/{roleAssignmentId}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetRoleAssignmentById", + "description": "Get role assignment by role assignment Id.", + "x-ms-examples": { + "Get role assignment information": { + "$ref": "./examples/RoleAssignments_GetRoleAssignmentById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteRoleAssignmentById", + "description": "Delete role assignment by role assignment Id.", + "x-ms-examples": { + "Delete role assignment": { + "$ref": "./examples/RoleAssignments_DeleteRoleAssignmentById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/getMyAssignedRoles": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListCallerRoleAssignments", + "description": "List role assignments of the caller.", + "x-ms-examples": { + "Get caller role assignments": { + "$ref": "./examples/RoleAssignments_ListCallerRoleAssignments.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "type": "array", + "items": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + } + }, + "definitions": { + "ErrorContract": { + "title": "Error details.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "ErrorResponse": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + } + }, + "ErrorDetail": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + } + } + }, + "RoleAssignmentDetailsList": { + "description": "A list of role assignments", + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "RoleAssignmentRequest": { + "description": "Role Assignment request details", + "type": "object", + "properties": { + "roleId": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + }, + "principalId": { + "description": "Object ID of the AAD principal or security-group", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "roleId", + "principalId" + ] + }, + "RoleAssignmentDetails": { + "description": "Role Assignment response details", + "type": "object", + "properties": { + "id": { + "description": "Role Assignment ID", + "type": "string" + }, + "roleId": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + }, + "principalId": { + "description": "Object ID of the AAD principal or security-group", + "format": "uuid", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + }, + "RoleIdParameterInQuery": { + "name": "roleId", + "in": "query", + "required": false, + "type": "string", + "description": "Synapse Built-In Role Id.", + "x-ms-parameter-location": "method" + }, + "PrincipalIdParameter": { + "name": "principalId", + "in": "query", + "required": false, + "type": "string", + "description": "Object ID of the AAD principal or security-group.", + "x-ms-parameter-location": "method" + }, + "RoleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "XMsContinuationToken": { + "name": "x-ms-continuation", + "in": "header", + "required": false, + "type": "string", + "description": "Continuation token.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json new file mode 100644 index 000000000000..f566e171de1f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json @@ -0,0 +1,173 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/rbac/roles": { + "get": { + "tags": [ + "SynapseRoles" + ], + "operationId": "Roles_ListRoles", + "description": "List roles.", + "x-ms-examples": { + "Get access control information": { + "$ref": "./examples/Roles_ListRoles.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RolesListResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./roleAssignments.json#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/roles/{roleId}": { + "get": { + "tags": [ + "SynapseRoles" + ], + "operationId": "Roles_GetRoleById", + "description": "Get role by role Id.", + "x-ms-examples": { + "Get access control information": { + "$ref": "./examples/Roles_GetRoleById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/SynapseRole" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./roleAssignments.json#/definitions/ErrorContract" + } + } + } + } + } + }, + "definitions": { + "RolesListResponse": { + "description": "A list of Synapse roles available.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Synapse roles.", + "items": { + "$ref": "#/definitions/SynapseRole" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "SynapseRole": { + "description": "Synapse role details", + "type": "object", + "properties": { + "id": { + "description": "Role ID", + "format": "uuid", + "type": "string" + }, + "name": { + "description": "Name of the Synapse role", + "type": "string" + }, + "isBuiltIn": { + "description": "Is a built-in role or not", + "type": "boolean" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + }, + "RoleIdParameter": { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "Synapse Built-In Role Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json deleted file mode 100644 index e5483995189c..000000000000 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json +++ /dev/null @@ -1,247 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2019-11-01-preview", - "title": "SynapseClient" - }, - "x-ms-parameterized-host": { - "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", - "parameters": [ - { - "name": "workspaceName", - "description": "The name of the workspace to execute operations on.", - "required": true, - "type": "string", - "in": "path", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/SynapseDnsSuffixInPath" - } - ] - }, - "schemes": [ - "https" - ], - "paths": { - "/getAccessControl": { - "post": { - "tags": [ - "WorkspaceAcl" - ], - "operationId": "WorkspaceAcl_GetAccessControlInfo", - "description": "Get access control info.", - "x-ms-examples": { - "Get access control information": { - "$ref": "./examples/WorkspaceAcl_GetAccessControlInfo.json" - } - }, - "consumes": [ - "application/json", - "text/json" - ], - "produces": [ - "application/json", - "text/json" - ], - "parameters": [ - { - "name": "resource", - "in": "body", - "required": true, - "description": "The resource to get the access control info for.", - "schema": { - "$ref": "#/definitions/GetAccessControlInfoRequest" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Success response.", - "schema": { - "$ref": "#/definitions/WorkspaceAccessControlResponse" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/setWorkspaceAdmins": { - "post": { - "tags": [ - "WorkspaceAcl" - ], - "operationId": "WorkspaceAcl_SetWorkspaceAdministrators", - "description": "Replace Admins of the Workspace.", - "x-ms-examples": { - "Set workspace admins": { - "$ref": "./examples/WorkspaceAcl_SetWorkspaceAdministrators.json" - } - }, - "consumes": [ - "application/json", - "text/json" - ], - "produces": [ - "application/json", - "text/json" - ], - "parameters": [ - { - "name": "request", - "in": "body", - "required": true, - "description": "Details of administrators object-ids.", - "schema": { - "$ref": "#/definitions/SetWorkspaceAdministratorsRequest" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Admin list set succeeded.", - "schema": { - "$ref": "#/definitions/WorkspaceAccessControlResponse" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "GetAccessControlInfoRequest": { - "type": "object", - "properties": { - "artifactType": { - "enum": [ - "Workspace" - ], - "x-ms-enum": { - "name": "artifactType", - "modelAsString": true - }, - "type": "string" - }, - "artifactName": { - "type": "string" - } - } - }, - "WorkspaceAccessControlResponse": { - "type": "object", - "properties": { - "administrators": { - "type": "array", - "items": { - "format": "uuid", - "type": "string", - "example": "00000000-0000-0000-0000-000000000000" - } - }, - "etag": { - "type": "string" - }, - "accessControlList": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - }, - "ErrorResponse": { - "required": [ - "code", - "message" - ], - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "target": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/ErrorDetail" - } - } - } - }, - "ErrorDetail": { - "required": [ - "code", - "message" - ], - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "target": { - "type": "string" - } - } - }, - "SetWorkspaceAdministratorsRequest": { - "type": "object", - "properties": { - "administrators": { - "type": "array", - "items": { - "format": "uuid", - "type": "string", - "example": "00000000-0000-0000-0000-000000000000" - } - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The Synapse client API Version." - }, - "SynapseDnsSuffixInPath": { - "name": "SynapseDnsSuffix", - "in": "path", - "required": true, - "type": "string", - "default": "dev.azuresynapse.net", - "x-ms-skip-url-encoding": true, - "description": "Gets the DNS suffix used as the base for all Synapse service requests.", - "x-ms-parameter-location": "client" - } - } -} diff --git a/specification/synapse/data-plane/readme.md b/specification/synapse/data-plane/readme.md index 2531896af91c..f2f3be08766f 100644 --- a/specification/synapse/data-plane/readme.md +++ b/specification/synapse/data-plane/readme.md @@ -61,7 +61,9 @@ These settings apply only when `--tag=package-2019-11-01-preview` is specified o input-file: - Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json - Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json -- Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json +- Microsoft.Synapse/preview/2019-11-01-preview/roles.json +- Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json +- Microsoft.Synapse/preview/2019-11-01-preview/adf/datafactory.json ``` --- @@ -103,7 +105,9 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json - - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/workspaceAcl.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/roles.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/adf/datafactory.json ``` diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json new file mode 100644 index 000000000000..d2b7cdc9fb4a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by abc@example.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Provisioning", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json index d602af775cc0..1083a7b95955 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json @@ -14,7 +14,8 @@ "filesystem": "default" }, "sqlAdministratorLogin": "login", - "sqlAdministratorLoginPassword": "password" + "sqlAdministratorLoginPassword": "password", + "managedVirtualNetwork": "default" }, "location": "East US", "tags": { @@ -46,7 +47,26 @@ "sqlAdministratorLogin": "login", "sqlAdministratorLoginPassword": "password", "managedResourceGroupName": "resourceGroup2", - "provisioningState": "Succeeded" + "managedVirtualNetwork": "default", + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "tags": { "key": "value" @@ -71,6 +91,7 @@ "sqlAdministratorLogin": "login", "sqlAdministratorLoginPassword": "password", "managedResourceGroupName": "resourceGroup2", + "managedVirtualNetwork": "default", "provisioningState": "Provisioning" }, "tags": { diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..c870df7d7f65 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview" + }, + "responses": { + "202": { + "body": { + "status": "InProgress" + } + }, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json new file mode 100644 index 000000000000..58113ac90886 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Succeeded" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..6fdb270b243c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json new file mode 100644 index 000000000000..2b32a179879b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateLinkResourceName": "sql", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json index ea511fdf4007..4e42ed4fd980 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json @@ -24,7 +24,25 @@ "sqlAdministratorLogin": "login", "sqlAdministratorLoginPassword": "password", "managedResourceGroupName": "resourceGroup2", - "provisioningState": "Succeeded" + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "tags": { "key": "value" diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json new file mode 100644 index 000000000000..3a6aed616b9d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json new file mode 100644 index 000000000000..cd3faab03c45 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Fri, 17 Aug 2018 06:31:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa", + "x-ms-correlation-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6743.6", + "registerTime": "2018-08-17T03:44:55.8012825Z", + "lastConnectTime": "2018-08-17T06:30:46.6262976Z", + "lastStartTime": "2018-08-17T03:45:30.8499851Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 20 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json new file mode 100644 index 000000000000..0e027623b8df --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:36:39 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728", + "x-ms-correlation-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728" + }, + "body": { + "ipAddress": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json new file mode 100644 index 000000000000..9f95b676d2e9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "updateIntegrationRuntimeNodeRequest": { + "concurrentJobsLimit": 2 + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:01:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83", + "x-ms-correlation-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T15:00:35.7544322Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "concurrentJobsLimit": 2, + "maxConcurrentJobs": 56 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json new file mode 100644 index 000000000000..fafa1dfeca2a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json @@ -0,0 +1,432 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "getMetadataRequest": { + "metadataPath": "ssisFolders" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:54 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd", + "x-ms-correlation-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd" + }, + "body": { + "value": [ + { + "id": 1, + "name": "TestFolder", + "description": "" + }, + { + "id": 2, + "name": "EnvironmentFolder", + "description": "" + }, + { + "id": 3, + "name": "ActivityTest", + "description": "" + }, + { + "id": 4, + "name": "这是文件夹", + "description": "" + }, + { + "id": 5, + "name": "1" + }, + { + "id": 6, + "name": "2" + }, + { + "id": 7, + "name": "3" + }, + { + "id": 8, + "name": "4" + }, + { + "id": 9, + "name": "5" + }, + { + "id": 10, + "name": "6" + }, + { + "id": 11, + "name": "7" + }, + { + "id": 12, + "name": "8" + }, + { + "id": 13, + "name": "9" + }, + { + "id": 14, + "name": "10" + }, + { + "id": 15, + "name": "11" + }, + { + "id": 16, + "name": "12" + }, + { + "id": 17, + "name": "13" + }, + { + "id": 18, + "name": "14" + }, + { + "id": 19, + "name": "15" + }, + { + "id": 20, + "name": "16" + }, + { + "id": 21, + "name": "17" + }, + { + "id": 22, + "name": "18" + }, + { + "id": 23, + "name": "19" + }, + { + "id": 24, + "name": "20" + }, + { + "id": 25, + "name": "21" + }, + { + "id": 26, + "name": "22" + }, + { + "id": 27, + "name": "23" + }, + { + "id": 28, + "name": "24" + }, + { + "id": 29, + "name": "25" + }, + { + "id": 30, + "name": "26" + }, + { + "id": 31, + "name": "27" + }, + { + "id": 32, + "name": "28" + }, + { + "id": 33, + "name": "29" + }, + { + "id": 34, + "name": "30" + }, + { + "id": 35, + "name": "31" + }, + { + "id": 36, + "name": "32" + }, + { + "id": 37, + "name": "33" + }, + { + "id": 38, + "name": "34" + }, + { + "id": 39, + "name": "35" + }, + { + "id": 40, + "name": "36" + }, + { + "id": 41, + "name": "37" + }, + { + "id": 42, + "name": "38" + }, + { + "id": 43, + "name": "39" + }, + { + "id": 44, + "name": "40" + }, + { + "id": 45, + "name": "41" + }, + { + "id": 46, + "name": "42" + }, + { + "id": 47, + "name": "43" + }, + { + "id": 48, + "name": "44" + }, + { + "id": 49, + "name": "45" + }, + { + "id": 50, + "name": "46" + }, + { + "id": 51, + "name": "47" + }, + { + "id": 52, + "name": "48" + }, + { + "id": 53, + "name": "49" + }, + { + "id": 54, + "name": "50" + }, + { + "id": 55, + "name": "51" + }, + { + "id": 56, + "name": "52" + }, + { + "id": 57, + "name": "53" + }, + { + "id": 58, + "name": "54" + }, + { + "id": 59, + "name": "55" + }, + { + "id": 60, + "name": "56" + }, + { + "id": 61, + "name": "57" + }, + { + "id": 62, + "name": "58" + }, + { + "id": 63, + "name": "59" + }, + { + "id": 64, + "name": "60" + }, + { + "id": 65, + "name": "61" + }, + { + "id": 66, + "name": "62" + }, + { + "id": 67, + "name": "63" + }, + { + "id": 68, + "name": "64" + }, + { + "id": 69, + "name": "65" + }, + { + "id": 70, + "name": "66" + }, + { + "id": 71, + "name": "67" + }, + { + "id": 72, + "name": "68" + }, + { + "id": 73, + "name": "69" + }, + { + "id": 74, + "name": "70" + }, + { + "id": 75, + "name": "71" + }, + { + "id": 76, + "name": "72" + }, + { + "id": 77, + "name": "73" + }, + { + "id": 78, + "name": "74" + }, + { + "id": 79, + "name": "75" + }, + { + "id": 80, + "name": "76" + }, + { + "id": 81, + "name": "77" + }, + { + "id": 82, + "name": "78" + }, + { + "id": 83, + "name": "79" + }, + { + "id": 84, + "name": "80" + }, + { + "id": 85, + "name": "81" + }, + { + "id": 86, + "name": "82" + }, + { + "id": 87, + "name": "83" + }, + { + "id": 88, + "name": "84" + }, + { + "id": 89, + "name": "85" + }, + { + "id": 90, + "name": "86" + }, + { + "id": 91, + "name": "87" + }, + { + "id": 92, + "name": "88" + }, + { + "id": 93, + "name": "89" + }, + { + "id": 94, + "name": "90" + }, + { + "id": 95, + "name": "91" + }, + { + "id": 96, + "name": "92" + }, + { + "id": 97, + "name": "93" + }, + { + "id": 98, + "name": "94" + }, + { + "id": 99, + "name": "95" + }, + { + "id": 100, + "name": "96" + } + ], + "nextLink": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationRuntimes/testactivityv2/getObjectMetadata?api-version=2019-06-01-preview&%24skipToken=https%3a%2f%2fwcu.frontend.clouddatahub.net%2fsubscriptions%2f12345678-1234-1234-1234-12345678abc%2fdatafactories%2f6C8E7C90-FD45-4010-8B7C-B5227D0F0CB7%2fintegrationruntimes%2fTESTACTIVITYV2%2fgetSsisObjectMetadata%3f%24skipToken%3dc3Npc0ZvbGRlcnNAQDIwMTgtMTEtMjlUMDM6NTk6MzIuMDQ1Mzc1MiswMDowMEBAZm9sZGVyQEAwMDAwMDAwMDAwMDAwMDAwMTAx0%26api-version%3d1.0" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json new file mode 100644 index 000000000000..8154da9d21d0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:53 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11999", + "x-ms-request-id": "20708242-215c-4101-9437-44590b27cdbf", + "x-ms-correlation-request-id": "20708242-215c-4101-9437-44590b27cdbf" + }, + "body": { + "status": "Succeeded", + "name": "ca63c855b72d44959653ffcc6eb0b96c", + "properties": null, + "error": null + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json new file mode 100644 index 000000000000..225ba8b38f01 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifMatch": null, + "integrationRuntime": { + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + } + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 22:20:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1197", + "x-ms-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd", + "x-ms-correlation-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "000046c4-0000-0000-0000-5b2198bf0000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json new file mode 100644 index 000000000000..37046b23a1aa --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json new file mode 100644 index 000000000000..f932b98520b6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifNoneMatch": "15003c4f-0000-0200-0000-5cbe090b0000", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11997", + "x-ms-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9", + "x-ms-correlation-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "15003c4f-0000-0200-0000-5cbe090b0000" + } + }, + "304": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json new file mode 100644 index 000000000000..f86e6ced9a1b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:21 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14998", + "x-ms-request-id": "05774db5-e79b-4224-9097-46714b92fbd8", + "x-ms-correlation-request-id": "05774db5-e79b-4224-9097-46714b92fbd8" + }, + "body": { + "version": "3.8.6730.2", + "publicKey": "**********", + "serviceToken": "**********", + "identityCertThumbprint": "**********", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "isIdentityCertExprired": false + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json new file mode 100644 index 000000000000..9545975783d9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:27:44 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7", + "x-ms-correlation-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7" + }, + "body": { + "name": "exampleIntegrationRuntime", + "nodes": [ + { + "nodeName": "Node_1", + "availableMemoryInMB": 16740, + "cpuUtilization": 15, + "concurrentJobsLimit": 28, + "concurrentJobsRunning": 0, + "sentBytes": 2.6474916934967041, + "receivedBytes": 6.7314233779907227 + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json new file mode 100644 index 000000000000..7e6edc5e61cb --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:22 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14997", + "x-ms-request-id": "19efe790-074f-4241-ae94-0422935d0f46", + "x-ms-correlation-request-id": "19efe790-074f-4241-ae94-0422935d0f46" + }, + "body": { + "name": "exampleIntegrationRuntime", + "properties": { + "state": "Online", + "type": "SelfHosted", + "typeProperties": { + "autoUpdate": "Off", + "taskQueueId": "1a6296ab-423c-4346-9bcc-85a78c2c0582", + "version": "3.8.6730.2", + "nodes": [ + { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T14:52:59.8933313Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 56 + } + ], + "updateDelayOffset": "PT3H", + "localTimeZoneOffset": "PT8H", + "serviceUrls": [ + "wu.frontend.int.clouddatahub-int.net", + "*.servicebus.windows.net" + ], + "versionStatus": "UpToDate", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "latestVersion": "3.7.6711.1", + "createTime": "2018-06-14T09:17:45.1839685Z" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json new file mode 100644 index 000000000000..40e67e084c76 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:51:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9", + "x-ms-correlation-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9" + }, + "body": { + "authKey1": "**********", + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json new file mode 100644 index 000000000000..82fa0bc4b4d2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "ifNoneMatch": null, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:05 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14909", + "x-ms-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b", + "x-ms-correlation-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json new file mode 100644 index 000000000000..073ce3ef42ed --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "regenerateKeyParameters": { + "keyName": "authKey2" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:50:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "25af6d34-52c6-40a4-a882-16052af85c99", + "x-ms-correlation-request-id": "25af6d34-52c6-40a4-a882-16052af85c99" + }, + "body": { + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json new file mode 100644 index 000000000000..0975a4604ab5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14912", + "x-ms-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677", + "x-ms-correlation-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677" + }, + "body": { + "name": "exampleManagedIntegrationRuntime", + "properties": { + "dataFactoryName": "exampleWorkspaceName", + "type": "Managed", + "state": "Started", + "typeProperties": { + "nodes": [], + "otherErrors": [], + "createTime": "2018-06-13T21:11:01.8695494Z" + } + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json new file mode 100644 index 000000000000..b6638ec59d52 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json new file mode 100644 index 000000000000..11b0fe38e4d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json new file mode 100644 index 000000000000..dbfe57456bf9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "updateIntegrationRuntimeRequest": { + "autoUpdate": "Off", + "updateDelayOffset": "\"PT3H\"" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d", + "x-ms-correlation-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json new file mode 100644 index 000000000000..11b0fe38e4d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json new file mode 100644 index 000000000000..a0db48624fc4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..952e006d6cba --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json index 0d6c2c85bb07..14abbbfe6c6f 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json @@ -48,6 +48,7 @@ "creationDate": "1970-01-01T00:00:00.000Z" } } - } + }, + "202": {} } } diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json index 69af96cf0547..67c279d4fc02 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json @@ -187,6 +187,52 @@ "x-ms-long-running-operation-options": { "final-state-via": "location" } + }, + "get": { + "operationId": "IpFirewallRules_Get", + "description": "Get a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "Ip Firewall Rule details" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create an IP firewall rule": { + "$ref": "./examples/GetIpFirewallRule.json" + } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/replaceAllIpFirewallRules": { diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json new file mode 100644 index 000000000000..5f5f74294989 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json @@ -0,0 +1,2837 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}": { + "patch": { + "operationId": "IntegrationRuntimes_Update", + "summary": "Update integration runtime", + "description": "Update an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "updateIntegrationRuntimeRequest", + "description": "The parameters for updating an integration runtime.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Update.json" + } + } + }, + "get": { + "operationId": "IntegrationRuntimes_Get", + "summary": "Get integration runtime", + "description": "Get an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for get. If the ETag matches the existing entity tag, or if * was provided, then no content will be returned." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "304": { + "description": "Not modified." + }, + "default": { + "description": "An error response received from GET integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Get.json" + } + } + }, + "put": { + "operationId": "IntegrationRuntimes_Create", + "summary": "Create integration runtime", + "description": "Create an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for update, for which it should match existing entity or can be * for unconditional update." + }, + { + "name": "integrationRuntime", + "description": "Integration runtime resource definition.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "default": { + "description": "An error response received from PUT integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Create.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimes_Delete", + "summary": "Delete integration runtime", + "description": "Delete an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from DELETE integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}/ipAddress": { + "post": { + "operationId": "IntegrationRuntimeNodeIpAddress_Get", + "summary": "Get integration runtime node IP address", + "description": "Get the IP address of an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeNodeIpAddress" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node IP address": { + "$ref": "./examples/IntegrationRuntimeNodes_GetIpAddress.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/upgrade": { + "post": { + "operationId": "IntegrationRuntimes_Upgrade", + "summary": "Upgrade integration runtime", + "description": "Upgrade an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Upgrade integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Upgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_Get", + "summary": "Get integration runtime object metadata", + "description": "Get object metadata from an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "getMetadataRequest", + "description": "The parameters for getting a SSIS object metadata.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/GetSsisObjectMetadataRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}": { + "get": { + "operationId": "IntegrationRuntimeNodes_Get", + "summary": "Get integration runtime node", + "description": "Get an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Get.json" + } + } + }, + "patch": { + "operationId": "IntegrationRuntimeNodes_Update", + "summary": "Create integration runtime node", + "description": "Create an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + }, + { + "name": "updateIntegrationRuntimeNodeRequest", + "description": "The parameters for updating an integration runtime node.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeNodeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Update.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimeNodes_Delete", + "summary": "Delete integration runtime node", + "description": "Delete an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/syncCredentials": { + "post": { + "operationId": "IntegrationRuntimeCredentials_Sync", + "summary": "Sync integration runtime credentials", + "description": "Force the integration runtime to synchronize credentials across integration runtime nodes, and this will override the credentials across all worker nodes with those available on the dispatcher node. If you already have the latest credential backup file, you should manually import it (preferred) on any self-hosted integration runtime node than using this API directly.", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Sync credentials": { + "$ref": "./examples/IntegrationRuntimes_SyncCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes": { + "get": { + "operationId": "IntegrationRuntimes_ListByWorkspace", + "summary": "List integration runtimes", + "description": "List all integration runtimes", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List integration runtimes": { + "$ref": "./examples/IntegrationRuntimes_ListByWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getConnectionInfo": { + "post": { + "operationId": "IntegrationRuntimeConnectionInfos_Get", + "summary": "Get integration runtime connection info", + "description": "Get connection info for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeConnectionInfo" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get connection info": { + "$ref": "./examples/IntegrationRuntimes_GetConnectionInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/start": { + "post": { + "operationId": "IntegrationRuntimes_Start", + "summary": "Start integration runtime", + "description": "Start an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Start integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/regenerateAuthKey": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_Regenerate", + "summary": "Regenerate integration runtime authentication key", + "description": "Regenerate the authentication key for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "regenerateKeyParameters", + "description": "The parameters for regenerating integration runtime authentication key.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeRegenerateKeyParameters" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Regenerate auth key": { + "$ref": "./examples/IntegrationRuntimes_RegenerateAuthKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/listAuthKeys": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_List", + "summary": "List integration runtime authentication keys", + "description": "List authentication keys in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List auth keys": { + "$ref": "./examples/IntegrationRuntimes_ListAuthKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/monitoringData": { + "post": { + "operationId": "IntegrationRuntimeMonitoringData_Get", + "summary": "Get integration runtime monitoring data", + "description": "Get monitoring data for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeMonitoringData" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get monitoring data": { + "$ref": "./examples/IntegrationRuntimes_GetMonitoringData.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/stop": { + "post": { + "operationId": "IntegrationRuntimes_Stop", + "summary": "Stop integration runtime", + "description": "Stop an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Stop integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/refreshObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_Refresh", + "summary": "Refresh integration runtime object metadata", + "description": "Refresh the object metadata in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Refresh object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_Refresh.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getStatus": { + "post": { + "operationId": "IntegrationRuntimeStatus_Get", + "summary": "Get integration runtime status", + "description": "Get the integration runtime status", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get status": { + "$ref": "./examples/IntegrationRuntimes_GetStatus.json" + } + } + } + } + }, + "definitions": { + "SubResource": { + "description": "Azure Synapse nested resource, which belongs to a factory.", + "properties": { + "id": { + "type": "string", + "description": "The resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The resource type.", + "readOnly": true + }, + "etag": { + "type": "string", + "description": "Etag identifies change in the resource.", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "IntegrationRuntime": { + "description": "Azure Synapse nested object which serves as a compute resource for activities.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "description": { + "description": "Integration runtime description.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeType": { + "description": "The type of integration runtime.", + "type": "string", + "enum": [ + "Managed", + "SelfHosted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeType", + "modelAsString": true + } + }, + "ManagedIntegrationRuntime": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime, including managed elastic and managed dedicated integration runtimes.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "state": { + "description": "Integration runtime state, only valid for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + }, + "typeProperties": { + "description": "Managed integration runtime properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeTypeProperties": { + "description": "Managed integration runtime type properties.", + "type": "object", + "properties": { + "computeProperties": { + "description": "The compute resource for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeComputeProperties" + }, + "ssisProperties": { + "description": "SSIS properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisProperties" + } + } + }, + "IntegrationRuntimeComputeProperties": { + "description": "The compute resource properties for managed integration runtime.", + "type": "object", + "properties": { + "location": { + "description": "The location for managed integration runtime. The supported regions could be found on https://docs.microsoft.com/en-us/azure/data-factory/data-factory-data-movement-activities", + "type": "string" + }, + "nodeSize": { + "description": "The node size requirement to managed integration runtime.", + "type": "string" + }, + "numberOfNodes": { + "description": "The required number of nodes for managed integration runtime.", + "type": "integer", + "minimum": 1 + }, + "maxParallelExecutionsPerNode": { + "description": "Maximum parallel executions count per node for managed integration runtime.", + "type": "integer", + "minimum": 1 + }, + "dataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataFlowProperties" + }, + "vNetProperties": { + "description": "VNet properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeVNetProperties" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeDataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "type": "object", + "properties": { + "computeType": { + "description": "Compute type of the cluster which will execute data flow job.", + "type": "string", + "enum": [ + "General", + "MemoryOptimized", + "ComputeOptimized" + ], + "x-ms-enum": { + "name": "DataFlowComputeType", + "modelAsString": true + } + }, + "coreCount": { + "description": "Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272.", + "type": "integer" + }, + "timeToLive": { + "description": "Time to live (in minutes) setting of the cluster which will execute data flow job.", + "type": "integer", + "minimum": 0 + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeVNetProperties": { + "description": "VNet properties for managed integration runtime.", + "type": "object", + "properties": { + "vNetId": { + "description": "The ID of the VNet that this integration runtime will join.", + "type": "string" + }, + "subnet": { + "description": "The name of the subnet this integration runtime will join.", + "type": "string" + }, + "publicIPs": { + "description": "Resource IDs of the public IP addresses that this integration runtime will use.", + "type": "array", + "items": { + "type": "string", + "description": "The ID of the public IP address." + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeSsisProperties": { + "description": "SSIS properties for managed integration runtime.", + "type": "object", + "properties": { + "catalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisCatalogInfo" + }, + "licenseType": { + "description": "License type for bringing your own license scenario.", + "type": "string", + "enum": [ + "BasePrice", + "LicenseIncluded" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeLicenseType", + "modelAsString": true + } + }, + "customSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeCustomSetupScriptProperties" + }, + "dataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataProxyProperties" + }, + "edition": { + "description": "The edition for the SSIS Integration Runtime", + "type": "string", + "enum": [ + "Standard", + "Enterprise" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEdition", + "modelAsString": true + } + }, + "expressCustomSetupProperties": { + "description": "Custom setup without script properties for a SSIS integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomSetupBase" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SecretBase": { + "description": "The base definition of a secret type.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of the secret." + } + }, + "required": [ + "type" + ] + }, + "SecureString": { + "x-ms-discriminator-value": "SecureString", + "description": "Azure Synapse secure string definition. The string value will be masked with asterisks '*' during Get or List API calls.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretBase" + } + ], + "properties": { + "value": { + "type": "string", + "description": "Value of secure string." + } + }, + "required": [ + "value" + ] + }, + "IntegrationRuntimeSsisCatalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "type": "object", + "properties": { + "catalogServerEndpoint": { + "description": "The catalog database server URL.", + "type": "string" + }, + "catalogAdminUserName": { + "description": "The administrator user name of catalog database.", + "type": "string", + "minLength": 1, + "maxLength": 128 + }, + "catalogAdminPassword": { + "description": "The password of the administrator user account of the catalog database.", + "$ref": "#/definitions/SecureString" + }, + "catalogPricingTier": { + "description": "The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/", + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium", + "PremiumRS" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeSsisCatalogPricingTier", + "modelAsString": true + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeCustomSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "blobContainerUri": { + "description": "The URI of the Azure blob container that contains the custom setup script.", + "type": "string" + }, + "sasToken": { + "description": "The SAS token of the Azure blob container.", + "$ref": "#/definitions/SecureString" + } + } + }, + "IntegrationRuntimeDataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "connectVia": { + "description": "The self-hosted integration runtime reference.", + "$ref": "#/definitions/EntityReference" + }, + "stagingLinkedService": { + "description": "The staging linked service reference.", + "$ref": "#/definitions/EntityReference" + }, + "path": { + "description": "The path to contain the staged data in the Blob storage.", + "type": "string" + } + } + }, + "CustomSetupBase": { + "description": "The base definition of the custom setup.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of custom setup.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "CmdkeySetup": { + "description": "The custom setup of running cmdkey commands.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Cmdkey command custom setup type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CmdkeySetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CmdkeySetupTypeProperties": { + "description": "Cmdkey command custom setup type properties.", + "type": "object", + "properties": { + "targetName": { + "description": "The server name of data source access.", + "type": "object" + }, + "userName": { + "description": "The user name of data source access.", + "type": "object" + }, + "password": { + "description": "The password of data source access.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "targetName", + "userName", + "password" + ] + }, + "EnvironmentVariableSetup": { + "description": "The custom setup of setting environment variable.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Add environment variable type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentVariableSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EnvironmentVariableSetupTypeProperties": { + "description": "Environment variable custom setup type properties.", + "type": "object", + "properties": { + "variableName": { + "description": "The name of the environment variable.", + "type": "string" + }, + "variableValue": { + "description": "The value of the environment variable.", + "type": "string" + } + }, + "required": [ + "variableName", + "variableValue" + ] + }, + "ComponentSetup": { + "description": "The custom setup of installing 3rd party components.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Install 3rd party component type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicensedComponentSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LicensedComponentSetupTypeProperties": { + "description": "Installation of licensed component setup type properties.", + "type": "object", + "properties": { + "componentName": { + "description": "The name of the 3rd party component.", + "type": "string" + }, + "licenseKey": { + "description": "The license key to activate the component.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "componentName" + ] + }, + "EntityReference": { + "description": "The entity reference.", + "type": "object", + "properties": { + "type": { + "description": "The type of this referenced entity.", + "type": "string", + "enum": [ + "IntegrationRuntimeReference", + "LinkedServiceReference" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEntityReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "The name of this referenced entity.", + "type": "string" + } + } + }, + "SelfHostedIntegrationRuntime": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "typeProperties": { + "description": "When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeTypeProperties" + } + } + }, + "SelfHostedIntegrationRuntimeTypeProperties": { + "description": "The self-hosted integration runtime properties.", + "type": "object", + "properties": { + "linkedInfo": { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + } + }, + "LinkedIntegrationRuntimeType": { + "description": "The base definition of a linked integration runtime.", + "discriminator": "authorizationType", + "type": "object", + "properties": { + "authorizationType": { + "type": "string", + "description": "The authorization type for integration runtime sharing." + } + }, + "required": [ + "authorizationType" + ] + }, + "LinkedIntegrationRuntimeKeyAuthorization": { + "x-ms-discriminator-value": "Key", + "description": "The key authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "key": { + "description": "The key used for authorization.", + "$ref": "#/definitions/SecureString" + } + }, + "required": [ + "key" + ] + }, + "LinkedIntegrationRuntimeRbacAuthorization": { + "x-ms-discriminator-value": "RBAC", + "description": "The role based access control (RBAC) authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "resourceId": { + "description": "The resource identifier of the integration runtime to be shared.", + "type": "string" + } + }, + "required": [ + "resourceId" + ] + }, + "IntegrationRuntimeStatus": { + "description": "Integration runtime status.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "dataFactoryName": { + "description": "The workspace name which the integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The state of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeState": { + "description": "The state of integration runtime.", + "type": "string", + "readOnly": true, + "enum": [ + "Initial", + "Stopped", + "Started", + "Starting", + "Stopping", + "NeedRegistration", + "Online", + "Limited", + "Offline", + "AccessDenied" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeState", + "modelAsString": true + } + }, + "ManagedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Managed integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeStatusTypeProperties": { + "description": "Managed integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for managed integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeNode" + }, + "readOnly": true + }, + "otherErrors": { + "description": "The errors that occurred on this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + }, + "readOnly": true + }, + "lastOperation": { + "description": "The last operation result that occurred on this integration runtime.", + "$ref": "#/definitions/ManagedIntegrationRuntimeOperationResult", + "readOnly": true + } + } + }, + "ManagedIntegrationRuntimeOperationResult": { + "description": "Properties of managed integration runtime operation result.", + "properties": { + "type": { + "description": "The operation type. Could be start or stop.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The start time of the operation.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "result": { + "description": "The operation result.", + "type": "string", + "readOnly": true + }, + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "activityId": { + "description": "The activity id for the operation request.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeNode": { + "description": "Properties of integration runtime node.", + "properties": { + "nodeId": { + "description": "The managed integration runtime node id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The managed integration runtime node status.", + "type": "string", + "readOnly": true, + "enum": [ + "Starting", + "Available", + "Recycling", + "Unavailable" + ], + "x-ms-enum": { + "name": "ManagedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "errors": { + "description": "The errors that occurred on this integration runtime node.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeError": { + "description": "Error definition for managed integration runtime.", + "properties": { + "time": { + "description": "The time when the error occurred.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SelfHostedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SelfHostedIntegrationRuntimeStatusTypeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "taskQueueId": { + "description": "The task queue id of the integration runtime.", + "type": "string", + "readOnly": true + }, + "internalChannelEncryption": { + "description": "It is used to set the encryption mode for node-node communication channel (when more than 2 self-hosted integration runtime nodes exist).", + "type": "string", + "readOnly": true, + "enum": [ + "NotSet", + "SslEncrypted", + "NotEncrypted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeInternalChannelEncryptionMode", + "modelAsString": true + } + }, + "version": { + "description": "Version of the integration runtime.", + "type": "string", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "scheduledUpdateDate": { + "description": "The date at which the integration runtime will be scheduled to update, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "updateDelayOffset": { + "description": "The time in the date scheduled by service to update the integration runtime, e.g., PT03H is 3 hours", + "type": "string", + "readOnly": true + }, + "localTimeZoneOffset": { + "description": "The local time zone offset in hours.", + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "Object with additional information about integration runtime capabilities.", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "serviceUrls": { + "description": "The URLs for the services used in integration runtime backend service.", + "type": "array", + "items": { + "description": "The service URL", + "type": "string" + }, + "readOnly": true + }, + "autoUpdate": { + "description": "Whether Self-hosted integration runtime auto update has been turned on.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate", + "readOnly": true + }, + "versionStatus": { + "description": "Status of the integration runtime version.", + "type": "string", + "readOnly": true + }, + "links": { + "description": "The list of linked integration runtimes that are created to share with this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/LinkedIntegrationRuntime" + } + }, + "pushedVersion": { + "description": "The version that the integration runtime is going to update to.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest version on download center.", + "type": "string", + "readOnly": true + }, + "autoUpdateETA": { + "description": "The estimated time when the self-hosted integration runtime will be updated.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "IntegrationRuntimeAutoUpdate": { + "description": "The state of integration runtime auto update.", + "type": "string", + "enum": [ + "On", + "Off" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAutoUpdate", + "modelAsString": true + } + }, + "LinkedIntegrationRuntime": { + "description": "The linked integration runtime information.", + "type": "object", + "properties": { + "name": { + "description": "The name of the linked integration runtime.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The subscription ID for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryName": { + "description": "The name of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryLocation": { + "description": "The location of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "createTime": { + "description": "The creating time of the linked integration runtime.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "SelfHostedIntegrationRuntimeNode": { + "description": "Properties of Self-hosted integration runtime node.", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "machineName": { + "description": "Machine name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "URI for the host machine of the integration runtime.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the integration runtime node.", + "type": "string", + "readOnly": true, + "enum": [ + "NeedRegistration", + "Online", + "Limited", + "Offline", + "Upgrading", + "Initializing", + "InitializeFailed" + ], + "x-ms-enum": { + "name": "SelfHostedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "capabilities": { + "description": "The integration runtime capabilities dictionary", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "versionStatus": { + "description": "Status of the integration runtime node version.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "registerTime": { + "description": "The time at which the integration runtime node was registered in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastConnectTime": { + "description": "The most recent time at which the integration runtime was connected in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "expiryTime": { + "description": "The time at which the integration runtime will expire in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStartTime": { + "description": "The time the node last started up.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStopTime": { + "description": "The integration runtime node last stop time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastUpdateResult": { + "description": "The result of the last integration runtime node update.", + "type": "string", + "enum": [ + "None", + "Succeed", + "Fail" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeUpdateResult", + "modelAsString": true + }, + "readOnly": true + }, + "lastStartUpdateTime": { + "description": "The last time for the integration runtime node update start.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastEndUpdateTime": { + "description": "The last time for the integration runtime node update end.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "isActiveDispatcher": { + "description": "Indicates whether this node is the active dispatcher for integration runtime requests.", + "type": "boolean", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeConnectionInfo": { + "description": "Connection information for encrypting the on-premises data source credentials.", + "type": "object", + "properties": { + "serviceToken": { + "description": "The token generated in service. Callers use this token to authenticate to integration runtime.", + "type": "string", + "readOnly": true + }, + "identityCertThumbprint": { + "description": "The integration runtime SSL certificate thumbprint. Click-Once application uses it to do server validation.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "The on-premises integration runtime host URL.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The integration runtime version.", + "type": "string", + "readOnly": true + }, + "publicKey": { + "description": "The public key for encrypting a credential when transferring the credential to the integration runtime.", + "type": "string", + "readOnly": true + }, + "isIdentityCertExprired": { + "description": "Whether the identity certificate is expired.", + "type": "boolean", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeRegenerateKeyParameters": { + "description": "Parameters to regenerate the authentication key.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the authentication key to regenerate.", + "type": "string", + "enum": [ + "authKey1", + "authKey2" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAuthKeyName", + "modelAsString": true + } + } + } + }, + "IntegrationRuntimeAuthKeys": { + "description": "The integration runtime authentication keys.", + "type": "object", + "properties": { + "authKey1": { + "type": "string", + "description": "The primary integration runtime authentication key." + }, + "authKey2": { + "type": "string", + "description": "The secondary integration runtime authentication key." + } + } + }, + "IntegrationRuntimeMonitoringData": { + "description": "Get monitoring data response.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Integration runtime name." + }, + "nodes": { + "type": "array", + "description": "Integration runtime node monitoring data.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeNodeMonitoringData" + } + } + } + }, + "IntegrationRuntimeNodeMonitoringData": { + "description": "Monitoring data for integration runtime node.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "availableMemoryInMB": { + "description": "Available memory (MB) on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "cpuUtilization": { + "description": "CPU percentage on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "concurrentJobsRunning": { + "description": "The number of jobs currently running on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "readOnly": true + }, + "sentBytes": { + "description": "Sent bytes on the integration runtime node.", + "type": "number", + "readOnly": true + }, + "receivedBytes": { + "description": "Received bytes on the integration runtime node.", + "type": "number", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeNodeIpAddress": { + "type": "object", + "description": "The IP address of self-hosted integration runtime node.", + "properties": { + "ipAddress": { + "description": "The IP address of self-hosted integration runtime node.", + "type": "string", + "readOnly": true + } + } + }, + "SsisObjectMetadataListResponse": { + "type": "object", + "description": "A list of SSIS object metadata.", + "properties": { + "value": { + "type": "array", + "description": "List of SSIS object metadata.", + "items": { + "$ref": "#/definitions/SsisObjectMetadata" + } + }, + "nextLink": { + "type": "string", + "description": "The link to the next page of results, if any remaining results exist." + } + } + }, + "SsisObjectMetadata": { + "type": "object", + "description": "SSIS object metadata.", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of metadata.", + "$ref": "#/definitions/SsisObjectMetadataType" + }, + "id": { + "type": "integer", + "format": "int64", + "description": "Metadata id." + }, + "name": { + "type": "string", + "description": "Metadata name." + }, + "description": { + "type": "string", + "description": "Metadata description." + } + }, + "required": [ + "type" + ] + }, + "SsisObjectMetadataType": { + "description": "The type of SSIS object metadata.", + "type": "string", + "enum": [ + "Folder", + "Project", + "Package", + "Environment" + ], + "x-ms-enum": { + "name": "SsisObjectMetadataType", + "modelAsString": true + } + }, + "SsisFolder": { + "x-ms-discriminator-value": "Folder", + "type": "object", + "description": "Ssis folder.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ] + }, + "SsisProject": { + "x-ms-discriminator-value": "Project", + "type": "object", + "description": "Ssis project.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains project." + }, + "version": { + "type": "integer", + "format": "int64", + "description": "Project version." + }, + "environmentRefs": { + "type": "array", + "description": "Environment reference in project", + "items": { + "$ref": "#/definitions/SsisEnvironmentReference" + } + }, + "parameters": { + "type": "array", + "description": "Parameters in project", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisPackage": { + "x-ms-discriminator-value": "Package", + "type": "object", + "description": "Ssis Package.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains package." + }, + "projectVersion": { + "type": "integer", + "format": "int64", + "description": "Project version which contains package." + }, + "projectId": { + "type": "integer", + "format": "int64", + "description": "Project id which contains package." + }, + "parameters": { + "type": "array", + "description": "Parameters in package", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisEnvironment": { + "x-ms-discriminator-value": "Environment", + "type": "object", + "description": "Ssis environment.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains environment." + }, + "variables": { + "type": "array", + "description": "Variable in environment", + "items": { + "$ref": "#/definitions/SsisVariable" + } + } + } + }, + "SsisParameter": { + "type": "object", + "description": "Ssis parameter.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Parameter id." + }, + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "dataType": { + "type": "string", + "description": "Parameter type." + }, + "required": { + "type": "boolean", + "description": "Whether parameter is required." + }, + "sensitive": { + "type": "boolean", + "description": "Whether parameter is sensitive." + }, + "designDefaultValue": { + "type": "string", + "description": "Design default value of parameter." + }, + "defaultValue": { + "type": "string", + "description": "Default value of parameter." + }, + "sensitiveDefaultValue": { + "type": "string", + "description": "Default sensitive value of parameter." + }, + "valueType": { + "type": "string", + "description": "Parameter value type." + }, + "valueSet": { + "type": "boolean", + "description": "Parameter value set." + }, + "variable": { + "type": "string", + "description": "Parameter reference variable." + } + } + }, + "SsisVariable": { + "type": "object", + "description": "Ssis variable.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Variable id." + }, + "name": { + "type": "string", + "description": "Variable name." + }, + "description": { + "type": "string", + "description": "Variable description." + }, + "dataType": { + "type": "string", + "description": "Variable type." + }, + "sensitive": { + "type": "boolean", + "description": "Whether variable is sensitive." + }, + "value": { + "type": "string", + "description": "Variable value." + }, + "sensitiveValue": { + "type": "string", + "description": "Variable sensitive value." + } + } + }, + "SsisEnvironmentReference": { + "type": "object", + "description": "Ssis environment reference.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Environment reference id." + }, + "environmentFolderName": { + "type": "string", + "description": "Environment folder name." + }, + "environmentName": { + "type": "string", + "description": "Environment name." + }, + "referenceType": { + "type": "string", + "description": "Reference type" + } + } + }, + "CloudError": { + "x-ms-external": true, + "description": "The object that defines the structure of an Azure Synapse error response.", + "type": "object", + "properties": { + "error": { + "x-ms-client-flatten": true, + "description": "Error data", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "required": [ + "error" + ] + }, + "CloudErrorBody": { + "x-ms-external": true, + "description": "The object that defines the structure of an Azure Synapse error.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + }, + "target": { + "description": "Property name/path in request associated with error.", + "type": "string" + }, + "details": { + "description": "Array with additional error details.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudError" + } + } + }, + "required": [ + "code", + "message" + ] + }, + "UpdateIntegrationRuntimeRequest": { + "description": "Update integration runtime request.", + "type": "object", + "properties": { + "autoUpdate": { + "description": "Enables or disables the auto-update feature of the self-hosted integration runtime. See https://go.microsoft.com/fwlink/?linkid=854189.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate" + }, + "updateDelayOffset": { + "description": "The time offset (in hours) in the day, e.g., PT03H is 3 hours. The integration runtime auto update will happen on that time.", + "type": "string" + } + } + }, + "IntegrationRuntimeResource": { + "description": "Integration runtime resource type.", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IntegrationRuntime", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "GetSsisObjectMetadataRequest": { + "type": "object", + "description": "The request payload of get SSIS object metadata.", + "properties": { + "metadataPath": { + "type": "string", + "description": "Metadata path." + } + } + }, + "UpdateIntegrationRuntimeNodeRequest": { + "description": "Update integration runtime node request.", + "type": "object", + "properties": { + "concurrentJobsLimit": { + "description": "The number of concurrent jobs permitted to run on the integration runtime node. Values between 1 and maxConcurrentJobs(inclusive) are allowed.", + "type": "integer", + "minimum": 1 + } + } + }, + "IntegrationRuntimeListResponse": { + "description": "A list of integration runtime resources.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of integration runtimes.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "IntegrationRuntimeStatusResponse": { + "description": "Integration runtime status response.", + "properties": { + "name": { + "type": "string", + "description": "The integration runtime name.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/IntegrationRuntimeStatus", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "SsisObjectMetadataStatusResponse": { + "type": "object", + "description": "The status of the operation.", + "properties": { + "status": { + "type": "string", + "description": "The status of the operation." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "properties": { + "type": "string", + "description": "The operation properties." + }, + "error": { + "type": "string", + "description": "The operation error message." + } + } + } + }, + "parameters": { + "IntegrationRuntimeNameParameter": { + "name": "integrationRuntimeName", + "type": "string", + "required": true, + "in": "path", + "description": "Integration runtime name", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json new file mode 100644 index 000000000000..77a31fdda411 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json @@ -0,0 +1,337 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private endpoint connection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "responses": { + "201": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Approve private endpoint connection": { + "$ref": "./examples/ApprovePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Delete a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "responses": { + "202": { + "schema": { + "$ref": "./operations.json#/definitions/OperationResource" + }, + "description": "Operation details" + }, + "204": { + "description": "Deletion completed" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Delete private endpoint connection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Lists private endpoint connection in workspace.", + "operationId": "PrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionList" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "List private endpoint connections in workspace": { + "$ref": "./examples/ListPrivateEndpointConnections.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionList": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "Provisioning state of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpoint": { + "description": "Private endpoint details", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionState": { + "description": "Connection state details of the private endpoint", + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ] + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json new file mode 100644 index 000000000000..8479ec512d4f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json @@ -0,0 +1,187 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "operationId": "PrivateLinkResources_List", + "summary": "Private Link Resources", + "description": "Get all private link resources for a workspaces", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + }, + "description": "List of private link resources" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "operationId": "PrivateLinkResources_Get", + "summary": "Get Private Link Resource", + "description": "Get private link resource in workspace", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/privateLinkResourceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resource details" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/GetPrivateLinkResource.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource properties.", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Required DNS zone names of the the private link resource." + } + } + } + }, + "parameters": { + "privateLinkResourceNameParameter": { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json index 89cbb96cc710..5d40707bd2ae 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json @@ -113,6 +113,9 @@ "$ref": "#/definitions/SqlPool" }, "description": "OK" + }, + "202": { + "description": "Accepted" } }, "consumes": [], diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json index 8531d7b683bc..cf94bd3ca600 100644 --- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json @@ -779,6 +779,17 @@ "type": "string" }, "type": "object" + }, + "managedVirtualNetwork": { + "description": "Setting this to 'default' will ensure that all compute for this workspace is in a virtual network managed on behalf of the user.", + "type": "string" + }, + "privateEndpointConnections": { + "description": "Private endpoint connections to the workspace", + "type": "array", + "items": { + "$ref": "./privateEndpointConnections.json#/definitions/PrivateEndpointConnection" + } } } }, diff --git a/specification/synapse/resource-manager/readme.java.md b/specification/synapse/resource-manager/readme.java.md index 1001d0ea140b..05c8d6afc164 100644 --- a/specification/synapse/resource-manager/readme.java.md +++ b/specification/synapse/resource-manager/readme.java.md @@ -10,6 +10,19 @@ namespace: com.microsoft.azure.management.synapse license-header: MICROSOFT_MIT_NO_CODEGEN payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-synapse +directive: + - rename-operation: + from: IntegrationRuntimeNodeIpAddress_Get + to: IntegrationRuntimeNodeIpAddressOperation_Get + - rename-operation: + from: IntegrationRuntimeAuthKeys_Regenerate + to: IntegrationRuntimeAuthKeysOperation_Regenerate + - rename-operation: + from: IntegrationRuntimeAuthKeys_List + to: IntegrationRuntimeAuthKeysOperation_List + - rename-operation: + from: IntegrationRuntimeStatus_Get + to: IntegrationRuntimeStatusOperation_Get ``` ### Java multi-api diff --git a/specification/synapse/resource-manager/readme.md b/specification/synapse/resource-manager/readme.md index e9abe3f4aa3e..bbcb58e62821 100644 --- a/specification/synapse/resource-manager/readme.md +++ b/specification/synapse/resource-manager/readme.md @@ -27,6 +27,7 @@ These are the global settings for the Azure Synapse Analytics API. title: SynapseManagementClient description: Azure Synapse Analytics Management Client openapi-type: arm +azure-arm: true tag: package-2019-06-01-preview ``` @@ -42,6 +43,9 @@ input-file: - Microsoft.Synapse/preview/2019-06-01-preview/operations.json - Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json - Microsoft.Synapse/preview/2019-06-01-preview/workspace.json +- Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json +- Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json +- Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json ``` ## Suppressions @@ -121,6 +125,9 @@ input-file: - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/operations.json - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json + - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json + - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json + - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json ``` diff --git a/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchSkuCapacity.json b/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchTags.json similarity index 83% rename from specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchSkuCapacity.json rename to specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchTags.json index f7da024b97f4..7d89abb50275 100644 --- a/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchSkuCapacity.json +++ b/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/examples/EnvironmentsPatchTags.json @@ -3,10 +3,9 @@ "subscriptionId": "subid", "resourceGroupName": "rg1", "environmentName": "env1", - "standardEnvironmentUpdateParameters": { - "sku": { - "name": "S1", - "capacity": 10 + "environmentUpdateParameters": { + "tags": { + "someTag": "someTagValue" } }, "api-version": "2018-08-15-preview" @@ -19,7 +18,9 @@ "name": "env1", "type": "Microsoft.TimeSeriesInsights/Environments", "kind": "Standard", - "tags": {}, + "tags": { + "someTag": "someTagValue" + }, "properties": { "dataRetentionTime": "P31D", "provisioningState": "Succeeded", diff --git a/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json b/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json index 4e115cfd1aa4..8ecaee789a01 100644 --- a/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json +++ b/specification/timeseriesinsights/resource-manager/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json @@ -181,7 +181,7 @@ "operationId": "Environments_Update", "x-ms-examples": { "EnvironmentsUpdate": { - "$ref": "./examples/EnvironmentsPatchSkuCapacity.json" + "$ref": "./examples/EnvironmentsPatchTags.json" } }, "x-ms-long-running-operation": true, @@ -197,11 +197,11 @@ "$ref": "#/parameters/EnvironmentNameParameter" }, { - "name": "standardEnvironmentUpdateParameters", + "name": "environmentUpdateParameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/StandardEnvironmentUpdateParameters" + "$ref": "#/definitions/EnvironmentUpdateParameters" }, "description": "Request object that contains the updated information for the environment." }, @@ -211,7 +211,7 @@ ], "responses": { "200": { - "description": "The environment definition was successfully updated and is in the response. If the environment was updated synchronously, the response will include a provisioningState value of \"Succeeded\". If the environment was updated asynchronous, the response will include a provisioningState value of \"Updating\". You can periodically get your environment definition and monitor progress of the update via the provisioningState property.", + "description": "The environment definition was successfully updated and is in the response. If the environment was updated synchronously, the response will include a provisioningState value of \"Succeeded\". If the environment was updated asynchronously, the response will include a provisioningState value of \"Updating\". You can periodically get your environment definition and monitor progress of the update via the provisioningState property.", "schema": { "$ref": "#/definitions/EnvironmentResource" } @@ -1547,7 +1547,7 @@ "items": { "$ref": "#/definitions/TimeSeriesIdProperty" }, - "description": "The list of event properties which will be used to partition data in the environment." + "description": "The list of event properties which will be used to partition data in the environment. Currently, only a single partition key property is supported." } }, "required": [ @@ -1569,7 +1569,7 @@ "description": "The storage configuration provides the connection details that allows the Time Series Insights service to connect to the customer storage account that is used to store the environment's data." }, "warmStoreConfiguration": { - "x-ms-client-flatten": true, + "x-ms-client-flatten": false, "$ref": "#/definitions/WarmStoreConfigurationProperties", "description": "The warm store configuration provides the details to create a warm store cache that will retain a copy of the environment's data available for faster query." } @@ -1636,7 +1636,7 @@ "description": "The storage configuration provides the connection details that allows the Time Series Insights service to connect to the customer storage account that is used to store the environment's data." }, "warmStoreConfiguration": { - "x-ms-client-flatten": true, + "x-ms-client-flatten": false, "$ref": "#/definitions/WarmStoreConfigurationProperties", "description": "The warm store configuration provides the details to create a warm store cache that will retain a copy of the environment's data available for faster query." } @@ -1675,13 +1675,6 @@ "name": "StorageLimitExceededBehavior", "modelAsString": true } - }, - "partitionKeyProperties": { - "type": "array", - "items": { - "$ref": "#/definitions/TimeSeriesIdProperty" - }, - "description": "The list of event properties which will be used to partition data in the environment." } } }, @@ -1694,7 +1687,7 @@ "description": "The storage configuration provides the connection details that allows the Time Series Insights service to connect to the customer storage account that is used to store the environment's data." }, "warmStoreConfiguration": { - "x-ms-client-flatten": true, + "x-ms-client-flatten": false, "$ref": "#/definitions/WarmStoreConfigurationProperties", "description": "The warm store configuration provides the details to create a warm store cache that will retain a copy of the environment's data available for faster query." } @@ -1848,6 +1841,10 @@ "name": "Kind", "modelAsString": true } + }, + "localTimestamp": { + "$ref": "#/definitions/LocalTimestamp", + "description": "An object that represents the local timestamp property. It contains the format of local timestamp that needs to be used and the corresponding timezone offset information. If a value isn't specified for localTimestamp, or if null, then the local timestamp will not be ingressed with the events." } }, "required": [ @@ -1911,6 +1908,7 @@ }, "EventHubEventSourceUpdateParameters": { "type": "object", + "x-ms-discriminator-value": "Microsoft.EventHub", "properties": { "properties": { "x-ms-client-flatten": true, @@ -1926,6 +1924,7 @@ "description": "Parameters supplied to the Update Event Source operation to update an EventHub event source." }, "IoTHubEventSourceUpdateParameters": { + "x-ms-discriminator-value": "Microsoft.IoTHub", "type": "object", "properties": { "properties": { @@ -1995,7 +1994,7 @@ "description": "An event source that receives its data from an Azure EventHub." }, "IoTHubEventSourceResource": { - "x-ms-discriminator-value": "Microsoft.IotHub", + "x-ms-discriminator-value": "Microsoft.IoTHub", "properties": { "properties": { "x-ms-client-flatten": true, @@ -2160,9 +2159,7 @@ "description": "An enum that represents the format of the local timestamp property that needs to be set.", "type": "string", "enum": [ - "Embedded", - "Iana", - "TimeSpan" + "Embedded" ], "x-ms-enum": { "name": "LocalTimestampFormat", diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json new file mode 100644 index 000000000000..fbaacdf0ff15 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "cluster": { + "properties": { + "clusterSize": 3 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Delete.json new file mode 100644 index 000000000000..7f0b6d61ed68 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Get.json new file mode 100644 index 000000000000..d12bd070def8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_List.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_List.json new file mode 100644 index 000000000000..b2a9e83c4337 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Update.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Update.json new file mode 100644 index 000000000000..d2d2976f6b6f --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Clusters_Update.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "cluster": { + "properties": { + "clusterSize": 4 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.AVS/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Locations_CheckQuotaAvailability.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Locations_CheckQuotaAvailability.json new file mode 100644 index 000000000000..98a126c10073 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Locations_CheckQuotaAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-08-09-preview", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "hostsRemaining": { + "gp": 0, + "he": 999 + }, + "quotaEnabled": "Enabled" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Operations_List.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Operations_List.json new file mode 100644 index 000000000000..be04943780f8 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/Operations_List.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview" + }, + "responses": { + "200": { + "body": [ + { + "display": { + "description": "Creates a private cloud", + "operation": "Create Private Cloud", + "provider": "Azure VMware Solution", + "resource": "Private Cloud" + }, + "name": "Microsoft.AVS/privateClouds/create", + "origin": "user,system" + } + ], + "nextLink": "string" + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json new file mode 100644 index 000000000000..130202d95bfe --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloud": { + "location": "eastus2", + "properties": { + "cluster": { + "clusterSize": 4 + } + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json new file mode 100644 index 000000000000..cbadcd2a5823 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Get.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Get.json new file mode 100644 index 000000000000..c6abf5fe6603 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_List.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_List.json new file mode 100644 index 000000000000..09f460f35848 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_List.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + ] + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json new file mode 100644 index 000000000000..7284be8ebf79 --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "nsxtPassword": "$(1X4Dkk", + "nsxtUsername": "admin", + "vcenterPassword": "iG17wC^-", + "vcenterUsername": "cloudadmin@vmcp.local" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json new file mode 100644 index 000000000000..a6fbca74b84c --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + ] + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Update.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Update.json new file mode 100644 index 000000000000..88a118a0f19a --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/examples/PrivateClouds_Update.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloud": { + "location": "eastus2", + "properties": { + "cluster": { + "clusterSize": 4 + } + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.AVS/privateClouds" + } + } + } +} diff --git a/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/vmware.json b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/vmware.json new file mode 100644 index 000000000000..2a5f491f4e2f --- /dev/null +++ b/specification/vmware/resource-manager/Microsoft.AVS/preview/2019-08-09-preview/vmware.json @@ -0,0 +1,1277 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure VMware Solution API", + "description": "Azure VMware Solution API", + "version": "2019-08-09-preview" + }, + "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" + } + } + }, + "tags": [ + { + "name": "PrivateClouds", + "description": "" + }, + { + "name": "Clusters", + "description": "" + }, + { + "name": "Operations", + "description": "" + }, + { + "name": "Locations", + "description": "" + } + ], + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Unique identifier for the Azure subscription" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group within the Azure subscription", + "x-ms-parameter-location": "method" + }, + "apiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of Azure VMware Solution API to be used with the client request" + }, + "privateCloudName": { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private cloud", + "x-ms-parameter-location": "method" + }, + "clusterName": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the cluster in the private cloud", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/providers/Microsoft.AVS/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available operations", + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AVS/locations/{location}/checkQuotaAvailability": { + "post": { + "tags": [ + "Locations" + ], + "description": "Return quota for subscription by region", + "operationId": "Locations_CheckQuotaAvailability", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Azure region" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/Quota" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "CheckQuotaAvailability": { + "$ref": "./examples/Locations_CheckQuotaAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds": { + "get": { + "operationId": "PrivateClouds_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a resource group", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_List": { + "$ref": "./examples/PrivateClouds_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AVS/privateClouds": { + "get": { + "operationId": "PrivateClouds_ListInSubscription", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_List": { + "$ref": "./examples/PrivateClouds_ListInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}": { + "get": { + "operationId": "PrivateClouds_Get", + "tags": [ + "PrivateClouds" + ], + "summary": "Get a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Get": { + "$ref": "./examples/PrivateClouds_Get.json" + } + } + }, + "put": { + "operationId": "PrivateClouds_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Create or update a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloud", + "description": "The private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_CreateOrUpdate": { + "$ref": "./examples/PrivateClouds_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "PrivateClouds_Update", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Update a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloud", + "description": "The private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Update": { + "$ref": "./examples/PrivateClouds_Update.json" + } + } + }, + "delete": { + "operationId": "PrivateClouds_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Delete a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No private cloud to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Delete": { + "$ref": "./examples/PrivateClouds_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters": { + "get": { + "operationId": "Clusters_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Clusters" + ], + "summary": "List clusters in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_List": { + "$ref": "./examples/Clusters_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}": { + "get": { + "operationId": "Clusters_Get", + "tags": [ + "Clusters" + ], + "summary": "Get a cluster by name in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Get": { + "$ref": "./examples/Clusters_Get.json" + } + } + }, + "put": { + "operationId": "Clusters_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Create or update a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "cluster", + "description": "A cluster in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_CreateOrUpdate": { + "$ref": "./examples/Clusters_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "Clusters_Update", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Update a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "cluster", + "description": "A cluster in a private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Update": { + "$ref": "./examples/Clusters_Update.json" + } + } + }, + "delete": { + "operationId": "Clusters_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Delete a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No cluster to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Delete": { + "$ref": "./examples/Clusters_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/listAdminCredentials": { + "post": { + "operationId": "PrivateClouds_ListAdminCredentials", + "tags": [ + "PrivateClouds" + ], + "summary": "List the admin credentials for the private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/AdminCredentials" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_ListAdminCredentials": { + "$ref": "./examples/PrivateClouds_ListAdminCredentials.json" + } + } + } + } + }, + "definitions": { + "Quota": { + "description": "Subscription quotas", + "properties": { + "hostsRemaining": { + "description": "Remaining hosts quota by sku type", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "integer", + "readOnly": true + } + }, + "quotaEnabled": { + "description": "Host quota is active for current subscription", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "QuotaEnabled", + "modelAsString": true + } + } + } + }, + "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" + } + }, + "x-ms-azure-resource": 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" + } + } + }, + "ApiError": { + "properties": { + "error": { + "description": "An error returned by the API", + "$ref": "#/definitions/ApiErrorBase" + } + }, + "description": "API error response" + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + } + }, + "description": "Api error." + }, + "OperationList": { + "description": "Pageable list of operations", + "properties": { + "value": { + "description": "List of operations", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation being performed on this object", + "type": "string", + "readOnly": true + }, + "display": { + "description": "Contains the localized display information for this operation", + "readOnly": true, + "properties": { + "provider": { + "description": "Localized friendly form of the resource provider name", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Localized friendly form of the resource type related to this operation", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ExpressRouteAuthorization": { + "description": "Authorization for an ExpressRoute", + "properties": { + "name": { + "description": "The name of the ExpressRoute", + "type": "string" + }, + "id": { + "description": "The ID of the ExpressRoute", + "type": "string", + "readOnly": true + }, + "key": { + "description": "The key of the ExpressRoute", + "type": "string", + "readOnly": true + } + } + }, + "Circuit": { + "description": "An ExpressRoute Circuit", + "properties": { + "primarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of primary subnet" + }, + "secondarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of secondary subnet" + }, + "expressRouteID": { + "type": "string", + "readOnly": true, + "description": "Identifier of the ExpressRoute (Microsoft Colo only)" + }, + "authorizations": { + "type": "array", + "description": "Authorizations for the ExpressRoute (Microsoft Colo only)", + "items": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "expressRoutePrivatePeeringID": { + "type": "string", + "readOnly": true, + "description": "ExpressRoute private peering identifier" + } + } + }, + "Endpoints": { + "description": "Endpoint addresses", + "properties": { + "nsxtManager": { + "description": "Endpoint for the NSX-T Data Center manager", + "type": "string", + "readOnly": true + }, + "vcsa": { + "description": "Endpoint for Virtual Center Server Appliance", + "type": "string", + "readOnly": true + } + } + }, + "IdentitySource": { + "description": "vCenter Single Sign On Identity Source", + "properties": { + "name": { + "description": "The name of the identity source", + "type": "string" + }, + "alias": { + "description": "The domain's NetBIOS name", + "type": "string" + }, + "domain": { + "description": "The domain's dns name", + "type": "string" + }, + "baseUserDN": { + "description": "The base distinguished name for users", + "type": "string" + }, + "baseGroupDN": { + "description": "The base distinguished name for groups", + "type": "string" + }, + "primaryServer": { + "description": "Primary server URL", + "type": "string" + }, + "secondaryServer": { + "description": "Secondary server URL", + "type": "string" + }, + "ssl": { + "description": "Protect LDAP communication using SSL certificate (LDAPS)", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SslEnum", + "modelAsString": true + } + }, + "username": { + "description": "The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group", + "type": "string" + }, + "password": { + "description": "The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.", + "type": "string" + } + } + }, + "PrivateCloud": { + "description": "A private cloud resource", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The private cloud SKU", + "$ref": "#/definitions/Sku" + }, + "properties": { + "description": "The properties of a private cloud resource", + "$ref": "#/definitions/PrivateCloudProperties" + } + } + }, + "PrivateCloudProperties": { + "description": "The properties of a private cloud resource", + "properties": { + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Pending", + "Building", + "Updating" + ], + "x-ms-enum": { + "name": "PrivateCloudProvisioningState", + "modelAsString": true + } + }, + "circuit": { + "description": "An ExpressRoute Circuit", + "$ref": "#/definitions/Circuit" + }, + "cluster": { + "description": "The default cluster used for management", + "$ref": "#/definitions/DefaultClusterProperties" + }, + "clusters": { + "description": "The clusters", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "endpoints": { + "description": "The endpoints", + "readOnly": true, + "$ref": "#/definitions/Endpoints" + }, + "internet": { + "description": "Connectivity to internet is enabled or disabled", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InternetEnum", + "modelAsString": true + } + }, + "identitySources": { + "description": "vCenter Single Sign On Identity Sources", + "type": "array", + "items": { + "$ref": "#/definitions/IdentitySource" + } + }, + "networkBlock": { + "description": "The block of addresses should be unique across VNet in your subscription as well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where A,B,C,D are between 0 and 255, and X is between 0 and 22", + "type": "string" + }, + "managementNetwork": { + "description": "Network used to access vCenter Server and NSX-T Manager", + "type": "string", + "readOnly": true + }, + "provisioningNetwork": { + "description": "Used for virtual machine cold migration, cloning, and snapshot migration", + "type": "string", + "readOnly": true + }, + "vmotionNetwork": { + "description": "Used for live migration of virtual machines", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "Optionally, set the vCenter admin password when the private cloud is created", + "type": "string" + }, + "nsxtPassword": { + "description": "Optionally, set the NSX-T Manager password when the private cloud is created", + "type": "string" + }, + "vcenterCertificateThumbprint": { + "description": "Thumbprint of the vCenter Server SSL certificate", + "type": "string", + "readOnly": true + }, + "nsxtCertificateThumbprint": { + "description": "Thumbprint of the NSX-T Manager SSL certificate", + "type": "string", + "readOnly": true + } + } + }, + "Cluster": { + "description": "A cluster resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of a cluster resource", + "$ref": "#/definitions/ClusterProperties" + } + } + }, + "DefaultClusterProperties": { + "description": "The properties of a default cluster", + "properties": { + "clusterId": { + "description": "The identity", + "type": "integer", + "readOnly": true + }, + "clusterSize": { + "description": "The cluster size", + "type": "integer" + }, + "hosts": { + "description": "The hosts", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "ClusterProperties": { + "description": "The properties of a cluster", + "allOf": [ + { + "$ref": "#/definitions/DefaultClusterProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The state of the cluster provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Updating" + ], + "x-ms-enum": { + "name": "ClusterProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateCloudList": { + "description": "A paged list of private clouds", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ClusterList": { + "description": "A paged list of clusters", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "AdminCredentials": { + "description": "Administrative credentials for accessing vCenter and NSX-T", + "properties": { + "nsxtUsername": { + "description": "NSX-T Manager username", + "type": "string", + "readOnly": true + }, + "nsxtPassword": { + "description": "NSX-T Manager password", + "type": "string", + "readOnly": true + }, + "vcenterUsername": { + "description": "vCenter admin username", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "vCenter admin password", + "type": "string", + "readOnly": true + } + } + }, + "Sku": { + "description": "The resource model definition representing SKU", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + } + }, + "required": [ + "name" + ] + } + } +} diff --git a/specification/vmware/resource-manager/readme.csharp.md b/specification/vmware/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..77d4211ccfba --- /dev/null +++ b/specification/vmware/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + package-version: 0.3.0 + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + clear-output-folder: true + namespace: Microsoft.Azure.Management.VMware + output-folder: $(csharp-sdks-folder)/VMware/Management.VMware/Generated +``` \ No newline at end of file diff --git a/specification/vmware/resource-manager/readme.md b/specification/vmware/resource-manager/readme.md new file mode 100644 index 000000000000..a2a404bfe4b6 --- /dev/null +++ b/specification/vmware/resource-manager/readme.md @@ -0,0 +1,96 @@ +# VMware Solution + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for VMware Solution. + +## Getting Started +To build the SDK for VMware Solution, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the VMware Solution API. + +``` yaml +openapi-type: arm +tag: package-2019-08-09-preview +``` + +### Tag: package-2019-08-09-preview + +These settings apply only when `--tag=package-2019-08-09-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08-09-preview' +input-file: +- Microsoft.AVS/preview/2019-08-09-preview/vmware.json +directive: + - suppress: R3020 + from: vmware.json + reason: Microsoft.AVS was chosen over Microsoft.AzureVMwareSolution + - suppress: R3010 + from: vmware.json + reason: list by immediate parent operations are defined + - suppress: R2001 + from: vmware.json + reason: x-ms-client-flatten will be used in next API version +``` + +--- +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-js + - repo: azure-sdk-for-python + - repo: azure-sdk-for-net +``` + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## C# + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.AVS/preview/2019-08-09-preview/vmware.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/vmware/resource-manager/readme.python.md b/specification/vmware/resource-manager/readme.python.md new file mode 100644 index 000000000000..ab4c07555c3b --- /dev/null +++ b/specification/vmware/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +```yaml $(python) +python-mode: create +python: + package-version: 0.3.0 + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.vmware + package-name: azure-mgmt-vmware + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmware/azure/mgmt/vmware +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmware +``` \ No newline at end of file diff --git a/specification/vmware/resource-manager/readme.typescript.md b/specification/vmware/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..97824659f448 --- /dev/null +++ b/specification/vmware/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + package-version: 0.3.0 + azure-arm: true + package-name: "@azure/arm-vmware" + output-folder: "$(typescript-sdks-folder)/sdk/vmware/arm-vmware" + payload-flattening-threshold: 1 + generate-metadata: true +``` \ No newline at end of file diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/CheckQuotaAvailability.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/CheckQuotaAvailability.json new file mode 100644 index 000000000000..98a126c10073 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/CheckQuotaAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-08-09-preview", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "hostsRemaining": { + "gp": 0, + "he": 999 + }, + "quotaEnabled": "Enabled" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json index 14389afe3a36..3d7ca4fd555f 100644 --- a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json @@ -41,6 +41,14 @@ { "name": "Clusters", "description": "" + }, + { + "name": "Operations", + "description": "" + }, + { + "name": "Quotas", + "description": "" } ], "parameters": { @@ -120,6 +128,49 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.VMwareVirtustream/locations/{location}/checkQuotaAvailability": { + "post": { + "tags": [ + "Quotas" + ], + "description": "Return quota for subscription by region", + "operationId": "CheckQuotaAvailability", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Azure region" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/Quota" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "CheckQuotaAvailability": { + "$ref": "./examples/CheckQuotaAvailability.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds": { "get": { "operationId": "PrivateClouds_List", @@ -702,6 +753,32 @@ } }, "definitions": { + "Quota": { + "description": "Subscription quotas", + "properties": { + "hostsRemaining": { + "description": "Remaining hosts quota by sku type", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "integer", + "readOnly": true + } + }, + "quotaEnabled": { + "description": "Host quota is active for current subscription", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "QuotaEnabled", + "modelAsString": true + } + } + } + }, "Resource": { "description": "The core properties of ARM resources", "properties": { diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json index e8fd03f953e3..fe02ddd901a7 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json @@ -1921,6 +1921,10 @@ "description": "Version of Node.js.", "type": "string" }, + "powerShellVersion": { + "description": "Version of PowerShell.", + "type": "string" + }, "linuxFxVersion": { "description": "Linux App Framework and version", "type": "string" @@ -2486,6 +2490,25 @@ } } }, + "StringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Settings.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-client-flatten": true + } + } + }, "User": { "description": "User credentials used for publishing activity.", "type": "object", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json new file mode 100644 index 000000000000..a62ce9c0e366 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json @@ -0,0 +1,1916 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-01", + "title": "StaticSites API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Get all Static Sites for a subscription.", + "description": "Description for Get all Static Sites for a subscription.", + "operationId": "StaticSites_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all static sites in a subscription": { + "$ref": "./examples/GetAllStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static sites in the specified resource group.", + "description": "Description for Gets all static sites in the specified resource group.", + "operationId": "StaticSites_GetStaticSitesByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get static sites for a resource group": { + "$ref": "./examples/GetStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site.", + "description": "Description for Gets the details of a static site.", + "operationId": "StaticSites_GetStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details for a static site": { + "$ref": "./examples/GetStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a static site": { + "$ref": "./examples/CreateOrUpdateStaticSite.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site.", + "description": "Description for Deletes a static site.", + "operationId": "StaticSites_DeleteStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site": { + "$ref": "./examples/DeleteStaticSite.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_UpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch a static site": { + "$ref": "./examples/PatchStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/listUsers": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of users of a static site.", + "description": "Description for Gets the list of users of a static site.", + "operationId": "StaticSites_ListStaticSiteUsers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for the users.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List users for a static site": { + "$ref": "./examples/ListStaticSiteUsers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/users/{userid}": { + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes the user entry from the static site.", + "description": "Description for Deletes the user entry from the static site.", + "operationId": "StaticSites_DeleteStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the staticsite.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a user for a static site": { + "$ref": "./examples/DeleteStaticSiteUser.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Updates a user entry with the listed roles", + "description": "Description for Updates a user entry with the listed roles", + "operationId": "StaticSites_UpdateStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteUser properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a user for a static site": { + "$ref": "./examples/UpdateStaticSiteUser.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site builds for a particular static site.", + "description": "Description for Gets all static site builds for a particular static site.", + "operationId": "StaticSites_GetStaticSiteBuilds", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all builds for a static site": { + "$ref": "./examples/GetStaticSiteBuilds.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site build.", + "description": "Description for Gets the details of a static site build.", + "operationId": "StaticSites_GetStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a static site build": { + "$ref": "./examples/GetStaticSiteBuild.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site build.", + "description": "Description for Deletes a static site build.", + "operationId": "StaticSites_DeleteStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site build": { + "$ref": "./examples/DeleteStaticSiteBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site build.", + "description": "Description for Creates or updates the function app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a particular static site build.", + "description": "Description for Gets the functions of a particular static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a particular static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site.", + "description": "Description for Creates or updates the function app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/createUserInvitation": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Creates an invitation link for a user with the role", + "description": "Description for Creates an invitation link for a user with the role", + "operationId": "StaticSites_CreateUserRolesInvitationLink", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserRolesInvitationEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationResponseResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create an invitation link for a user for a static site": { + "$ref": "./examples/CreateUserRolesInvitationLink.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site custom domains for a particular static site.", + "description": "Description for Gets all static site custom domains for a particular static site.", + "operationId": "StaticSites_ListStaticSiteCustomDomains", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List custom domains for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site custom domain in an existing resource group and static site.", + "description": "Description for Creates a new static site custom domain in an existing resource group and static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to create.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a custom domain for a static site": { + "$ref": "./examples/CreateOrUpdateStaticSiteCustomDomain.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a custom domain.", + "description": "Description for Deletes a custom domain.", + "operationId": "StaticSites_DeleteStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a custom domain for a static site": { + "$ref": "./examples/DeleteStaticSiteCustomDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}/validate": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Validates a particular custom domain can be added to a static site.", + "description": "Description for Validates a particular custom domain can be added to a static site.", + "operationId": "StaticSites_ValidateCustomDomainCanBeAddedToStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to validate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a custom domain for a static site": { + "$ref": "./examples/ValidateStaticSiteCustomDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/detach": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Detaches a static site.", + "description": "Description for Detaches a static site.", + "operationId": "StaticSites_DetachStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to detach.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach a static site": { + "$ref": "./examples/DetachStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a static site.", + "description": "Description for Gets the functions of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a static site": { + "$ref": "./examples/ListStaticSiteFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site": { + "$ref": "./examples/ListStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listSecrets": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the secrets for an existing static site.", + "description": "Description for Lists the secrets for an existing static site.", + "operationId": "StaticSites_ListStaticSiteSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List secrets for a static site": { + "$ref": "./examples/ListStaticSiteSecrets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/resetapikey": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Resets the api key for an existing static site.", + "description": "Description for Resets the api key for an existing static site.", + "operationId": "StaticSites_ResetStaticSiteApiKey", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "resetPropertiesEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteResetPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Reset the api key for a static site": { + "$ref": "./examples/ResetStaticSiteApiKey.json" + } + } + } + } + }, + "definitions": { + "StaticSite": { + "description": "A static site.", + "type": "object", + "properties": { + "defaultHostname": { + "description": "The default autogenerated hostname for the static site.", + "type": "string", + "readOnly": true + }, + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "customDomains": { + "description": "The custom domains associated with this static site.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositoryToken": { + "description": "A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + } + } + }, + "StaticSiteARMResource": { + "description": "Static Site ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + } + } + }, + "StaticSiteBuildARMResource": { + "description": "Static Site Build ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteBuildARMResource resource specific properties", + "properties": { + "buildId": { + "description": "An identifier for the static site build.", + "type": "string", + "readOnly": true + }, + "sourceBranch": { + "description": "The source branch.", + "type": "string", + "readOnly": true + }, + "pullRequestTitle": { + "description": "The title of a pull request that a static site build is related to.", + "type": "string", + "readOnly": true + }, + "hostname": { + "description": "The hostname for a static site build.", + "type": "string", + "readOnly": true + }, + "createdTimeUtc": { + "format": "date-time", + "description": "When this build was created.", + "type": "string", + "readOnly": true + }, + "lastUpdatedOn": { + "format": "date-time", + "description": "When this build was updated.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the static site build.", + "enum": [ + "WaitingForDeployment", + "Uploading", + "Deploying", + "Ready", + "Failed", + "Deleting", + "Detached" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BuildStatus", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteBuildCollection": { + "description": "Collection of static site builds.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteBuildProperties": { + "description": "Build properties for the static site.", + "type": "object", + "properties": { + "appLocation": { + "description": "The path to the app code within the repository.", + "type": "string" + }, + "apiLocation": { + "description": "The path to the api code within the repository.", + "type": "string" + }, + "appArtifactLocation": { + "description": "The path of the app artifacts after building.", + "type": "string" + } + } + }, + "StaticSiteCollection": { + "description": "Collection of static sites.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainOverviewARMResource": { + "description": "Static Site Custom Domain Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainOverviewARMResource resource specific properties", + "properties": { + "domainName": { + "description": "The domain name for the static site custom domain.", + "type": "string", + "readOnly": true + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the custom domain was created for the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteCustomDomainOverviewCollection": { + "description": "Collection of static site custom domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteFunctionOverviewARMResource": { + "description": "Static Site Function Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteFunctionOverviewARMResource resource specific properties", + "properties": { + "functionName": { + "description": "The name for the function", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The trigger type of the function", + "enum": [ + "HttpTrigger", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerTypes", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewCollection": { + "description": "Collection of static site functions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteFunctionOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSitePatchResource": { + "description": "ARM resource for a static site when patching", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSiteResetPropertiesARMResource": { + "description": "Static Site Reset Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteResetPropertiesARMResource resource specific properties", + "properties": { + "repositoryToken": { + "description": "The token which proves admin privileges to the repository.", + "type": "string" + }, + "shouldUpdateRepository": { + "description": "Determines whether the repository should be updated with the new properties.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserARMResource": { + "description": "Static Site User ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserARMResource resource specific properties", + "properties": { + "provider": { + "description": "The identity provider for the static site user.", + "type": "string", + "readOnly": true + }, + "userId": { + "description": "The user id for the static site user.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name for the static site user.", + "type": "string", + "readOnly": true + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserCollection": { + "description": "Collection of static site custom users.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteUserInvitationRequestResource": { + "description": "Static sites user roles invitation resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationRequestResource resource specific properties", + "properties": { + "domain": { + "description": "The domain name for the static site custom domain.", + "type": "string" + }, + "provider": { + "description": "The identity provider for the static site user.", + "type": "string" + }, + "userDetails": { + "description": "The user id for the static site user.", + "type": "string" + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + }, + "numHoursToExpiration": { + "format": "int32", + "description": "The number of hours the sas token stays valid", + "type": "integer" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserInvitationResponseResource": { + "description": "Static sites user roles invitation link resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationResponseResource resource specific properties", + "properties": { + "expiresOn": { + "format": "date-time", + "description": "The expiration time of the invitation", + "type": "string", + "readOnly": true + }, + "invitationUrl": { + "description": "The url for the invitation link", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json index eab6a6c3d4b7..1efc1c1d5478 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json @@ -3497,7 +3497,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { "post": { "tags": [ "WebApps" @@ -3791,7 +3791,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { "get": { "tags": [ "WebApps" @@ -11464,7 +11464,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { "post": { "tags": [ "WebApps" @@ -11800,7 +11800,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { "get": { "tags": [ "WebApps" @@ -14882,6 +14882,236 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes": { "get": { "tags": [ @@ -19650,6 +19880,16 @@ } } }, + "ArmIdWrapper": { + "description": "A wrapper for an ARM resource id", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true + } + } + }, "AzureBlobStorageApplicationLogsConfig": { "description": "Application logs azure blob storage configuration.", "type": "object", @@ -21634,6 +21874,133 @@ } } }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RemotePrivateEndpointConnection", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionApprovalRequest": { + "description": "A request to approve or reject a private endpoint connection", + "type": "object", + "properties": { + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, + "PrivateLinkConnectionApprovalRequestResource": { + "description": "Private Endpoint Connection Approval ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequest", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionState": { + "description": "The state of a private link connection", + "type": "object", + "properties": { + "status": { + "description": "Status of a private link connection", + "type": "string" + }, + "description": { + "description": "Description of a private link connection", + "type": "string" + }, + "actionsRequired": { + "description": "ActionsRequired for a private link connection", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "required": [ + "id", + "name", + "type", + "properties" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Name of a private link resource", + "type": "string" + }, + "type": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource", + "type": "object", + "properties": { + "groupId": { + "description": "GroupId of a private link resource", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "RequiredMembers of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "RequiredZoneNames of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResourcesWrapper": { + "description": "Wrapper for a collection of private link resources", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, "ProcessInfo": { "description": "Process Information.", "type": "object", @@ -22122,6 +22489,23 @@ } } }, + "RemotePrivateEndpointConnection": { + "description": "A remote private endpoint connection", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, "RestoreRequest": { "description": "Description of a restore request.", "type": "object", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..2a0d7dd3d39e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json new file mode 100644 index 000000000000..a9765b36af4c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteEnvelope": { + "location": "West US 2", + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "repositoryToken": "repoToken123", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..59ed520f70fb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..54ece9a5cf33 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..f52b69afc5b6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json new file mode 100644 index 000000000000..237322330ba2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteUserRolesInvitationEnvelope": { + "properties": { + "domain": "happy-sea-15afae3e.azurestaticwebsites.net", + "provider": "aad", + "userDetails": "username", + "roles": "admin,contributor", + "numHoursToExpiration": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "invitationUrl": "https://happy-sea-15afae3e.azurestaticwebsites.net?invite=asdf", + "expiresOn": "2020-02-28T16:53:56.211Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..af4e2f2afe25 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json new file mode 100644 index 000000000000..27aeb5c0f697 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json new file mode 100644 index 000000000000..cf2f37a02e38 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json new file mode 100644 index 000000000000..80862bc44bdc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json new file mode 100644 index 000000000000..f9b0df3f65fa --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2019-08-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json new file mode 100644 index 000000000000..27aeb5c0f697 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json new file mode 100644 index 000000000000..ad7ba643deb0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..db93d5c42946 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json new file mode 100644 index 000000000000..f7db82edc624 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json new file mode 100644 index 000000000000..142298468ff7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json new file mode 100644 index 000000000000..ab0222154483 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "buildId": "12", + "sourceBranch": "pr-branch", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Uploading" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json new file mode 100644 index 000000000000..22559fb9299c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "buildId": "default", + "sourceBranch": "demo", + "pullRequestTitle": null, + "hostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready" + } + }, + { + "properties": { + "buildId": "12", + "sourceBranch": "demo-patch2", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json new file mode 100644 index 000000000000..aa3f13bf1b11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json new file mode 100644 index 000000000000..4147ffed352f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..3de510293138 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json new file mode 100644 index 000000000000..6d9ebe6eb740 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "default", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..e407c4b5e705 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json new file mode 100644 index 000000000000..5f393824995e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json new file mode 100644 index 000000000000..e657792abbb9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "dnsOwnershipKey": "ownershipKey123123" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json new file mode 100644 index 000000000000..6e799b8caec0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "all", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "admin,anonymous,authenticated" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json new file mode 100644 index 000000000000..5c1c9689064e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json new file mode 100644 index 000000000000..7c039b3d873b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "resetPropertiesEnvelope": { + "properties": { + "shouldUpdateRepository": true, + "repositoryToken": "repoToken123" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json new file mode 100644 index 000000000000..1b0ec5a562bf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2019-08-01", + "staticSiteUserEnvelope": { + "properties": { + "roles": "contributor" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "contributor,anonymous,authenticated" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..80862bc44bdc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/readme.cli.md b/specification/web/resource-manager/readme.cli.md index 607c014ddf18..9415e5a28bbe 100644 --- a/specification/web/resource-manager/readme.cli.md +++ b/specification/web/resource-manager/readme.cli.md @@ -7,7 +7,248 @@ cli: cli-name: appservice package-name: azure-mgmt-web namespace: azure.mgmt.web - test-setup: - - name: "Create Or Update App Service plan" - - name: "List operations" + test-scenario: + - name: /StaticSites/put/Create or update a static site + disabled: true + - name: /AppServicePlans/put/Create Or Update App Service plan + disabled: true + - name: /Certificates/put/Create Or Update Certificate + disabled: true + - name: /StaticSites/put/Creates or updates the function app settings of a static site. + disabled: true + - name: /StaticSites/put/Create or update a custom domain for a static site + disabled: true + - name: /StaticSites/put/Creates or updates the function app settings of a static site build. + disabled: true + - name: /WebApps/put/Approves or rejects a private endpoint connection for a site. + disabled: true + - name: /Diagnostics/get/Get App Detector + disabled: true + - name: /Diagnostics/get/Get App Slot Detector + disabled: true + - name: /Diagnostics/get/Get App Analysis + disabled: true + - name: /Diagnostics/get/Get App Slot Analysis + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /Diagnostics/get/Get App Slot Detector + disabled: true + - name: /Diagnostics/get/Get App Detector + disabled: true + - name: /Diagnostics/get/Get App Analysis + disabled: true + - name: /Diagnostics/get/Get App Slot Analysis + disabled: true + - name: /Diagnostics/get/List App Slot Detectors + disabled: true + - name: /Diagnostics/get/List App Detectors + disabled: true + - name: /Diagnostics/get/List App Slot Analyses + disabled: true + - name: /Diagnostics/get/List App Analyses + disabled: true + - name: /WebApps/get/Get a private endpoint connection for a site. + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /Diagnostics/get/Get App Slot Diagnostic Category + disabled: true + - name: /Diagnostics/get/Get App Diagnostic Category + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /WebApps/get/Get Azure Key Vault app setting reference + disabled: true + - name: /Diagnostics/get/List App Slot Detectors + disabled: true + - name: /Diagnostics/get/List App Detectors + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Response + disabled: true + - name: /Diagnostics/get/List App Slot Analyses + disabled: true + - name: /Diagnostics/get/Get App Detector Response + disabled: true + - name: /Diagnostics/get/List App Analyses + disabled: true + - name: /AppServiceEnvironments/get/Get Outbound Network Dependencies Endpoints + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /AppServiceEnvironments/get/Get Inbound Network Dependencies Endpoints + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /ResourceHealthMetadata/get/Get ResourceHealthMetadata + disabled: true + - name: /WebApps/get/Get site instance info + disabled: true + - name: /Diagnostics/get/Get App Service Environment Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Slot Diagnostic Category + disabled: true + - name: /Diagnostics/get/Get App Diagnostic Category + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a site + disabled: true + - name: /StaticSites/get/Gets the functions of a particular static site build + disabled: true + - name: /WebApps/get/Get Azure Key Vault references for app settings + disabled: true + - name: /Diagnostics/get/Get App Detector Response + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Response + disabled: true + - name: /Diagnostics/get/List App Slot Diagnostic Categories + disabled: true + - name: /Diagnostics/get/List App Diagnostic Categories + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /Diagnostics/get/Get App Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Responses + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /ResourceHealthMetadata/get/Get ResourceHealthMetadata + disabled: true + - name: /WebApps/get/Get site instance info + disabled: true + - name: /StaticSites/get/Get a static site build + disabled: true + - name: /Diagnostics/get/Get App Service Environment Detector Responses + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a site + disabled: true + - name: /WebApps/get/Get private link resources of a site + disabled: true + - name: /StaticSites/get/List custom domains for a static site + disabled: true + - name: /Diagnostics/get/List App Slot Diagnostic Categories + disabled: true + - name: /Diagnostics/get/List App Diagnostic Categories + disabled: true + - name: /StaticSites/get/Gets the functions of a static site + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Detector Responses + disabled: true + - name: /StaticSites/get/Get all builds for a static site + disabled: true + - name: /DeletedWebApps/get/Get Deleted Web App by Location + disabled: true + - name: /Certificates/get/Get Certificate + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a resource group + disabled: true + - name: /StaticSites/get/Get details for a static site + disabled: true + - name: /AppServicePlans/get/Get App Service plan + - name: /Certificates/get/List Certificates by resource group + disabled: true + - name: /StaticSites/get/Get static sites for a resource group + disabled: true + - name: /AppServicePlans/get/List App Service plans by resource group + - name: /TopLevelDomains/get/Get Top Level Domain + disabled: true + - name: /DeletedWebApps/get/List Deleted Web App by Location + disabled: true + - name: /TopLevelDomains/get/List Top Level Domains + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a subscription + disabled: true + - name: /Certificates/get/List Certificates for subscription + disabled: true + - name: /StaticSites/get/Get all static sites in a subscription + disabled: true + - name: /AppServicePlans/get/List App Service plans + - name: /CertificateRegistrationProvider/get/List operations + - name: /DomainRegistrationProvider/get/List operations + - name: /Provider/get/List operations + - name: /Diagnostics/post/Execute site detector + disabled: true + - name: /Diagnostics/post/Execute site slot detector + disabled: true + - name: /Diagnostics/post/Execute site slot analysis + disabled: true + - name: /Diagnostics/post/Execute site analysis + disabled: true + - name: /Diagnostics/post/Execute site detector + disabled: true + - name: /Diagnostics/post/Execute site slot detector + disabled: true + - name: /Diagnostics/post/Execute site slot analysis + disabled: true + - name: /Diagnostics/post/Execute site analysis + disabled: true + - name: /StaticSites/patch/Create or update a user for a static site + disabled: true + - name: /StaticSites/post/Get function app settings of a static site build + disabled: true + - name: /StaticSites/post/List users for a static site + disabled: true + - name: /StaticSites/post/Validate a custom domain for a static site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /StaticSites/post/Get function app settings of a static site + disabled: true + - name: /Domains/post/Renew an existing domain + disabled: true + - name: /WebApps/post/List backups + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /StaticSites/post/Create an invitation link for a user for a static site + disabled: true + - name: /WebApps/post/Copy slot + disabled: true + - name: /StaticSites/post/List secrets for a static site + disabled: true + - name: /StaticSites/post/Reset the api key for a static site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /StaticSites/post/Detach a static site + disabled: true + - name: /WebApps/post/List backups + disabled: true + - name: /WebApps/post/Copy slot + disabled: true + - name: /AppServicePlans/patch/Patch Service plan + disabled: true + - name: /StaticSites/patch/Patch a static site + disabled: true + - name: /TopLevelDomains/post/List Top Level Domain Agreements + disabled: true + - name: //post/VerifyHostingEnvironmentVnet + disabled: true + - name: /WebApps/delete/Delete a private endpoint connection for a site. + disabled: true + - name: /StaticSites/delete/Delete a user for a static site + disabled: true + - name: /StaticSites/delete/Delete a custom domain for a static site + disabled: true + - name: /StaticSites/delete/Delete a static site build + disabled: true + - name: /Certificates/delete/Delete Certificate + disabled: true + - name: /AppServicePlans/delete/Delete App Service plan + - name: /StaticSites/delete/Delete a static site + disabled: true ``` diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index cc8be980286c..5a30993171af 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -76,6 +76,7 @@ input-file: - Microsoft.Web/stable/2019-08-01/Recommendations.json - Microsoft.Web/stable/2019-08-01/ResourceProvider.json - Microsoft.Web/stable/2019-08-01/WebApps.json +- Microsoft.Web/stable/2019-08-01/StaticSites.json - Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json - Microsoft.Web/stable/2019-08-01/AppServicePlans.json - Microsoft.Web/stable/2019-08-01/ResourceHealthMetadata.json @@ -1211,6 +1212,7 @@ input-file: - $(this-folder)/Microsoft.Web/stable/2019-08-01/Recommendations.json - $(this-folder)/Microsoft.Web/stable/2019-08-01/ResourceProvider.json - $(this-folder)/Microsoft.Web/stable/2019-08-01/WebApps.json + - $(this-folder)/Microsoft.Web/stable/2019-08-01/StaticSites.json - $(this-folder)/Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json - $(this-folder)/Microsoft.Web/stable/2019-08-01/AppServicePlans.json - $(this-folder)/Microsoft.Web/stable/2019-08-01/ResourceHealthMetadata.json diff --git a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json index 96573b91936a..d82e08d9ddab 100644 --- a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json +++ b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json @@ -19,7 +19,7 @@ "type": "Microsoft.WindowsESU/multipleActivationKeys", "tags": { "tag1": "value1", - "tag2": "value2" + "tag2": "value2" }, "location": "East US", "properties": { diff --git a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json index 9f9718c27eb2..81fa00bc5afb 100644 --- a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json +++ b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json @@ -9,12 +9,20 @@ } }, "host": "management.azure.com", - "schemes": ["https"], - "consumes": ["application/json"], - "produces": ["application/json"], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "security": [ { - "azure_auth": ["user_impersonation"] + "azure_auth": [ + "user_impersonation" + ] } ], "securityDefinitions": { @@ -31,10 +39,14 @@ "paths": { "/providers/Microsoft.WindowsESU/operations": { "get": { - "tags": ["Operations"], + "tags": [ + "Operations" + ], "operationId": "Operations_List", "x-ms-examples": { - "ListOperations": { "$ref": "./examples/ListOperations.json" } + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } }, "description": "List all available Windows.ESU provider operations.", "parameters": [ @@ -63,10 +75,14 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.WindowsESU/multipleActivationKeys": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_List", "x-ms-examples": { - "ListMultipleActivationKeys": { "$ref": "./examples/ListMultipleActivationKeys.json" } + "ListMultipleActivationKeys": { + "$ref": "./examples/ListMultipleActivationKeys.json" + } }, "description": "List all Multiple Activation Keys (MAK) created for a subscription.", "parameters": [ @@ -98,10 +114,14 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.WindowsESU/multipleActivationKeys": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_ListByResourceGroup", "x-ms-examples": { - "ListMultipleActivationKeys": { "$ref": "./examples/ListMultipleActivationKeysByResourceGroup.json" } + "ListMultipleActivationKeys": { + "$ref": "./examples/ListMultipleActivationKeysByResourceGroup.json" + } }, "description": "List all Multiple Activation Keys (MAK) in a resource group.", "parameters": [ @@ -136,10 +156,14 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.WindowsESU/multipleActivationKeys/{multipleActivationKeyName}": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Get", "x-ms-examples": { - "GetMultipleActivationKey": { "$ref": "./examples/GetMultipleActivationKey.json" } + "GetMultipleActivationKey": { + "$ref": "./examples/GetMultipleActivationKey.json" + } }, "description": "Get a MAK key.", "parameters": [ @@ -172,10 +196,14 @@ } }, "put": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Create", "x-ms-examples": { - "CreateMultipleActivationKey": { "$ref": "./examples/CreateMultipleActivationKey.json" } + "CreateMultipleActivationKey": { + "$ref": "./examples/CreateMultipleActivationKey.json" + } }, "description": "Create a MAK key.", "parameters": [ @@ -224,10 +252,14 @@ "x-ms-long-running-operation": true }, "patch": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Update", "x-ms-examples": { - "UpdateMultipleActivationKey": { "$ref": "./examples/UpdateMultipleActivationKey.json" } + "UpdateMultipleActivationKey": { + "$ref": "./examples/UpdateMultipleActivationKey.json" + } }, "description": "Update a MAK key.", "parameters": [ @@ -269,10 +301,14 @@ } }, "delete": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Delete", "x-ms-examples": { - "DeleteMultipleActivationKey": { "$ref": "./examples/DeleteMultipleActivationKey.json" } + "DeleteMultipleActivationKey": { + "$ref": "./examples/DeleteMultipleActivationKey.json" + } }, "description": "Delete a MAK key.", "parameters": [ @@ -344,7 +380,10 @@ "name": "OsType", "modelAsString": true }, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "supportType": { "description": "Type of support", @@ -358,24 +397,36 @@ "name": "SupportType", "modelAsString": true }, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "installedServerNumber": { "description": "Number of activations/servers using the MAK key.", "type": "integer", "minimum": 1, "maximum": 5000, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "agreementNumber": { "description": "Agreement number under which the key is requested.", "type": "string", - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "isEligible": { "description": " true if user has eligible on-premises Windows physical or virtual machines, and that the requested key will only be used in their organization; false otherwise.", "type": "boolean", - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "provisioningState": { "type": "string", diff --git a/specification/windowsesu/resource-manager/readme.python.md b/specification/windowsesu/resource-manager/readme.python.md index 6f42325163a8..36e2e4b88b50 100644 --- a/specification/windowsesu/resource-manager/readme.python.md +++ b/specification/windowsesu/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.WindowsESU - package-name: windowsesu + namespace: azure.mgmt.windowsesu + package-name: azure-mgmt-windowsesu package-version: 2019-09-16-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/windowsesu + output-folder: $(python-sdks-folder)/windowsesu/azure-mgmt-windowsesu/azure/mgmt/windowsesu ``` diff --git a/specification/windowsiot/resource-manager/readme.az.md b/specification/windowsiot/resource-manager/readme.az.md new file mode 100644 index 000000000000..59e35976c253 --- /dev/null +++ b/specification/windowsiot/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: windowsiotservices + namespace: azure.mgmt.windowsiot + package-name: azure-mgmt-windowsiot +az-output-folder: $(azure-cli-extension-folder)/src/windowsiot +python-sdk-output-folder: "$(az-output-folder)/azext_windowsiotservices/vendored_sdks/windowsiot" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/windowsiot/resource-manager/readme.cli.md b/specification/windowsiot/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/windowsiot/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/windowsiot/resource-manager/readme.md b/specification/windowsiot/resource-manager/readme.md index c2d94f9818f4..ce4b3c452b4f 100644 --- a/specification/windowsiot/resource-manager/readme.md +++ b/specification/windowsiot/resource-manager/readme.md @@ -65,6 +65,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_windowsiot'] + - repo: azure-cli-extensions ``` ## C# @@ -129,3 +130,17 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli-name: windowsiot + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: windowsiot + package-name: windowsiot + clear_output_folder: false +``` diff --git a/specification/windowsiot/resource-manager/readme.python.md b/specification/windowsiot/resource-manager/readme.python.md index 3f3407198310..534f3b35f6c0 100644 --- a/specification/windowsiot/resource-manager/readme.python.md +++ b/specification/windowsiot/resource-manager/readme.python.md @@ -12,6 +12,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.windowsiot package-name: azure-mgmt-windowsiot + package-version: 0.1.0 clear-output-folder: true ``` diff --git a/specificationRepositoryConfiguration.json b/specificationRepositoryConfiguration.json index 83ad1c7b0c81..7bcfe9c0e212 100644 --- a/specificationRepositoryConfiguration.json +++ b/specificationRepositoryConfiguration.json @@ -23,10 +23,20 @@ "integrationRepository": "AzureSDKAutomation/azure-sdk-for-python", "mainRepository": "Azure/azure-sdk-for-python" }, + "azure-cli-extensions": { + "integrationRepository": "AzureSDKAutomation/azure-cli-extensions", + "mainRepository": "Azure/azure-cli-extensions" + }, "azure-sdk-for-ruby": { "mainBranch": "latest", "integrationRepository": "AzureSDKAutomation/azure-sdk-for-ruby", "mainRepository": "Azure/azure-sdk-for-ruby" + }, + "azure-sdk-for-trenton": { + "integrationRepository": "Azure/azure-sdk-for-trenton", + "mainRepository": "Azure/azure-sdk-for-trenton", + "secondaryRepository": "Azure/azure-sdk-for-trenton", + "secondaryBranch": "secondary" } } }